Artefatti di input e output - 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à.

Artefatti di input e output

CodePipeline si integra con gli strumenti di sviluppo per verificare le modifiche al codice e quindi creare e distribuire in tutte le fasi del processo di distribuzione continua. Gli artefatti sono i file su cui agiscono le azioni della pipeline, ad esempio file o cartelle con codice dell'applicazione, file di pagine indice, script e così via. Ad esempio, l'artefatto di azione sorgente di Amazon S3 è un nome di file (o percorso di file) in cui vengono forniti i file di codice sorgente dell'applicazione per l'azione di origine della pipeline e i file vengono generalmente forniti come ZIP file, come il seguente nome di artefatto di esempio: _Windows.zip. SampleApp L'artefatto di output per l'azione di origine, i file di codice sorgente dell'applicazione, sono l'artefatto di output dell'azione di origine e sono anche l'artefatto di input per l'azione successiva, ad esempio un'azione di compilazione. Come altro esempio, un'azione di compilazione potrebbe eseguire comandi di compilazione che compilano il codice sorgente dell'applicazione per un artefatto di input, che è il file del codice sorgente dell'applicazione dall'azione di origine. Consulta la pagina di riferimento sulla configurazione dell'azione per un'azione specifica per i dettagli sui parametri degli artefatti, ad esempio per l'azione. AWS CodeBuild riferimento all'azione di compilazione e test CodeBuild

Le azioni utilizzano artefatti di input e output archiviati nel bucket di artefatti Amazon S3 che hai scelto al momento della creazione della pipeline. CodePipeline comprime e trasferisce i file per gli artefatti di input o output in base al tipo di azione nello stage.

Nota

Il bucket di artefatti non è lo stesso bucket utilizzato come posizione del file di origine per una pipeline in cui l'azione sorgente scelta è S3.

Per esempio:

  1. CodePipeline attiva l'esecuzione della pipeline quando viene eseguito un commit nel repository di origine, fornendo l'artefatto di output (qualsiasi file da creare) dalla fase Source.

  2. L'artefatto di output (qualsiasi file da compilare) della fase precedente viene incluso come artefatto di input per la fase di compilazione. Un artefatto di output (l’applicazione di compilazione) dalla fase di compilazione può essere un'applicazione aggiornata o un'immagine Docker aggiornata compilata in un contenitore.

  3. L'artefatto di output del passaggio precedente (l'applicazione creata) viene inserito come elemento di input nella fase di distribuzione, ad esempio negli ambienti di staging o di produzione in. Cloud AWSÈ possibile distribuire applicazioni in una flotta di distribuzione oppure distribuire applicazioni basate su contenitori per attività eseguite in cluster. ECS

Quando si crea o si modifica un'azione, si designano l'artefatto o gli artefatti di input e output per l'azione. Ad esempio, per una pipeline a due fasi con una fase di origine e distribuzione, in Modifica azione, si sceglie il nome dell'artefatto dell'azione di origine per l'artefatto di input per l'azione di distribuzione.

  • Quando usi la console per creare la tua prima pipeline, CodePipeline crea un bucket Amazon S3 nella Account AWS stessa Regione AWS e per archiviare gli elementi per tutte le pipeline. Ogni volta che usi la console per creare un'altra pipeline in quella regione, CodePipeline crea una cartella per quella pipeline nel bucket. Questa cartella viene utilizzata per archiviare artefatti della pipeline durante l'esecuzione del processo di rilascio automatico. Questo bucket è denominato codepipeline-region-12345EXAMPLEdove: region è la AWS regione in cui è stata creata la pipeline e 12345EXAMPLE è un numero casuale di 12 cifre che assicura che il nome del bucket sia univoco.

    Nota

    Se hai già un bucket che inizia con codepipeline- region - nella regione in cui stai creando la pipeline, CodePipeline lo utilizza come bucket predefinito. Segue anche l'ordine lessicografico; ad esempio, codepipeline- region-abcexample viene scelto prima di codepipeline- region-defexample.

    CodePipeline tronca i nomi degli artefatti, il che può far apparire simili i nomi di alcuni bucket. Anche se il nome dell'artefatto sembra troncato, viene mappato al bucket degli artefatti in modo da non CodePipeline risentire degli artefatti con nomi troncati. La pipeline può funzionare normalmente. Questo non è un problema con la cartella o gli artefatti. I nomi di pipeline hanno un limite di 100 caratteri. Anche se il nome della cartella degli artefatti potrebbe sembrare accorciato, è ancora univoco per la pipeline.

    Quando si crea o si modifica una pipeline, è necessario disporre di un bucket di artefatti nella pipeline Account AWS e Regione AWS di un bucket di artefatti per regione in cui si intende eseguire un'azione. Se utilizzi la console per creare una pipeline o azioni interregionali, i bucket di artefatti predefiniti vengono configurati nelle regioni in cui sono presenti le azioni. CodePipeline

    Se usi il AWS CLI per creare una pipeline, puoi archiviare gli elementi di quella pipeline in qualsiasi bucket Amazon S3 purché il bucket si trovi nella stessa pipeline. Account AWS Regione AWS Puoi farlo se sei preoccupato di superare i limiti dei bucket Amazon S3 consentiti per il tuo account. Se utilizzi il AWS CLI per creare o modificare una pipeline e aggiungi un'azione interregionale (un'azione con un AWS provider in una regione diversa dalla tua pipeline), devi fornire un bucket di artefatti per ogni regione aggiuntiva in cui intendi eseguire un'azione.

  • Ogni operazione dispone di un tipo. A seconda del tipo, l'operazione potrebbe contenere uno o entrambi gli elementi seguenti:

    • Un artefatto di input, che è l'artefatto che viene consumato o elaborato durante l'esecuzione dell'operazione.

    • Un artefatto di output, che è l'output dell'operazione.

    Ogni artefatto di output nella pipeline deve avere un nome univoco. Ogni artefatto di input per un'operazione deve corrispondere all'artefatto di output di un'operazione precedente nella pipeline, a prescindere che tale operazione sia immediatamente precedente a quella in una fase o che venga eseguita diverse fasi prima.

    Un artefatto può essere elaborato da più azioni.