

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

# Esempio di versione sorgente con AWS CodeBuild
<a name="sample-source-version"></a>

 In questo esempio viene illustrato come specificare una versione dell'origine utilizzando un formato diverso da un ID commit (detto anche SHA commit). Puoi specificare la versione dell'origine nei seguenti modi: 
+  Per un provider di sorgenti Amazon S3, utilizza l'ID di versione dell'oggetto che rappresenta il file ZIP di input della build. 
+  Per CodeCommit Bitbucket ed GitHub Enterprise Server, utilizza uno dei seguenti: GitHub 
  +  Richiesta pull come riferimento alla richiesta pull (ad esempio `refs/pull/1/head`). 
  +  Branch come nome di filiale. 
  +  ID del commit. 
  +  Etichetta. 
  +  Riferimento e ID di commit. Il riferimento può essere uno dei seguenti:
    +  Un tag (ad esempio `refs/tags/mytagv1.0^{full-commit-SHA}`). 
    +  Un ramo (ad esempio `refs/heads/mydevbranch^{full-commit-SHA}`). 
    +  Una richiesta pull (ad esempio `refs/pull/1/head^{full-commit-SHA}`). 
+  Per GitLab e GitLab Self Managed, utilizza uno dei seguenti: 
  +  Branch come nome del ramo. 
  +  ID del commit. 
  +  Etichetta. 

**Nota**  
 È possibile specificare la versione di una sorgente di pull request solo se il repository è GitHub o GitHub Enterprise Server. 

 Se utilizzi un riferimento e un ID commit per specificare una versione, la fase `DOWNLOAD_SOURCE` della compilazione dura meno è più rapida di quando fornisci solo la versione. Questo perché quando si aggiunge un riferimento, CodeBuild non è necessario scaricare l'intero repository per trovare il commit. 
+ È possibile specificare una versione di origine con solo un ID commit, ad esempio `12345678901234567890123467890123456789`. Se lo fai, CodeBuild devi scaricare l'intero repository per trovare la versione.
+ È possibile specificare una versione di origine con un riferimento e un ID commit in questo formato: `refs/heads/branchname^{full-commit-SHA}` (ad esempio `refs/heads/main^{12345678901234567890123467890123456789}`). Se lo fai, CodeBuild scarica solo il ramo specificato per trovare la versione.

**Nota**  
Per velocizzare la `DOWNLOAD_SOURCE` fase di compilazione, puoi anche impostare la **profondità del clone di Git** su un numero basso. CodeBuild scarica un numero inferiore di versioni del tuo repository.

**Topics**
+ [Specificate una versione GitHub del repository con un ID di commit](sample-source-version-github.md)
+ [Specificate una versione del repository con un riferimento e un ID di commit GitHub](sample-source-version-github-ref.md)

# Specificate una versione GitHub del repository con un ID di commit
<a name="sample-source-version-github"></a>

È possibile specificare una versione di origine con solo un ID commit, ad esempio `12345678901234567890123467890123456789`. Se si esegue questa operazione, è CodeBuild necessario scaricare l'intero repository per trovare la versione.

**Per specificare una versione del GitHub repository con un ID di commit**

