Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Manage (Gestione) AWS CodeBuild costruisce con Step Functions
Puoi integrare Step Functions con AWS CodeBuild per avviare, interrompere e gestire le build. Questa pagina elenca i supporti CodeBuild APIs che è possibile utilizzare con Step Functions.
Per saperne di più sull'integrazione con AWS servizi in Step Functions, vedere Integrazione dei servizi e. Passaggio di parametri a un servizio API in Step Functions
Con l'integrazione di Step Functions con AWS CodeBuild puoi usare Step Functions per attivare, interrompere e gestire le build e condividere report sulle build. Utilizzando Step Functions, è possibile progettare ed eseguire pipeline di integrazione continua per la convalida delle modifiche software per le applicazioni.
Caratteristiche principali dell'integrazione ottimizzata CodeBuild
-
Il modello di Esegui un processo (.sync) integrazione è supportato.
-
Dopo aver chiamato
StopBuild
orStopBuildBatch
, il batch di build o build non è immediatamente eliminabile finché non viene completato un lavoro interno CodeBuild per finalizzare lo stato della build o delle build.Se si tenta di utilizzare
BatchDeleteBuilds
oDeleteBuildBatch
durante questo periodo, è possibile che la build o il batch di compilazione non vengano eliminati.Le integrazioni di servizio ottimizzate per
BatchDeleteBuilds
eDeleteBuildBatch
includono un nuovo tentativo interno per semplificare il caso d'uso dell'eliminazione immediatamente dopo l'interruzione.
Non tutti APIs supportano tutti i modelli di integrazione, come illustrato nella tabella seguente.
API | Richiesta e risposta | Esegui un processo (.sync) |
---|---|---|
StartBuild | Supportato | Supportato |
StopBuild | Supportato | Non supportato |
BatchDeleteBuilds | Supportata | Non supportato |
BatchGetReports | Supportata | Non supportato |
StartBuildBatch | Supportato | Supportato |
StopBuildBatch | Supportato | Non supportato |
RetryBuildBatch | Supportato | Supportato |
DeleteBuildBatch | Supportato | Non supportato |
Parametri in Step Functions sono espressi in PascalCase
Anche se il servizio nativo API è attivocamelCase, ad esempio l'APIazionestartSyncExecution
, si specificano i parametri in PascalCase, ad esempio:StateMachineArn
.
Supportato CodeBuild APIs
-
-
Parametri supportati:
-
-
Parametri supportati:
-
-
Parametri supportati:
-
-
Parametri supportati:
-
-
Parametri supportati:
-
-
Parametri supportati:
-
-
Parametri supportati:
-
-
Parametri supportati:
Nota
Puoi utilizzare l'operatore di discesa ricorsiva JSONPath
(..
) per BatchDeleteBuilds
. Con l'array restituito, è possibile trasformare il Arn
campo da StartBuild
in un Ids
parametro plurale, come illustrato nell'esempio seguente.
"BatchDeleteBuilds": {
"Type": "Task",
"Resource": "arn:aws:states:::codebuild:batchDeleteBuilds",
"Parameters": {
"Ids.$": "$.Build..
Arn"
},
"Next": "MyNextState"
},
IAMpolitiche per le chiamate AWS CodeBuild
I seguenti modelli di esempio mostrano come AWS Step Functions genera IAM politiche basate sulle risorse nella definizione della macchina a stati. Per ulteriori informazioni, consulta In che modo Step Functions genera IAM politiche per servizi integrati e Scopri i modelli di integrazione dei servizi in Step Functions.
Risorse:
{
"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
Risorse statiche
Risorse dinamiche
StopBuild
Risorse statiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Risorse dinamiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchDeleteBuilds
Risorse statiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Risorse dinamiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchGetReports
Risorse statiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:report-group/[[reportName]]
"
]
}
]
}
Risorse dinamiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:report-group/*"
]
}
]
}
StartBuildBatch
Risorse statiche
Risorse dinamiche
StopBuildBatch
Risorse statiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Risorse dinamiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}
RetryBuildBatch
Risorse statiche
Risorse dinamiche
DeleteBuildBatch
Risorse statiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
Risorse dinamiche
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}