kubernetes/kops · error
error listing IAM role policies for %q: %v
Error message
error listing IAM role policies for %q: %v
What it means
Fires when iam.ListRolePolicies pagination fails for an IAM role during deletion. NoSuchEntity is treated as already-deleted and returns nil; any other error (permissions, throttling) aborts with this message.
Source
Thrown at pkg/resources/aws/aws.go:1919
var policyNames []string
c := cloud.(awsup.AWSCloud)
roleName := r.Name
// List Inline policies
{
request := &iam.ListRolePoliciesInput{
RoleName: aws.String(roleName),
}
paginator := iam.NewListRolePoliciesPaginator(c.IAM(), request)
for paginator.HasMorePages() {
page, err := paginator.NextPage(ctx)
if err != nil {
if awsup.IsIAMNoSuchEntityException(err) {
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)
}
policyNames = append(policyNames, page.PolicyNames...)
}
}
// List Attached Policies
{
request := &iam.ListAttachedRolePoliciesInput{
RoleName: aws.String(roleName),
}
paginator := iam.NewListAttachedRolePoliciesPaginator(c.IAM(), request)
for paginator.HasMorePages() {
page, err := paginator.NextPage(ctx)
if err != nil {
if awsup.IsIAMNoSuchEntityException(err) {
klog.V(2).Infof("Got NoSuchEntity describing IAM RolePolicy %q; will treat as already-deleted", roleName)
return nil
}View on GitHub (pinned to 4c8573c808)
Solutions
- Check IAM permissions (iam:ListRolePolicies) for the credentials in use
- Retry after throttling (inspect wrapped error for Throttling/SlowDown)
- If the role was concurrently deleted, re-run discovery so it is treated as deleted
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at pkg/resources/aws/aws.go:1919 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/b312ddd20b76700e.
Report an issue: GitHub.