Validación de plantillas con cfn-lint
CloudFormation Linter (cfn-lint) compara las plantillas JSON y YAML con los esquemas de proveedores de recursos de CloudFormation y reglas adicionales. Puede encontrar propiedades de recursos no válidas, valores no admitidos y problemas comunes antes de enviar una plantilla a CloudFormation.
El código de origen, las notas de la versión, la configuración y la lista completa de reglas están disponibles en el repositorio cfn-lint en GitHub
Temas
Instalar cfn-lint
Instale cfn-lint desde el Índice de paquetes de Python (PyPI):
python3 -m pip install cfn-lint
En macOS, puede instalarlo con Homebrew:
brew install cfn-lint
Para ver las versiones de Python compatibles y otros métodos de instalación, consulte las instrucciones de instalación
Ejecuta cfn-lint
Pase una o más rutas de plantilla al comando:
cfn-lint template.yaml cfn-lint template-one.yaml template-two.json
Para revisar plantillas en más de una Región de AWS, utilice la opción --regions:
cfn-lint --regions us-east-1 us-west-2 -- template.yaml
El comando devuelve un código de salida distinto de cero cuando encuentra problemas. Puede usar este comportamiento para detener una compilación automática cuando una plantilla no supere las comprobaciones seleccionadas.
Configuración de comprobaciones
Utilice un archivo .cfnlintrc, .cfnlintrc.yaml o .cfnlintrc.yml para conservar la configuración del proyecto con sus plantillas. Puede usar este archivo para seleccionar plantillas, incluir o ignorar las comprobaciones, elegir Regiones de AWS y configurar el comportamiento de las reglas. Para ver todos los ajustes, consulte el archivo de configuración
Agregue cfn-lint a su flujo de trabajo.
Puede ejecutar cfn-lint desde editores compatibles, automáticamente antes de una confirmación de Git o como parte de una compilación automática. El servidor de lenguaje de CloudFormation también usa cfn-lint para mostrar los problemas mientras usted escribe. Para obtener información sobre la configuración del servidor de lenguaje, consulte Servidor de lenguaje de CloudFormation.
Para ver los complementos del editor, las acciones de GitHub, la configuración previa a la confirmación, las reglas personalizadas y más ejemplos, consulte la documentación del proyecto cfn-lint