View a markdown version of this page

CodeCommit riferimento all'azione di origine - AWS CodePipeline

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à.

CodeCommit riferimento all'azione di origine

Avvia la pipeline quando viene effettuato un nuovo commit sul CodeCommit repository e sul branch configurati.

Se si utilizza la console per creare o modificare la pipeline, CodePipeline crea una EventBridge regola che avvia la pipeline quando si verifica una modifica nel repository.

Nota

Per Amazon ECR, Amazon S3 o CodeCommit sources, puoi anche creare un source override utilizzando la voce input transform per utilizzare l'evento revisionValue in EventBridge for your pipeline, in cui revisionValue è derivato dalla variabile di evento source per la chiave dell'oggetto, il commit o l'ID dell'immagine. Per ulteriori informazioni, consulta il passaggio facoltativo per l'immissione della trasformazione di input incluso nelle procedure riportate in,, o. Azioni e risorse di origine di Amazon ECR EventBridge Connessione alle azioni di origine di Amazon S3 con una fonte abilitata per gli eventi CodeCommit azioni di origine e EventBridge

È necessario aver già creato un CodeCommit repository prima di connettere la pipeline tramite un' CodeCommit azione.

Una volta rilevata una modifica del codice, sono disponibili le seguenti opzioni per passare il codice alle operazioni successive:

  • Predefinito: configura l'azione CodeCommit sorgente in modo che generi un file ZIP con una copia superficiale del commit.

  • Clone completo: configura l'azione di origine per generare un riferimento URL Git al repository per le azioni successive.

    Attualmente, il riferimento all'URL Git può essere utilizzato solo dalle CodeBuild azioni a valle per clonare il repository e i metadati Git associati. Il tentativo di passare un riferimento URL Git a delle CodeBuild non-azioni genera un errore.

Tipo di operazione

  • Categoria: Source

  • Proprietario: AWS

  • Provider: CodeCommit

  • Versione: 1

Parametri di configurazione

RepositoryName

Obbligatorio: sì

Il nome del repository in cui devono essere rilevate le modifiche di origine.

BranchName

Obbligatorio: sì

Il nome del ramo in cui devono essere rilevate le modifiche di origine.

PollForSourceChanges

Obbligatorio: no

PollForSourceChangescontrolla se CodePipeline interroga il CodeCommit repository per le modifiche alla fonte. Ti consigliamo invece di utilizzare CloudWatch Events per rilevare le modifiche all'origine. Per ulteriori informazioni sulla configurazione CloudWatch degli eventi, consulta Migra le pipeline di polling (CodeCommit source) (CLI) oMigra le pipeline di polling (source) (CodeCommit CloudFormation modello).

Importante

Se intendete configurare una regola CloudWatch Events, dovete impostarla su PollForSourceChanges per false evitare esecuzioni duplicate della pipeline.

I valori validi per questo parametro sono:

  • true: se impostata, CodePipeline interroga il repository per individuare eventuali modifiche all'origine.

    Nota

    Se omettiPollForSourceChanges, per CodePipeline impostazione predefinita esegue il polling del tuo repository per le modifiche alla fonte. Questo comportamento è lo stesso se PollForSourceChanges è incluso e impostato su true.

  • false: se impostato, CodePipeline non esegue il polling del repository per le modifiche all'origine. Usa questa impostazione se intendi configurare una regola CloudWatch Events per rilevare le modifiche all'origine.

OutputArtifactFormat

Obbligatorio: no

Il formato dell'artefatto di output. I valori possono essere uno o. CODEBUILD_CLONE_REF CODE_ZIP Se non altrimenti specificato, l'impostazione predefinita è CODE_ZIP.

Importante

L'opzione CODEBUILD_CLONE_REF può essere utilizzata solo da operazioni downstream di CodeBuild.

Se scegli questa opzione, devi aggiungere l'codecommit:GitPullautorizzazione al tuo ruolo di CodeBuild servizio, come mostrato inAggiungi le CodeBuild GitClone autorizzazioni per le azioni di origine CodeCommit. È inoltre necessario aggiungere l'codecommit:GetRepositoryautorizzazione al ruolo di CodePipeline servizio, come mostrato inAggiungi le autorizzazioni al ruolo del servizio CodePipeline. Per un tutorial che mostra come utilizzare l'opzione Full clone, consultaTutorial: Usa un clone completo con una fonte di CodeCommit pipeline.

