

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

# Generazione di una pipeline di avviamento per AWS CodePipeline AWS SAM
<a name="serverless-generating-example-ci-cd-codepipeline"></a>

Per generare una configurazione di pipeline di avviamento per AWS CodePipeline, eseguite le seguenti attività in questo ordine:

1. Creare risorse infrastrutturali

1. Genera la configurazione della pipeline

1. Esegui il commit della configurazione della pipeline su Git

1. Connect il tuo repository Git con il tuo sistema CI/CD 

**Nota**  
La procedura seguente utilizza due AWS SAMCLI comandi, `sam pipeline bootstrap` e. `sam pipeline init` Il motivo per cui esistono due comandi è quello di gestire il caso d'uso in cui gli amministratori (ovvero gli utenti che necessitano dell'autorizzazione per configurare le AWS risorse dell'infrastruttura come gli utenti e i ruoli IAM) dispongono di maggiori autorizzazioni rispetto agli sviluppatori (ovvero gli utenti che necessitano solo dell'autorizzazione per configurare le singole pipeline, ma non le risorse di infrastruttura AWS richieste).

## Fase 1: Creare risorse infrastrutturali
<a name="generating-example-step-1"></a>

Le pipeline che utilizzano AWS SAM richiedono determinate AWS risorse, come un utente IAM e ruoli con le autorizzazioni necessarie, un bucket Amazon S3 e, facoltativamente, un repository Amazon ECR. È necessario disporre di un set di risorse infrastrutturali per ogni fase di implementazione della pipeline.

È possibile eseguire il comando seguente per facilitare questa configurazione:

```
sam pipeline bootstrap
```

**Nota**  
Esegui il comando precedente per ogni fase di distribuzione della pipeline.

## Fase 2: Generare la configurazione della pipeline
<a name="generating-example-step-2"></a>

Per generare la configurazione della pipeline, esegui il comando seguente:

```
sam pipeline init
```

## Passaggio 3: Esegui il commit della configurazione della pipeline nell'archivio Git
<a name="generating-example-step-3"></a>

Questo passaggio è necessario per garantire che il CI/CD sistema sia a conoscenza della configurazione della pipeline e venga eseguito quando vengono apportate le modifiche.

## Passaggio 4: Connect il repository Git al sistema CI/CD
<a name="generating-example-step-4"></a>

Perché ora AWS CodePipeline puoi creare la connessione eseguendo il seguente comando:

```
sam deploy -t codepipeline.yaml --stack-name <pipeline-stack-name> --capabilities=CAPABILITY_IAM --region <region-X>
```

Se utilizzi GitHub o Bitbucket, dopo aver eseguito il **sam deploy** comando in precedenza, completa la connessione seguendo la procedura riportata in **Per completare una connessione disponibile nell'argomento Aggiornare una connessione** [in sospeso](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-update.html) nella guida per l'utente della *console Developer Tools*. Inoltre, memorizza una copia del file `CodeStarConnectionArn` dall'output del **sam deploy** comando, poiché ti servirà se desideri utilizzarlo AWS CodePipeline con un altro ramo di. `main`

## Configurazione di altre filiali
<a name="configuring-other-branches"></a>

Per impostazione predefinita, AWS CodePipeline utilizza il `main` ramo con AWS SAM. Se si desidera utilizzare un ramo diverso da`main`, è necessario eseguire nuovamente il **sam deploy** comando. Nota che, a seconda del repository Git che stai utilizzando, potresti dover fornire anche: `CodeStarConnectionArn`

```
# For GitHub and Bitbucket
sam deploy -t codepipeline.yaml --stack-name <feature-pipeline-stack-name> --capabilities=CAPABILITY_IAM --parameter-overrides="FeatureGitBranch=<branch-name> CodeStarConnectionArn=<codestar-connection-arn>"

# For AWS CodeCommit
sam deploy -t codepipeline.yaml --stack-name <feature-pipeline-stack-name> --capabilities=CAPABILITY_IAM --parameter-overrides="FeatureGitBranch=<branch-name>"
```

## Ulteriori informazioni
<a name="serverless-generating-cicd-learn"></a>

*Per un esempio pratico di configurazione di una CI/CD pipeline, vedi [CI/CD](https://catalog.workshops.aws/complete-aws-sam/en-US/module-4-cicd) with in The Complete Workshop. AWS CodePipeline AWS SAM *