

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

# GitHub connessioni
<a name="connections-github"></a>

Utilizzi le connessioni per autorizzare e stabilire configurazioni che associano il provider di terze parti alle tue AWS risorse.

**Nota**  
Invece di creare o utilizzare una connessione esistente nel tuo account, puoi utilizzare una connessione condivisa tra un altro. Account AWS Per informazioni, consulta [Usa una connessione condivisa con un altro account](connections-shared.md).

**Nota**  
Questa funzionalità non è disponibile nelle regioni Asia Pacifico (Hong Kong), Asia Pacifico (Hyderabad), Asia Pacifico (Giacarta), Asia Pacifico (Melbourne), Asia Pacifico (Osaka), Africa (Città del Capo), Medio Oriente (Bahrein), Medio Oriente (Emirati Arabi Uniti), Europa (Spagna), Europa (Zurigo), Israele (Tel Aviv) o (Stati Uniti occidentali). AWS GovCloud Per fare riferimento ad altre azioni disponibili, consulta. [Integrazioni di prodotti e servizi con CodePipeline](integrations.md) Per considerazioni su questa azione nella regione Europa (Milano), si veda la nota in[CodeStarSourceConnection per Bitbucket Cloud, GitHub Enterprise Server GitHub, GitLab .com e GitLab azioni autogestite](action-reference-CodestarConnectionSource.md).