Input artifact (Artefatti di input)

  • Numero di artefatti: 0

  • Descrizione: gli artefatti di input non si applicano a questo tipo di azione.

Artefatti di output

  • Numero di artefatti: 1

  • Descrizione: l'artefatto di output di questa azione è un file ZIP che contiene il contenuto del repository configurato e del ramo al commit specificato come revisione di origine per l'esecuzione della pipeline. Gli artefatti generati dal repository sono gli artefatti di output dell'azione. CodeCommit L'ID di commit del codice sorgente viene visualizzato CodePipeline come revisione di origine per l'esecuzione della pipeline attivata.

Variabili di output

Quando è configurata, questa azione produce variabili che possono essere referenziate dalla configurazione dell'azione di un'azione downstream nella pipeline. Questa azione produce variabili che possono essere viste come variabili di output, anche se l'azione non ha uno spazio dei nomi. È possibile configurare un'azione con uno spazio dei nomi per rendere tali variabili disponibili per la configurazione delle azioni downstream.

Per ulteriori informazioni, consulta Riferimento alle variabili.

CommitId

L'ID di CodeCommit commit che ha attivato l'esecuzione della pipeline. Gli ID di commit sono l'SHA completo del commit.

CommitMessage

Il messaggio di descrizione, se presente, associato al commit che ha attivato l'esecuzione della pipeline.

RepositoryName

Il nome del CodeCommit repository in cui è stato effettuato il commit che ha attivato la pipeline.

BranchName

Il nome del ramo del CodeCommit repository in cui è stata apportata la modifica al codice sorgente.

AuthorDate

La data in cui il commit è stato creato, in formato timestamp.

CommitterDate

La data in cui è stato eseguito il commit, in formato timestamp.

Autorizzazioni del ruolo di servizio: azione CodeCommit

Quando CodePipeline viene eseguita l'azione, la policy relativa al ruolo del CodePipeline servizio richiede le seguenti autorizzazioni, opportunamente limitate all'ARN della risorsa della pipeline per mantenere l'accesso con il minimo dei privilegi. Ad esempio, aggiungi quanto segue alla tua dichiarazione politica:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codecommit:CancelUploadArchive", "codecommit:GetBranch", "codecommit:GetCommit", "codecommit:GetRepository", "codecommit:GetUploadArchiveStatus", "codecommit:UploadArchive" ], "Resource": [ "arn:aws:codecommit:*:111122223333:[[codecommitRepostories]]" ] } ] }

Esempio di configurazione dell'operazione

Esempio di formato predefinito degli artefatti di output

YAML
name: Source actionTypeId: category: Source owner: AWS provider: CodeCommit version: '1' runOrder: 1 configuration: BranchName: main PollForSourceChanges: 'false' RepositoryName: MyWebsite outputArtifacts: - name: Artifact_MyWebsiteStack inputArtifacts: [] region: us-west-2 namespace: SourceVariables
JSON
{ "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "provider": "CodeCommit", "version": "1" }, "runOrder": 1, "configuration": { "BranchName": "main", "PollForSourceChanges": "false", "RepositoryName": "MyWebsite" }, "outputArtifacts": [ { "name": "Artifact_MyWebsiteStack" } ], "inputArtifacts": [], "region": "us-west-2", "namespace": "SourceVariables" }

Esempio di formato completo degli artefatti di output clonati

YAML
name: Source actionTypeId: category: Source owner: AWS provider: CodeCommit version: '1' runOrder: 1 configuration: BranchName: main OutputArtifactFormat: CODEBUILD_CLONE_REF PollForSourceChanges: 'false' RepositoryName: MyWebsite outputArtifacts: - name: SourceArtifact inputArtifacts: [] region: us-west-2 namespace: SourceVariables
JSON
{ "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "provider": "CodeCommit", "version": "1" }, "runOrder": 1, "configuration": { "BranchName": "main", "OutputArtifactFormat": "CODEBUILD_CLONE_REF", "PollForSourceChanges": "false", "RepositoryName": "MyWebsite" }, "outputArtifacts": [ { "name": "SourceArtifact" } ], "inputArtifacts": [], "region": "us-west-2", "namespace": "SourceVariables" }

Le risorse correlate seguenti possono essere utili durante l'utilizzo di questa operazione.