kubernetes/kops · error
error deleting IAM role policy %q %q: %v
Error message
error deleting IAM role policy %q %q: %v
What it means
Fires when iam.DeleteRolePolicy fails to remove a named inline policy from the role during cluster resource teardown — the deletion API call returned an error (permissions, throttling, or unexpected state).
Source
Thrown at pkg/resources/aws/aws.go:1953
klog.V(2).Infof("Got NoSuchEntity describing IAM RolePolicy %q; will treat as already-deleted", roleName)
return nil
}
return fmt.Errorf("error listing IAM role policies for %q: %v", roleName, err)
}
attachedPolicies = append(attachedPolicies, page.AttachedPolicies...)
}
}
// Delete inline policies
for _, policyName := range policyNames {
klog.V(2).Infof("Deleting IAM role policy %q %q", roleName, policyName)
request := &iam.DeleteRolePolicyInput{
RoleName: aws.String(r.Name),
PolicyName: aws.String(policyName),
}
_, err := c.IAM().DeleteRolePolicy(ctx, request)
if err != nil {
return fmt.Errorf("error deleting IAM role policy %q %q: %v", roleName, policyName, err)
}
}
// Detach Managed Policies
for _, policy := range attachedPolicies {
klog.V(2).Infof("Detaching IAM role policy %q %v", roleName, policy)
request := &iam.DetachRolePolicyInput{
RoleName: aws.String(r.Name),
PolicyArn: policy.PolicyArn,
}
_, err := c.IAM().DetachRolePolicy(ctx, request)
if err != nil {
return fmt.Errorf("error detaching IAM role policy %q %q: %v", roleName, *policy.PolicyArn, err)
}
}
// Delete Role
{View on GitHub (pinned to 4c8573c808)
Solutions
- Check iam:DeleteRolePolicy permission on the role
- Retry; transient throttling or eventual consistency can cause failures
- If NoSuchEntity, re-run kops delete to let discovery treat it as already deleted
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at pkg/resources/aws/aws.go:1953 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/9282fd8a4c21e882.
Report an issue: GitHub.