Per aggiungere un'azione sorgente per il tuo repository GitHub o per GitHub Enterprise Cloud CodePipeline, puoi scegliere tra:
+ Utilizza la procedura guidata di **creazione della pipeline** della CodePipeline console o la pagina **Modifica azione** per scegliere l'opzione del provider **GitHub (tramite GitHub app)**. Vedi [Creare una connessione a GitHub Enterprise Server (console)](connections-ghes.md#connections-ghes-console) per aggiungere l'azione. La console ti aiuta a creare una risorsa di connessioni.
**Nota**  
Per un tutorial che illustra come aggiungere una GitHub connessione e utilizzare l'opzione **Full clone nella pipeline per clonare** i metadati, consulta. [Tutorial: usa il clone completo con una sorgente di GitHub pipeline](tutorials-github-gitclone.md)
+ Utilizza la CLI per aggiungere la configurazione dell'azione per l'`CodeStarSourceConnection`azione con il `GitHub` provider con i passaggi CLI mostrati in. [Creazione di una pipeline (CLI)](pipelines-create.md#pipelines-create-cli)

**Nota**  
**Puoi anche creare una connessione utilizzando la console Developer Tools in Impostazioni.** Vedi [Creare una connessione](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html).

Prima di iniziare:
+ Devi aver creato un account con GitHub.
+ Devi aver già creato un repository di GitHub codice.
+ Se il ruolo CodePipeline di servizio è stato creato prima del 18 dicembre 2019, potrebbe essere necessario aggiornarne le autorizzazioni da utilizzare `codestar-connections:UseConnection` per AWS CodeStar le connessioni. Per istruzioni, consulta [Aggiungi le autorizzazioni al ruolo di servizio CodePipeline](how-to-custom-role.md#how-to-update-role-new-services).

**Nota**  
Per creare la connessione, devi essere il proprietario dell' GitHub organizzazione. Per i repository che non appartengono a un'organizzazione, è necessario esserne il proprietario.

**Topics**
+ [Crea una connessione a GitHub (console)](#connections-github-console)
+ [Creare una connessione a GitHub (CLI)](#connections-github-cli)

## Crea una connessione a GitHub (console)
<a name="connections-github-console"></a>

Segui questi passaggi per utilizzare la CodePipeline console per aggiungere un'azione di connessione per il tuo repository GitHub o per GitHub Enterprise Cloud.

**Nota**  
In questi passaggi, puoi selezionare repository specifici in Accesso al **repository**. Tutti i repository non selezionati non saranno accessibili o visibili da. CodePipeline

### Fase 1: Crea o modifica la tua pipeline
<a name="connections-github-console-action"></a>

1. Accedi alla CodePipeline console.

1. Scegliere una delle seguenti opzioni.
   + Scegli di creare una pipeline. **Segui i passaggi descritti in *Crea una pipeline* per completare la prima schermata e scegli Avanti.** Nella pagina **Sorgente**, in **Source Provider**, scegli **GitHub (tramite GitHub app).**
   + Scegliete di modificare una pipeline esistente. Scegliete **Modifica**, quindi scegliete **Modifica fase**. Scegli di aggiungere o modificare l'azione sorgente. Nella pagina **Modifica azione**, in **Nome azione**, inserisci il nome dell'azione. In **Action provider**, scegli **GitHub (tramite GitHub app)**.

1. Esegui una delle seguenti operazioni:
   + In **Connessione**, se non hai già creato una connessione con il tuo provider, scegli **Connetti a GitHub**. Procedi al passaggio 2: Crea una connessione a GitHub.
   + In **Connessione**, se hai già creato una connessione al tuo provider, scegli la connessione. Procedi al passaggio 3: Salva l'azione di origine per la tua connessione.

### Fase 2: Creare una connessione a GitHub
<a name="connections-github-console-create"></a>

Dopo aver scelto di creare la connessione, viene visualizzata la GitHub pagina **Connetti a**.

![\[Schermata della console che mostra la pagina di GitHub connessione iniziale.\]](http://docs.aws.amazon.com/it_it/codepipeline/latest/userguide/images/github-conn.png)


**Per creare una connessione a GitHub**

1. **Nelle impostazioni di GitHub connessione**, il nome della connessione viene visualizzato in **Nome connessione**. Scegli **Connect a GitHub**. Viene visualizzata la pagina di richiesta di accesso.

1. Scegli **Autorizza AWS connettore per GitHub**. La pagina di connessione visualizza e mostra il campo **GitHub App**.  
![\[Schermata della console che mostra la pagina di GitHub connessione iniziale con il campo GitHub App.\]](http://docs.aws.amazon.com/it_it/codepipeline/latest/userguide/images/github-conn-access-app.png)

1. In **GitHub App**, scegli l'installazione di un'app o scegli **Installa una nuova app** per crearne una.

   È sufficiente installare una sola app per tutte le connessioni a un provider specifico. Se hai già installato il AWS Connector for GitHub app, sceglilo e salta questo passaggio.
**Nota**  
Se desideri creare un [token di accesso utente](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-user-access-token-for-a-github-app), assicurati di aver già installato AWS Connector per GitHub app, quindi lascia vuoto il campo di installazione dell'app. CodeConnections utilizzerà il token di accesso utente per la connessione.

1. Nella GitHub pagina **Install AWS Connector for**, scegli l'account in cui desideri installare l'app.
**Nota**  
Puoi installare l'app solo una volta per ogni GitHub account. Se hai già installato l'app, puoi scegliere **Configure (Configura)** per passare a una pagina di modifica per l'installazione dell'app oppure è possibile utilizzare il pulsante Indietro per tornare alla console.

1. **Nella GitHub pagina **Install AWS Connector per**, lascia le impostazioni predefinite e scegli Installa.**

1. Nella GitHub pagina **Connect to**, l'ID di connessione per la nuova installazione viene visualizzato in **GitHub App**. Scegli **Connetti**.

### Passaggio 3: Salva l'azione GitHub sorgente
<a name="connections-github-console-save"></a>

Utilizza questi passaggi nella pagina **Modifica azione** per salvare l'azione di origine con le informazioni di connessione.

**Per salvare l'azione GitHub sorgente**

1. In **Repository name (Nome repository)**, scegliere il nome del repository di terze parti. 

1. In **Trigger Pipeline** puoi aggiungere trigger se la tua azione è un'azione. CodeConnections Per configurare la configurazione dei trigger della pipeline e, facoltativamente, filtrare con i trigger, vedi maggiori dettagli in. [Aggiungi trigger con tipi di eventi code push o pull request](pipelines-filter.md)

1. In **Output artifact format (Formato artefatto di output)**, occorre scegliere il formato degli artefatti. 
   + **Per memorizzare gli artefatti di output dell' GitHub azione utilizzando il metodo predefinito, scegliete default. CodePipeline ** L'azione accede ai file dal GitHub repository e archivia gli artefatti in un file ZIP nel Pipeline Artifact Store.
   + Per archiviare un file JSON contenente un riferimento URL al repository in modo che le operazioni downstream possano eseguire direttamente comandi Git, scegliere **Full clone (Clone completo)**. Questa opzione può essere utilizzata solo dalle azioni a valle. CodeBuild 

     Se scegli questa opzione, dovrai aggiornare le autorizzazioni per il tuo ruolo di CodeBuild Project Service come mostrato in. [Aggiungi le autorizzazioni per le connessioni a Bitbucket, Enterprise Server o.com CodeBuild GitClone GitHub GitHub GitLab](troubleshooting.md#codebuild-role-connections) Per un tutorial che mostra come usare l'opzione **Full clone**, consulta. [Tutorial: usa il clone completo con una sorgente di GitHub pipeline](tutorials-github-gitclone.md)

1. Scegli **Avanti** nella procedura guidata o **Salva** nella pagina **Modifica azione**.

## Creare una connessione a GitHub (CLI)
<a name="connections-github-cli"></a>

È possibile utilizzare AWS Command Line Interface (AWS CLI) per creare una connessione. 

Per farlo, utilizzare il comando **create-connection**. 

**Importante**  
Per impostazione predefinita, una connessione creata tramite AWS CLI o AWS CloudFormation è in `PENDING` stato. Dopo aver creato una connessione con la CLI o CloudFormation, utilizza la console per modificare la connessione e definirne lo stato. `AVAILABLE`

**Come creare una connessione**

1. Apri un terminale (Linux, macOS o Unix) o prompt dei comandi (Windows). Usa il AWS CLI per eseguire il **create-connection** comando, specificando l'`--provider-type`e `--connection-name` per la tua connessione. In questo esempio, il nome del provider di terze parti è `GitHub` e il nome della connessione specificato è `MyConnection`.

   ```
   aws codestar-connections create-connection --provider-type GitHub --connection-name MyConnection
   ```

   In caso di esito positivo, questo comando restituisce informazioni dell'ARN della connessione simili alle seguenti.

   ```
   {
       "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
   }
   ```

1. Utilizzare la console per completare la connessione. Per ulteriori informazioni, consulta [Aggiornare una connessione in sospeso.](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-update.html) 

1. Per impostazione predefinita, la pipeline rileva le modifiche al codice inviato al repository delle sorgenti di connessione. Per configurare la configurazione del trigger della pipeline per il rilascio manuale o per i tag Git, esegui una delle seguenti operazioni:
   + Per configurare la configurazione del trigger della pipeline in modo che inizi solo con una versione manuale, aggiungi la seguente riga alla configurazione: 

     ```
     "DetectChanges": "false",
     ```
   + Per configurare la configurazione del trigger della pipeline per filtrare con i trigger, vedi maggiori dettagli in. [Aggiungi trigger con tipi di eventi code push o pull request](pipelines-filter.md) Ad esempio, quanto segue si aggiunge al livello di pipeline della definizione JSON della pipeline. In questo esempio, `release-v0` e `release-v1` sono i tag Git da includere ed `release-v2` è il tag Git da escludere.

     ```
     "triggers": [
                 {
                     "providerType": "CodeStarSourceConnection",
                     "gitConfiguration": {
                         "sourceActionName": "Source",
                         "push": [
                             {
                                 "tags": {
                                     "includes": [
                                         "release-v0", "release-v1"
                                     ],
                                     "excludes": [
                                         "release-v2"
                                     ]
                                 }
                             }
                         ]
                     }
                 }
             ]
     ```