1. Apri la AWS CodeBuild console su [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. Creare un progetto di compilazione. Per informazioni, consulta [Creare un progetto di compilazione (console)](create-project.md#create-project-console) e [Esecuzione di una compilazione (console)](run-build-console.md). Lasciare tutte le impostazioni sui valori predefiniti, ad eccezione delle seguenti:
   +  In **Source (Origine)**: 
     +  Per **Source provider**, scegli. **GitHub** Se non sei connesso a GitHub, segui le istruzioni per connetterti. 
     +  In **Repository**, scegliere **Public repository (Repository pubblico)**. 
     +  Nel campo **Repository URL (URL repository)**, inserire **https://github.com/aws/aws-sdk-ruby.git** 
   + In **Environment (Ambiente)**:
     + Per **Environment image (Immagine ambiente)**, scegliere **Managed image (Immagine gestita)**.
     + Per **Operating system (Sistema operativo)**, scegliere **Amazon Linux 2**.
     + In **Runtime(s) (Runtime)**, seleziona **Standard**.
     + Per **Image**, scegliete **aws/codebuild/amazonlinux-x86\$164-standard:4.0**.

1.  Per **Build specifications (Specifiche di compilazione)**, scegliere **Insert build commands (Inserisci comandi di compilazione)** e selezionare **Switch to editor (Passa a editor)**. 

1.  Per **Build commands (Comandi di compilazione)**, sostituire il testo segnaposto con il seguente: 

   ```
   version: 0.2
   
   phases:
     install:
       runtime-versions:
         ruby: 2.6
     build:
       commands:
          - echo $CODEBUILD_RESOLVED_SOURCE_VERSION
   ```

    La sezione `runtime-versions` è obbligatoria quando si utilizza l'immagine standard di Ubuntu 2.0. Qui viene specifficata la versione 2.6 del runtime di Ruby, ma si può utilizzare qualunque runtime. Il comando `echo` visualizza la versione del codice sorgente archiviato nella variabile di ambiente `CODEBUILD_RESOLVED_SOURCE_VERSION`. 

1.  In **Build configuration (Configurazione della compilazione)** accettare le impostazioni predefinite, quindi scegliere **Build configuration (Avvia compilazione)**. 

1.  Per **Source version (Versione origine)**, inserire **046e8b67481d53bdc86c3f6affdd5d1afae6d369**. Questo è il SHA di un commit nel repository `https://github.com/aws/aws-sdk-ruby.git`. 

1.  Selezionare **Start build (Avvia compilazione)**. 

1.  Una volta completata la compilazione, si dovrebbe visualizzare quanto segue: 
   +  Nella scheda **Build logs (Log di compilazione)**, la versione dell'origine del progetto che è stata utilizzata. Ecco un esempio.

     ```
     [Container] Date Time Running command echo $CODEBUILD_RESOLVED_SOURCE_VERSION 
     046e8b67481d53bdc86c3f6affdd5d1afae6d369
      
     [Container] Date Time Phase complete: BUILD State: SUCCEEDED
     ```
   +  Nella scheda **Environment variables (Variabili di ambiente)**, **Resolved source version (Versione di origine risolta** corrisponde all'ID commit utilizzato per creare la compilazione. 
   +  Nella scheda **Phase details (Dettagli di fase)**, la durata della fase `DOWNLOAD_SOURCE`. 

# Specificate una versione del repository con un riferimento e un ID di commit GitHub
<a name="sample-source-version-github-ref"></a>

È possibile specificare una versione di origine con un riferimento e un ID commit in questo formato: `refs/heads/branchname^{full-commit-SHA}` (ad esempio `refs/heads/main^{12345678901234567890123467890123456789}`). In tal caso, CodeBuild scarica solo il ramo specificato per trovare la versione.

**Per specificare una versione del GitHub repository con un riferimento e un ID di commit.**

1. Completa le fasi descritte in [Specificate una versione GitHub del repository con un ID di commit](sample-source-version-github.md).

1.  Dal riquadro di navigazione a sinistra, scegliere **Build projects (Progetti di compilazione)** e selezionare il progetto creato in precedenza. 

1.  Selezionare **Start build (Avvia compilazione)**. 

1.  In **Source version (Versione di origine)**, inserire **refs/heads/main^\$1046e8b67481d53bdc86c3f6affdd5d1afae6d369\$1**. Questo è lo stesso ID commit e un riferimento a un ramo nel formato `refs/heads/branchname^{full-commit-SHA}`. 

1.  Selezionare **Start build (Avvia compilazione)**. 

1. Una volta completata la compilazione, si dovrebbe visualizzare quanto segue: 
   +  Nella scheda **Build logs (Log di compilazione)**, la versione dell'origine del progetto che è stata utilizzata. Ecco un esempio.

     ```
     [Container] Date Time Running command echo $CODEBUILD_RESOLVED_SOURCE_VERSION 
     046e8b67481d53bdc86c3f6affdd5d1afae6d369
      
     [Container] Date Time Phase complete: BUILD State: SUCCEEDED
     ```
   +  Nella scheda **Environment variables (Variabili di ambiente)**, **Resolved source version (Versione di origine risolta** corrisponde all'ID commit utilizzato per creare la compilazione. 
   +  Nella scheda **Phase details (Dettagli di fase)**, la durata della fase `DOWNLOAD_SOURCE` deve essere più breve di quella in cui si è utilizzato solo l'ID commit per specificare la versione dell'origine.