Recibo este error cuando ejecuto create-stack para una plantilla de formación en la nube que contiene políticas de IAM.
aws cloudformation create-stack --stack-name iam-stack --template-body file://./iam.yml --capabilities CAPABILITY_IAM --profile dev
Ocurrió un error (InsufficientCapabilitiesException) al llamar a la operación CreateStack: Requiere capacidades: [CAPABILITY_NAMED_IAM]
Cambiar --capabilities
a CAPABILITY_NAMED_IAM
Si tiene recursos de IAM con nombres personalizados, debe especificar CAPABILITY_NAMED_IAM. Si no especifica este parámetro, esta acción devuelve un error de capacidades insuficientes.
https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html
Según los documentos de AWS, si especifica un nombre de rol en la formación de la nube, debe especificar el valor CAPABILITY_NAMED_IAM para reconocer las capacidades de su plantilla Enlace
Entonces tu comando debería ser
aws cloudformation create-stack --stack-name iam-stack --template-body file://./iam.yml --capabilities CAPABILITY_NAMED_IAM --profile dev
Si utiliza AWS CodePipeline para implementar un EC2 mediante una pila de CloudFormation, existe una opción denominada "Capacidades" desde la que puede seleccionar CAPABILITY_NAMED_IAM.