Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.
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à.
CodePipeline esempi utilizzando AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with CodePipeline.
Le azioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come utilizzareacknowledge-job.
- AWS CLI
-
Come recuperare le informazioni relative a un processo specificato
Questo esempio restituisce le informazioni su un processo specificato, incluso il relativo stato, se esistente. Viene utilizzato solo per i worker del processo e le azioni personalizzate. Per determinare il valore di nonce e l'ID del lavoro, usa aws poll-for-jobs codepipeline.
Comando:
aws codepipeline acknowledge-job --job-idf4f4ff82-2d11-EXAMPLE--nonce3Output:
{ "status": "InProgress" }-
Per i dettagli sull'API, consulta Command AcknowledgeJob
Reference AWS CLI .
-
Il seguente esempio di codice mostra come utilizzarecreate-custom-action-type.
- AWS CLI
-
Come creare un’azione personalizzata
Questo esempio crea un'azione personalizzata per AWS CodePipeline l'utilizzo di un file JSON già creato (qui denominato MyCustomAction .json) che contiene la struttura dell'azione personalizzata. Per ulteriori informazioni sui requisiti per la creazione di un'azione personalizzata, inclusa la struttura del file, consulta la Guida per l'utente. AWS CodePipeline
aws codepipeline create-custom-action-type --cli-input-jsonfile://MyCustomAction.jsonContenuto del file
MyCustomAction.json:{ "category": "Build", "provider": "MyJenkinsProviderName", "version": "1", "settings": { "entityUrlTemplate": "https://192.0.2.4/job/{Config:ProjectName}/", "executionUrlTemplate": "https://192.0.2.4/job/{Config:ProjectName}/lastSuccessfulBuild/{ExternalExecutionId}/" }, "configurationProperties": [ { "name": "MyJenkinsExampleBuildProject", "required": true, "key": true, "secret": false, "queryable": false, "description": "The name of the build project must be provided when this action is added to the pipeline.", "type": "String" } ], "inputArtifactDetails": { "maximumCount": 1, "minimumCount": 0 }, "outputArtifactDetails": { "maximumCount": 1, "minimumCount": 0 } }Questo comando restituisce la struttura dell’azione personalizzata.
-
Per i dettagli sull'API, consulta CreateCustomActionType AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-pipeline.
- AWS CLI
-
Come creare una pipeline
Questo esempio crea una pipeline AWS CodePipeline utilizzando un file JSON già creato (qui denominato MySecondPipeline .json) che contiene la struttura della pipeline. Per ulteriori informazioni sui requisiti per la creazione di una pipeline, inclusa la struttura del file, consulta la Guida per l'utente. AWS CodePipeline
Comando:
aws codepipeline create-pipeline --cli-input-jsonfile://MySecondPipeline.jsonContenuto del file JSON di esempio:
{ "pipeline": { "roleArn": "arn:aws:iam::111111111111:role/AWS-CodePipeline-Service", "stages": [ { "name": "Source", "actions": [ { "inputArtifacts": [], "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3" }, "outputArtifacts": [ { "name": "MyApp" } ], "configuration": { "S3Bucket": "awscodepipeline-demo-bucket", "S3ObjectKey": "aws-codepipeline-s3-aws-codedeploy_linux.zip" }, "runOrder": 1 } ] }, { "name": "Beta", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "CodePipelineDemoFleet", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineDemoFleet" }, "runOrder": 1 } ] } ], "artifactStore": { "type": "S3", "location": "codepipeline-us-east-1-11EXAMPLE11" }, "name": "MySecondPipeline", "version": 1 } }Output:
This command returns the structure of the pipeline.-
Per i dettagli sull'API, consulta CreatePipeline AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-custom-action-type.
- AWS CLI
-
Come eliminare un’azione personalizzata
Questo esempio elimina un'azione personalizzata AWS CodePipeline utilizzando un file JSON già creato (qui denominato DeleteMyCustomAction .json) che contiene il tipo di azione, il nome del provider e il numero di versione dell'azione da eliminare. Utilizzate il list-action-types comando per visualizzare i valori corretti per categoria, versione e provider.
Comando:
aws codepipeline delete-custom-action-type --cli-input-jsonfile://DeleteMyCustomAction.jsonContenuto del file JSON di esempio:
{ "category": "Build", "version": "1", "provider": "MyJenkinsProviderName" }Output:
None.-
Per i dettagli sull'API, consulta DeleteCustomActionType AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-pipeline.
- AWS CLI
-
Come eliminare una pipeline
Questo esempio elimina una pipeline denominata MySecondPipeline from. AWS CodePipeline Utilizzate il comando list-pipelines per visualizzare un elenco di pipeline associate al vostro account. AWS
Comando:
aws codepipeline delete-pipeline --nameMySecondPipelineOutput:
None.-
Per i dettagli sull'API, consulta DeletePipeline
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzaredelete-webhook.
- AWS CLI
-
Come eliminare un webhook
L'
delete-webhookesempio seguente elimina un webhook per un'azione di origine della GitHub versione 1. Prima di eliminare il webhook, devi annullarne la registrazione utilizzando il comandoderegister-webhook-with-third-party.aws codepipeline delete-webhook \ --namemy-webhookQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Eliminare il webhook dalla GitHub fonte nella Guida per l'AWS CodePipeline utente.
-
Per i dettagli sull'API, consulta DeleteWebhook AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarederegister-webhook-with-third-party.
- AWS CLI
-
Come annullare la registrazione di un webhook
L'
deregister-webhook-with-third-partyesempio seguente elimina un webhook per un'azione di origine della GitHub versione 1. Prima di eliminare il webhook, devi annullarne la registrazione.aws codepipeline deregister-webhook-with-third-party \ --webhook-namemy-webhookQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Eliminare il webhook dalla GitHub fonte nella Guida per l'AWS CodePipeline utente.
-
Per i dettagli sull'API, consulta DeregisterWebhookWithThirdParty AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredisable-stage-transition.
- AWS CLI
-
Come disabilitare una transizione verso una fase in una pipeline
Questo esempio disabilita le transizioni alla fase Beta della MyFirstPipeline pipeline in. AWS CodePipeline
Comando:
aws codepipeline disable-stage-transition --pipeline-nameMyFirstPipeline--stage-nameBeta--transition-typeInboundOutput:
None.-
Per i dettagli sull'API, consulta Command DisableStageTransition
Reference AWS CLI .
-
Il seguente esempio di codice mostra come utilizzareenable-stage-transition.
- AWS CLI
-
Come abilitare una transizione verso una fase in una pipeline
Questo esempio abilita le transizioni alla fase Beta della MyFirstPipeline pipeline in. AWS CodePipeline
Comando:
aws codepipeline enable-stage-transition --pipeline-nameMyFirstPipeline--stage-nameBeta--transition-typeInboundOutput:
None.-
Per i dettagli sull'API, consulta AWS CLI Command EnableStageTransition
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-job-details.
- AWS CLI
-
Come ottenere i dettagli di un processo
Questo esempio restituisce i dettagli su un processo il cui ID è rappresentato da f4f4ff82-2d11-EXAMPLE. Questo comando viene utilizzato solo per le azioni personalizzate. Quando viene chiamato questo comando, AWS CodePipeline restituisce le credenziali temporanee per il bucket Amazon S3 utilizzato per archiviare gli artefatti per la pipeline, se necessario per l'azione personalizzata. Questo comando restituirà anche tutti i valori del segreto definiti per l’azione, se definiti.
Comando:
aws codepipeline get-job-details --job-idf4f4ff82-2d11-EXAMPLEOutput:
{ "jobDetails": { "accountId": "111111111111", "data": { "actionConfiguration": { "__type": "ActionConfiguration", "configuration": { "ProjectName": "MyJenkinsExampleTestProject" } }, "actionTypeId": { "__type": "ActionTypeId", "category": "Test", "owner": "Custom", "provider": "MyJenkinsProviderName", "version": "1" }, "artifactCredentials": { "__type": "AWSSessionCredentials", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "secretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "sessionToken": "fICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE=" }, "inputArtifacts": [ { "__type": "Artifact", "location": { "s3Location": { "bucketName": "codepipeline-us-east-1-11EXAMPLE11", "objectKey": "MySecondPipeline/MyAppBuild/EXAMPLE" }, "type": "S3" }, "name": "MyAppBuild" } ], "outputArtifacts": [], "pipelineContext": { "__type": "PipelineContext", "action": { "name": "MyJenkinsTest-Action" }, "pipelineName": "MySecondPipeline", "stage": { "name": "Testing" } } }, "id": "f4f4ff82-2d11-EXAMPLE" } }-
Per i dettagli sull'API, consulta Command Reference. GetJobDetails
AWS CLI
-
Il seguente esempio di codice mostra come utilizzareget-pipeline-state.
- AWS CLI
-
Come ottenere informazioni sullo stato di una pipeline
Questo esempio restituisce lo stato più recente di una pipeline denominata MyFirstPipeline.
Comando:
aws codepipeline get-pipeline-state --nameMyFirstPipelineOutput:
{ "created": 1446137312.204, "pipelineName": "MyFirstPipeline", "pipelineVersion": 1, "stageStates": [ { "actionStates": [ { "actionName": "Source", "entityUrl": "https://console.aws.amazon.com/s3/home?#", "latestExecution": { "lastStatusChange": 1446137358.328, "status": "Succeeded" } } ], "stageName": "Source" }, { "actionStates": [ { "actionName": "CodePipelineDemoFleet", "entityUrl": "https://console.aws.amazon.com/codedeploy/home?#/applications/CodePipelineDemoApplication/deployment-groups/CodePipelineDemoFleet", "latestExecution": { "externalExecutionId": "d-EXAMPLE", "externalExecutionUrl": "https://console.aws.amazon.com/codedeploy/home?#/deployments/d-EXAMPLE", "lastStatusChange": 1446137493.131, "status": "Succeeded", "summary": "Deployment Succeeded" } } ], "inboundTransitionState": { "enabled": true }, "stageName": "Beta" } ], "updated": 1446137312.204 }-
Per i dettagli sull'API, vedere GetPipelineState
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareget-pipeline.
- AWS CLI
-
Come visualizzare la struttura di una pipeline
Questo esempio restituisce la struttura di una pipeline denominata MyFirstPipeline.
Comando:
aws codepipeline get-pipeline --nameMyFirstPipelineOutput:
{ "pipeline": { "roleArn": "arn:aws:iam::111111111111:role/AWS-CodePipeline-Service", "stages": [ { "name": "Source", "actions": [ { "inputArtifacts": [], "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3" }, "outputArtifacts": [ { "name": "MyApp" } ], "configuration": { "S3Bucket": "awscodepipeline-demo-bucket", "S3ObjectKey": "aws-codepipeline-s3-aws-codedeploy_linux.zip" }, "runOrder": 1 } ] }, { "name": "Beta", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "CodePipelineDemoFleet", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineDemoFleet" }, "runOrder": 1 } ] } ], "artifactStore": { "type": "S3", "location": "codepipeline-us-east-1-11EXAMPLE11" }, "name": "MyFirstPipeline", "version": 1 } }-
Per i dettagli sull'API, vedere GetPipeline
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-action-executions.
- AWS CLI
-
Come elencare le esecuzioni di azioni
L’esempio
list-action-executionsseguente visualizza i dettagli di esecuzione di un’azione per una pipeline, ad esempio l’ID di esecuzione dell’azione, gli artefatti di input, gli artefatti di output, i risultati dell’esecuzione e lo stato.aws codepipeline list-action-executions \ --pipeline-namemyPipelineOutput:
{ "actionExecutionDetails": [ { "pipelineExecutionId": "EXAMPLE0-adfc-488e-bf4c-1111111720d3", "actionExecutionId": "EXAMPLE4-2ee8-4853-bd6a-111111158148", "pipelineVersion": 12, "stageName": "Deploy", "actionName": "Deploy", "startTime": 1598572628.6, "lastUpdateTime": 1598572661.255, "status": "Succeeded", "input": { "actionTypeId": { "category": "Deploy", "owner": "AWS", "provider": "CodeDeploy", "version": "1" }, "configuration": { "ApplicationName": "my-application", "DeploymentGroupName": "my-deployment-group" }, "resolvedConfiguration": { "ApplicationName": "my-application", "DeploymentGroupName": "my-deployment-group" }, "region": "us-east-1", "inputArtifacts": [ { "name": "SourceArtifact", "s3location": { "bucket": "artifact-bucket", "key": "myPipeline/SourceArti/key" } } ], "namespace": "DeployVariables" }, "output": { "outputArtifacts": [], "executionResult": { "externalExecutionId": "d-EXAMPLEE5", "externalExecutionSummary": "Deployment Succeeded", "externalExecutionUrl": "https://myaddress.com" }, "outputVariables": {} } }, { "pipelineExecutionId": "EXAMPLE0-adfc-488e-bf4c-1111111720d3", "actionExecutionId": "EXAMPLE5-abb4-4192-9031-11111113a7b0", "pipelineVersion": 12, "stageName": "Source", "actionName": "Source", "startTime": 1598572624.387, "lastUpdateTime": 1598572628.16, "status": "Succeeded", "input": { "actionTypeId": { "category": "Source", "owner": "AWS", "provider": "CodeCommit", "version": "1" }, "configuration": { "BranchName": "production", "PollForSourceChanges": "false", "RepositoryName": "my-repo" }, "resolvedConfiguration": { "BranchName": "production", "PollForSourceChanges": "false", "RepositoryName": "my-repo" }, "region": "us-east-1", "inputArtifacts": [], "namespace": "SourceVariables" }, "output": { "outputArtifacts": [ { "name": "SourceArtifact", "s3location": { "bucket": "amzn-s3-demo-bucket", "key": "myPipeline/SourceArti/key" } } ], "executionResult": { "externalExecutionId": "1111111ad99dcd35914c00b7fbea13995EXAMPLE", "externalExecutionSummary": "Edited template.yml", "externalExecutionUrl": "https://myaddress.com" }, "outputVariables": { "AuthorDate": "2020-05-08T17:45:43Z", "BranchName": "production", "CommitId": "EXAMPLEad99dcd35914c00b7fbea139951111111", "CommitMessage": "Edited template.yml", "CommitterDate": "2020-05-08T17:45:43Z", "RepositoryName": "my-repo" } } }, . . . .Per ulteriori informazioni, consulta Visualizza esecuzioni di azioni (CLI) nella Guida per AWS CodePipeline l'utente.
-
Per i dettagli sull'API, consulta AWS CLI Command ListActionExecutions
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-action-types.
- AWS CLI
-
Come visualizzare i tipi di azione disponibili
Utilizzato da solo, il list-action-types comando restituisce la struttura di tutte le azioni disponibili per l' AWS account. Questo esempio utilizza l'action-owner-filter opzione -- per restituire solo azioni personalizzate.
Comando:
aws codepipeline list-action-types --action-owner-filterCustomOutput:
{ "actionTypes": [ { "inputArtifactDetails": { "maximumCount": 5, "minimumCount": 0 }, "actionConfigurationProperties": [ { "secret": false, "required": true, "name": "MyJenkinsExampleBuildProject", "key": true, "queryable": true } ], "outputArtifactDetails": { "maximumCount": 5, "minimumCount": 0 }, "id": { "category": "Build", "owner": "Custom", "version": "1", "provider": "MyJenkinsProviderName" }, "settings": { "entityUrlTemplate": "http://192.0.2.4/job/{Config:ProjectName}", "executionUrlTemplate": "http://192.0.2.4/job/{Config:ProjectName}/{ExternalExecutionId}" } }, { "inputArtifactDetails": { "maximumCount": 5, "minimumCount": 0 }, "actionConfigurationProperties": [ { "secret": false, "required": true, "name": "MyJenkinsExampleTestProject", "key": true, "queryable": true } ], "outputArtifactDetails": { "maximumCount": 5, "minimumCount": 0 }, "id": { "category": "Test", "owner": "Custom", "version": "1", "provider": "MyJenkinsProviderName" }, "settings": { "entityUrlTemplate": "http://192.0.2.4/job/{Config:ProjectName}", "executionUrlTemplate": "http://192.0.2.4/job/{Config:ProjectName}/{ExternalExecutionId}" } } ] }-
Per i dettagli sull'API, vedere ListActionTypes
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-pipeline-executions.
- AWS CLI
-
Come visualizzare la cronologia di esecuzione delle pipeline
L'
list-pipeline-executionsesempio seguente mostra la cronologia di esecuzione di una pipeline nel tuo AWS account.aws codepipeline list-pipeline-executions \ --pipeline-nameMyPipelineOutput:
{ "pipelineExecutionSummaries": [ { "lastUpdateTime": 1496380678.648, "pipelineExecutionId": "7cf7f7cb-3137-539g-j458-d7eu3EXAMPLE", "startTime": 1496380258.243, "status": "Succeeded" }, { "lastUpdateTime": 1496591045.634, "pipelineExecutionId": "3137f7cb-8d494hj4-039j-d84l-d7eu3EXAMPLE", "startTime": 1496590401.222, "status": "Succeeded" }, { "lastUpdateTime": 1496946071.6456, "pipelineExecutionId": "4992f7jf-7cf7-913k-k334-d7eu3EXAMPLE", "startTime": 1496945471.5645, "status": "Succeeded" } ] }Per ulteriori informazioni, consulta Visualizza la cronologia di esecuzione nella Guida per l'AWS CodePipeline utente.
-
Per i dettagli sull'API, consulta ListPipelineExecutions AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-pipelines.
- AWS CLI
-
Come visualizzare un elenco di pipeline
Questo esempio elenca tutte le AWS CodePipeline pipeline associate all' AWS account dell'utente.
Comando:
aws codepipeline list-pipelinesOutput:
{ "pipelines": [ { "updated": 1439504274.641, "version": 1, "name": "MyFirstPipeline", "created": 1439504274.641 }, { "updated": 1436461837.992, "version": 2, "name": "MySecondPipeline", "created": 1436460801.381 } ] }-
Per i dettagli sull'API, vedere ListPipelines
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-tags-for-resource.
- AWS CLI
-
Come elencare i tag
L’esempio
list-tags-for-resourceseguente recupera un elenco di tutti i tag collegati alla risorsa pipeline specificata.aws codepipeline list-tags-for-resource \ --resource-arnarn:aws:codepipeline:us-east-1:123456789012:MyPipelineOutput:
{ "tags": { "Project": "ProjectA", "IscontainerBased": "true" } }Per ulteriori informazioni, consulta Visualizza i tag per una pipeline (CLI) nella Guida per AWS CodePipeline l'utente.
-
Per i dettagli sull'API, consulta AWS CLI Command ListTagsForResource
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-webhooks.
- AWS CLI
-
Come elencare i webhook
L’esempio
list-webhooksseguente recupera un elenco di tutti i tag collegati alla risorsa pipeline specificata.aws codepipeline list-webhooks \ --endpoint-url"https://codepipeline.eu-central-1.amazonaws.com"\ --region"eu-central-1"Output:
{ "webhooks": [ { "url": "https://webhooks.domain.com/trigger111111111EXAMPLE11111111111111111": { "authenticationConfiguration": { "SecretToken": "Secret" }, "name": "my-webhook", "authentication": "GITHUB_HMAC", "targetPipeline": "my-Pipeline", "targetAction": "Source", "filters": [ { "jsonPath": "$.ref", "matchEquals": "refs/heads/{Branch}" } ] }, "arn": "arn:aws:codepipeline:eu-central-1:123456789012:webhook:my-webhook" } ] }Per ulteriori informazioni, consulta Elenca i webhook presenti nel tuo account nella Guida per l'AWS CodePipeline utente.
-
Per i dettagli sull'API, consulta AWS CLI Command ListWebhooks
Reference.
-
Il seguente esempio di codice mostra come utilizzarepoll-for-jobs.
- AWS CLI
-
Come visualizzare tutti i processi disponibili
Questo esempio restituisce le informazioni su qualsiasi processo su cui può agire un worker. Questo esempio utilizza un file JSON predefinito (MyActionTypeInfo.json) per fornire informazioni sul tipo di azione per cui il job worker elabora i job. Questo comando viene utilizzato solo per le azioni personalizzate. Quando viene chiamato questo comando, AWS CodePipeline restituisce le credenziali temporanee per il bucket Amazon S3 utilizzato per archiviare gli artefatti per la pipeline. Questo comando restituirà anche tutti i valori del segreto definiti per l’azione, se definiti.
Comando:
aws codepipeline poll-for-jobs --cli-input-jsonfile://MyActionTypeInfo.jsonContenuto del file JSON di esempio:
{ "actionTypeId": { "category": "Test", "owner": "Custom", "provider": "MyJenkinsProviderName", "version": "1" }, "maxBatchSize": 5, "queryParam": { "ProjectName": "MyJenkinsTestProject" } }Output:
{ "jobs": [ { "accountId": "111111111111", "data": { "actionConfiguration": { "__type": "ActionConfiguration", "configuration": { "ProjectName": "MyJenkinsExampleTestProject" } }, "actionTypeId": { "__type": "ActionTypeId", "category": "Test", "owner": "Custom", "provider": "MyJenkinsProviderName", "version": "1" }, "artifactCredentials": { "__type": "AWSSessionCredentials", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "secretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "sessionToken": "fICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE=" }, "inputArtifacts": [ { "__type": "Artifact", "location": { "s3Location": { "bucketName": "codepipeline-us-east-1-11EXAMPLE11", "objectKey": "MySecondPipeline/MyAppBuild/EXAMPLE" }, "type": "S3" }, "name": "MyAppBuild" } ], "outputArtifacts": [], "pipelineContext": { "__type": "PipelineContext", "action": { "name": "MyJenkinsTest-Action" }, "pipelineName": "MySecondPipeline", "stage": { "name": "Testing" } } }, "id": "ef66c259-64f9-EXAMPLE", "nonce": "3" } ] }-
Per i dettagli sull'API, consulta Command Reference. PollForJobs
AWS CLI
-
Il seguente esempio di codice mostra come utilizzareput-webhook.
- AWS CLI
-
Come creare un webhook
L'
put-webhookesempio seguente crea un webhook per un'azione di origine della GitHub versione 1. Dopo aver creato il webhook, è necessario utilizzare il comando register-webhook-with-third -party per registrarlo.aws codepipeline put-webhook \ --cli-input-jsonfile://webhook_json.json\ --region"eu-central-1"Contenuto di
webhook_json.json:{ "webhook": { "name": "my-webhook", "targetPipeline": "pipeline_name", "targetAction": "source_action_name", "filters": [ { "jsonPath": "$.ref", "matchEquals": "refs/heads/{Branch}" } ], "authentication": "GITHUB_HMAC", "authenticationConfiguration": { "SecretToken": "secret" } } }Output:
{ "webhook": { "url": "https://webhooks.domain.com/trigger111111111EXAMPLE11111111111111111", "definition": { "authenticationConfiguration": { "SecretToken": "secret" }, "name": "my-webhook", "authentication": "GITHUB_HMAC", "targetPipeline": "pipeline_name", "targetAction": "Source", "filters": [ { "jsonPath": "$.ref", "matchEquals": "refs/heads/{Branch}" } ] }, "arn": "arn:aws:codepipeline:eu-central-1:123456789012:webhook:my-webhook" }, "tags": [ { "key": "Project", "value": "ProjectA" } ] }Per ulteriori informazioni, consulta Creare un webhook per una GitHub fonte nella Guida per l'AWS CodePipeline utente.
-
Per i dettagli sull'API, consulta PutWebhook AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareretry-stage-execution.
- AWS CLI
-
Come riprovare a eseguire un’azione non riuscita
L’esempio
retry-stage-executionseguente ritenta una fase con un’azione non riuscita.aws codepipeline retry-stage-execution \ --pipeline-nameMyPipeline\ --stage-nameDeploy\ --pipeline-execution-idb59babff-5f34-EXAMPLE\ --retry-modeFAILED_ACTIONSOutput:
{ "pipelineExecutionId": "b59babff-5f34-EXAMPLE" }Per ulteriori informazioni, consulta Retry failed actions (CLI) nella Guida per AWS CodePipeline l'utente.
-
Per i dettagli sull'API, consulta AWS CLI Command RetryStageExecution
Reference.
-
Il seguente esempio di codice mostra come utilizzarestart-pipeline-execution.
- AWS CLI
-
Come eseguire la revisione più recente tramite una pipeline
Questo esempio esegue l'ultima revisione presente nella fase di origine di una pipeline tramite la pipeline denominata "». MyFirstPipeline
Comando:
aws codepipeline start-pipeline-execution --nameMyFirstPipelineOutput:
{ "pipelineExecutionId": "3137f7cb-7cf7-EXAMPLE" }-
Per i dettagli sull'API, consulta Command StartPipelineExecution
Reference AWS CLI .
-
Il seguente esempio di codice mostra come utilizzarestop-pipeline-execution.
- AWS CLI
-
Come arrestare l’esecuzione di una pipeline
L’esempio
stop-pipeline-executionseguente attende, per impostazione predefinita, il completamento delle azioni in corso e quindi arresta la pipeline. Non è possibile scegliere di interrompere e attendere se l’esecuzione è già in uno stato di arresto. È possibile scegliere di interrompere e abbandonare un’esecuzione già in uno stato di arresto.aws codepipeline stop-pipeline-execution \ --pipeline-nameMyFirstPipeline\ --pipeline-execution-idd-EXAMPLE\ --reason"Stopping pipeline after the build action is done"Questo comando non restituisce alcun output.
Per ulteriori informazioni, consulta Arrestare l'esecuzione di una pipeline (CLI) nella Guida per AWS CodePipeline l'utente.
-
Per i dettagli sull'API, consulta AWS CLI Command StopPipelineExecution
Reference.
-
Il seguente esempio di codice mostra come utilizzaretag-resource.
- AWS CLI
-
Come taggare a una risorsa
L’esempio
tag-resourceseguente associa un set di tag forniti a una connessione. Utilizza questo comando per aggiungere o modificare tag.aws codepipeline tag-resource \ --resource-arnarn:aws:codepipeline:us-east-1:123456789012:MyPipeline\ --tagskey=Project,value=ProjectAkey=IscontainerBased,value=trueQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Aggiungere tag a una pipeline (CLI) nella Guida per AWS CodePipeline l'utente.
-
Per i dettagli sull'API, consulta AWS CLI Command TagResource
Reference.
-
Il seguente esempio di codice mostra come utilizzareuntag-resource.
- AWS CLI
-
Per rimuovere i AWS tag da una risorsa di connessione
L’esempio
untag-resourceseguente rimuove un tag dalla risorsa specificata.aws codepipeline untag-resource \ --resource-arnarn:aws:codepipeline:us-east-1:123456789012:MyPipeline\ --tag-keysProjectIscontainerBasedQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Rimuovere tag da una pipeline (CLI) nella Guida per AWS CodePipeline l'utente.
-
Per i dettagli sull'API, consulta AWS CLI Command UntagResource
Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-pipeline.
- AWS CLI
-
Come aggiornare la struttura di una pipeline
Questo esempio utilizza il comando update-pipeline con l'argomento --. cli-input-json Questo esempio utilizza un file JSON predefinito (MyFirstPipeline.json) per aggiornare la struttura di una pipeline. AWS CodePipeline riconosce il nome della pipeline contenuto nel file JSON, quindi applica tutte le modifiche apportate ai campi modificati nella struttura della pipeline per aggiornare la pipeline.
Utilizza le linee guida seguenti per creare il file JSON predefinito:
Se utilizzi una struttura di pipeline recuperata mediante il comando get-pipeline, rimuovi la sezione dei metadati dalla struttura della pipeline nel file JSON, ovvero le righe “metadata”: { } e i campi “created”, “pipelineARN” e “updated” al loro interno. Il nome della pipeline non può essere modificato.
Comando:
aws codepipeline update-pipeline --cli-input-jsonfile://MyFirstPipeline.jsonContenuto del file JSON di esempio:
{ "pipeline": { "roleArn": "arn:aws:iam::111111111111:role/AWS-CodePipeline-Service", "stages": [ { "name": "Source", "actions": [ { "inputArtifacts": [], "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3" }, "outputArtifacts": [ { "name": "MyApp" } ], "configuration": { "S3Bucket": "awscodepipeline-demo-bucket2", "S3ObjectKey": "aws-codepipeline-s3-aws-codedeploy_linux.zip" }, "runOrder": 1 } ] }, { "name": "Beta", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "CodePipelineDemoFleet", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineDemoFleet" }, "runOrder": 1 } ] } ], "artifactStore": { "type": "S3", "location": "codepipeline-us-east-1-11EXAMPLE11" }, "name": "MyFirstPipeline", "version": 1 } }Output:
{ "pipeline": { "artifactStore": { "location": "codepipeline-us-east-1-11EXAMPLE11", "type": "S3" }, "name": "MyFirstPipeline", "roleArn": "arn:aws:iam::111111111111:role/AWS-CodePipeline-Service", "stages": [ { "actions": [ { "actionTypeId": { "__type": "ActionTypeId", "category": "Source", "owner": "AWS", "provider": "S3", "version": "1" }, "configuration": { "S3Bucket": "awscodepipeline-demo-bucket2", "S3ObjectKey": "aws-codepipeline-s3-aws-codedeploy_linux.zip" }, "inputArtifacts": [], "name": "Source", "outputArtifacts": [ { "name": "MyApp" } ], "runOrder": 1 } ], "name": "Source" }, { "actions": [ { "actionTypeId": { "__type": "ActionTypeId", "category": "Deploy", "owner": "AWS", "provider": "CodeDeploy", "version": "1" }, "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineDemoFleet" }, "inputArtifacts": [ { "name": "MyApp" } ], "name": "CodePipelineDemoFleet", "outputArtifacts": [], "runOrder": 1 } ], "name": "Beta" } ], "version": 3 } }-
Per i dettagli sull'API, consulta Command Reference. UpdatePipeline
AWS CLI
-