Regla de CodeBuild
Al crear una condición, puede agregar la regla de CodeBuild. En esta sección, se proporciona una referencia para los parámetros de reglas. Para obtener más información acerca de las reglas y condiciones, consulte Funcionamiento de las condiciones de las etapas.
Puede usar la regla de CodeBuild para crear una condición para que la ejecución del proyecto de compilación sea correcta si cumple los criterios de la regla, por ejemplo, que la ejecución de la compilación sea correcta para una condición beforeEntry.
nota
Para las condiciones beforeEntry que se configuran con el resultado Skip, solo están disponibles las reglas LambdaInvoke y VariableCheck.
Temas
Permisos para las políticas de roles de servicio
Para conceder permisos a esta regla, agregue lo siguiente a la declaración de la política de rol de servicio de CodePipeline. Reduzca los permisos al nivel de recurso.
{ "Effect": "Allow", "Action": [ "codebuild:BatchGetBuilds", "codebuild:StartBuild" ], "Resource": "resource_ARN" },
Tipo de regla
-
Categoría:
Rule -
Propietario: :
AWS -
Proveedor:
CodeBuild -
Versión:
1
Parámetros de configuración
- ProjectName
-
Obligatorio: sí
ProjectNamees el nombre del proyecto de compilación de CodeBuild. - PrimarySource
-
Obligatorio: condicional
El valor del parámetro
PrimarySourcedebe ser el nombre de uno de los artefactos de entrada de la acción. CodeBuild busca el archivo buildspec y ejecuta los comandos buildspec en el directorio que contiene la versión descomprimida de este artefacto.Este parámetro es necesario si se especifican varios artefactos de entrada para una acción de CodeBuild. Cuando solo hay un artefacto de origen para la acción, el artefacto
PrimarySourcese establece como valor predeterminado de dicho artefacto. - BatchEnabled
-
Obligatorio: no
El valor booleano del parámetro
BatchEnabledpermite que la acción ejecute varias compilaciones en la misma ejecución de compilación.Cuando esta opción está habilitada, la opción
CombineArtifactsestá disponible.Para ver ejemplos de canalizaciones con compilaciones por lotes habilitadas, consulte Integración de CodePipeline con CodeBuild y compilaciones por lotes.
- CombineArtifacts
-
Obligatorio: no
El valor booleano del parámetro
CombineArtifactscombina todos los artefactos de compilación de una compilación por lotes en un único archivo de artefactos para la acción de compilación.Para utilizar esta opción, el parámetro
BatchEnableddebe estar activado. - EnvironmentVariables
-
Obligatorio: no
El valor de este parámetro se utiliza para establecer variables de entorno para la acción de CodeBuild de la canalización. El valor del parámetro
EnvironmentVariablestoma la forma de una matriz JSON de objetos de variables de entorno. Consulte el parámetro de ejemplo en Declaración de acción (ejemplo de CodeBuild).Cada objeto tiene tres partes, todas las cuales son cadenas:
-
name: el nombre o la clave de la variable de entorno. -
value: el valor de la variable de entorno. Al utilizar el tipoPARAMETER_STOREoSECRETS_MANAGER, este valor debe ser el nombre de un parámetro que ya haya almacenado en el almacén de parámetros de AWS Systems Manager o un secreto en el que ya haya almacenado en AWS Secrets Manager, respectivamente.nota
Se desaconseja usar variables de entorno para almacenar valores confidenciales, especialmente las credenciales de AWS. Cuando utiliza la consola de CodeBuild o la CLI de AWS, las variables de entorno se muestran en texto sin formato. Para valores confidenciales, se recomienda utilizar el tipo
SECRETS_MANAGERen su lugar. -
type: (opcional) el tipo de la variable de entorno. Los valores válidos sonPARAMETER_STORE,SECRETS_MANAGERoPLAINTEXT. Si no se especifica, toma el valor predeterminadoPLAINTEXT.
nota
Cuando introduzca los valores
name,value, ytypede configuración de las variables de entorno, especialmente si la variable de entorno contiene sintaxis de variable de salida de CodePipeline, no supere el límite de 1000 caracteres del campo de valor de la configuración. Cuando se supera este límite, se devuelve un error de validación.Para obtener más información, consulte EnvironmentVariable en la AWS CodeBuildAPI Reference. Para ver un ejemplo de acción de CodeBuild con una variable de entorno que se resuelva en el nombre de la ramificación de GitHub, consulte Ejemplo: usar una variable BranchName con variables de entorno de CodeBuild.
-
Ejemplo de configuraciones de regla
Véase también
Los recursos relacionados siguientes pueden serle de ayuda cuando trabaje con esta regla.
-
Para obtener más información sobre las reglas y condiciones, consulte Condition, RuleTypeId y RuleExecution en la Guía de la API de CodePipeline.