Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Administración AWS CodeBuild compila con Step Functions
Puede integrar Step Functions con AWS CodeBuild para iniciar, detener y gestionar compilaciones. En esta página se enumeran las funciones compatibles CodeBuild APIs que puede utilizar con Step Functions.
Para obtener información sobre la integración con AWS servicios en Step Functions, consulte Integración de los servicios de yPasar parámetros a un servicio API en Step Functions.
Con la integración de Step Functions con AWS CodeBuild puede usar Step Functions para activar, detener y administrar compilaciones, y para compartir informes de compilación. Con Step Functions puede diseñar y ejecutar canalizaciones de integración continua para validar los cambios de software para las aplicaciones.
Características clave de la CodeBuild integración optimizada
-
Se admite el patrón de integración Ejecutar un trabajo (.sync).
-
Después de llamar
StopBuild
oStopBuildBatch
, la compilación o el lote de compilación no se pueden eliminar inmediatamente hasta que se complete algún trabajo interno CodeBuild para finalizar el estado de la compilación o las compilaciones.Si se intenta usar
BatchDeleteBuilds
oDeleteBuildBatch
durante este período, no se podrá eliminar la compilación o el lote de compilación.Las integraciones de servicios optimizados para
BatchDeleteBuilds
yDeleteBuildBatch
incluyen un reintento interno para simplificar el caso de uso de eliminar justo después de detener.
No todos APIs admiten todos los patrones de integración, como se muestra en la siguiente tabla.
API | Respuesta de la solicitud | Ejecutar un trabajo (.sync) |
---|---|---|
StartBuild | Soportado | Soportado |
StopBuild | Soportado | No compatible |
BatchDeleteBuilds | Compatible | No compatible |
BatchGetReports | Compatible | No compatible |
StartBuildBatch | Soportado | Soportado |
StopBuildBatch | Soportado | No compatible |
RetryBuildBatch | Soportado | Soportado |
DeleteBuildBatch | Soportado | No compatible |
Parámetros en Step Functions se expresan en PascalCase
Incluso si el servicio nativo API está encamelCase, por ejemplo, la API acciónstartSyncExecution
, se especifican parámetros en PascalCase, como:StateMachineArn
.
Soportado CodeBuild APIs
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
-
-
Parámetros admitidos:
nota
Puede usar el operador de descenso recursivo de JSONPath
(..
) para BatchDeleteBuilds
. Con la matriz devuelta, puede transformar el Arn
campo StartBuild
en un Ids
parámetro plural, como se muestra en el siguiente ejemplo.
"BatchDeleteBuilds": {
"Type": "Task",
"Resource": "arn:aws:states:::codebuild:batchDeleteBuilds",
"Parameters": {
"Ids.$": "$.Build..
Arn"
},
"Next": "MyNextState"
},
IAMpolíticas de llamadas AWS CodeBuild
En las siguientes plantillas de ejemplo se muestra cómo AWS Step Functions genera IAM políticas en función de los recursos de la definición de su máquina de estados. Para obtener más información, consulte Cómo Step Functions genera IAM políticas para servicios integrados y Descubra los patrones de integración de servicios en Step Functions.
Recursos:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"sns:Publish"
],
"Resource": [
"arn:aws:sns:sa-east-1:123456789012:StepFunctionsSample-CodeBuildExecution1111-2222-3333-wJalrXUtnFEMI-SNSTopic-bPxRfiCYEXAMPLEKEY"
],
"Effect": "Allow"
},
{
"Action": [
"codebuild:StartBuild",
"codebuild:StopBuild",
"codebuild:BatchGetBuilds",
"codebuild:BatchGetReports"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:sa-east-1:123456789012:rule/StepFunctionsGetEventForCodeBuildStartBuildRule"
],
"Effect": "Allow"
}
]
}
StartBuild
Recursos estáticos
Recursos dinámicos
StopBuild
Recursos estáticos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Recursos dinámicos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchDeleteBuilds
Recursos estáticos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Recursos dinámicos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchGetReports
Recursos estáticos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:report-group/[[reportName]]
"
]
}
]
}
Recursos dinámicos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:report-group/*"
]
}
]
}
StartBuildBatch
Recursos estáticos
Recursos dinámicos
StopBuildBatch
Recursos estáticos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Recursos dinámicos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}
RetryBuildBatch
Recursos estáticos
Recursos dinámicos
DeleteBuildBatch
Recursos estáticos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Recursos dinámicos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}