Creare un progetto di compilazione (console) - AWS CodeBuild

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

Creare un progetto di compilazione (console)

Apri la AWS CodeBuild console all'indirizzo https://console.aws.amazon.com/codesuite/codebuild/home.

Se viene visualizzata una pagina di CodeBuild informazioni, scegli Crea progetto di compilazione. Altrimenti, nel riquadro di navigazione, espandi Crea, scegli Crea progetti, quindi scegli Crea progetto di compilazione.

Scegliere Create build project (Crea progetto di compilazione).

Compila le seguenti sezioni. Una volta completato, scegli Crea progetto di compilazione nella parte inferiore della pagina.

Configurazione del progetto

Project name (Nome progetto)

Inserisci un nome per questo progetto di compilazione. I nomi dei progetti di build devono essere univoci per ogni AWS account.

Descrizione

Inserisci una descrizione opzionale del progetto di compilazione per aiutare gli altri utenti a capire a cosa serve questo progetto.

Costruisci un badge

(Facoltativo) Seleziona Abilita il badge di costruzione per rendere visibile e incorporabile lo stato di costruzione del progetto. Per ulteriori informazioni, consulta Creazione di esempi di badge.

Nota

Il badge Build non si applica se il tuo provider di origine è Amazon S3.

Abilita il limite di compilazione simultanea

(Facoltativo) Se desideri limitare il numero di build simultanee per questo progetto, esegui i seguenti passaggi:

  1. Seleziona Limita il numero di build simultanee che questo progetto può avviare.

  2. In Limite di build simultanee, inserisci il numero massimo di build simultanee consentite per questo progetto. Questo limite non può essere superiore al limite di creazione simultanea impostato per l'account. Se si tenta di inserire un numero superiore al limite dell'account, viene visualizzato un messaggio di errore.

Le nuove compilazione vengono avviate solo se il numero corrente di compilazioni è minore o uguale a questo limite. Se il conteggio delle compilazioni correnti soddisfa questo limite, le nuove compilazioni vengono limitate e non vengono eseguite.

Informazioni aggiuntive

(Facoltativo) Per i tag, inserisci il nome e il valore di tutti i tag che desideri vengano utilizzati AWS dai servizi di supporto. Utilizzare Add row (Aggiungi riga) per aggiungere un tag. Puoi aggiungere fino a 50 tag.

Origine

Fornitore di origine

Scegli il tipo di provider del codice sorgente. Utilizza i seguenti elenchi per effettuare le selezioni appropriate per il tuo provider di origine:

Nota

CodeBuild non supporta Bitbucket Server.

Amazon S3
Bucket

Scegli il nome del bucket di input che contiene il codice sorgente.

Chiave oggetto S3 o cartella S3

Inserisci il nome del file ZIP o il percorso della cartella che contiene il codice sorgente. Inserisci una barra (/) per scaricare tutti i contenuti del bucket S3.

Versione sorgente

Immettete l'ID di versione dell'oggetto che rappresenta la build del file di input. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild.

CodeCommit
Repository

Scegli il repository che desideri utilizzare.

Tipo di riferimento

Scegli Branch, Git tag o Commit ID per specificare la versione del codice sorgente. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild.

Nota

Ti consigliamo di scegliere nomi di branch Git che non assomiglino a ID di commit, come 811dd1ba1aba14473856cee38308caed7190c0d o5392f7. Questo ti aiuta a evitare le collisioni tra i checkout di Git e i commit effettivi.

Profondità del clone Git

Scegli di creare un clone poco profondo con una cronologia troncata al numero di commit specificato. Se si desidera un clone completo, selezionare Full (Completo).

Sottomoduli Git

Seleziona Use Git submodules (Utilizza i sottomoduli Git) se vuoi includere i sottomoduli Git nel tuo archivio.

Bitbucket
Repository

Scegli Connetti tramite OAuth o Connetti con una password dell'app Bitbucket e segui le istruzioni per connetterti (o riconnetterti) a Bitbucket.

Scegli un archivio pubblico o un archivio nel tuo account.

Versione sorgente

Inserisci un branch, un ID di commit, un tag o un riferimento e un ID di commit. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild

Nota

Ti consigliamo di scegliere nomi di branch Git che non assomiglino a ID di commit, come 811dd1ba1aba14473856cee38308caed7190c0d o5392f7. Questo ti aiuta a evitare le collisioni tra i checkout di Git e i commit effettivi.

Profondità del clone Git

Seleziona Git clone depth per creare un clone superficiale con una cronologia troncata al numero specifico di commit. Se si desidera un clone completo, selezionare Full (Completo).

Sottomoduli Git

Seleziona Use Git submodules (Utilizza i sottomoduli Git) se vuoi includere i sottomoduli Git nel tuo archivio.

Stato della build

Seleziona Segnala lo stato della build al fornitore di origine all'inizio e alla fine delle build se desideri che lo stato dell'inizio e del completamento della build venga segnalato al tuo fornitore di origine.

Per poter segnalare lo stato della build al provider di origine, l'utente associato al provider di origine deve avere accesso in scrittura al repository. Se l'utente non dispone dell'accesso in scrittura, lo stato della build non può essere aggiornato. Per ulteriori informazioni, consulta Accesso al provider di origine.

Per il contesto Status, inserisci il valore da utilizzare per il name parametro nello stato del commit di Bitbucket. Per ulteriori informazioni, consulta compilazione nella documentazione di riferimento dell'API Bitbucket.

Per Target URL, inserisci il valore da utilizzare per il url parametro nello stato del commit di Bitbucket. Per ulteriori informazioni, consulta compilazione nella documentazione di riferimento dell'API Bitbucket.

Lo stato di una build attivata da un webhook viene sempre segnalato al provider di origine. Per far sì che lo stato di una build avviata dalla console o di una chiamata API venga segnalato al provider di origine, è necessario selezionare questa impostazione.

Se le build del progetto vengono attivate da un webhook, è necessario inviare un nuovo commit al repository affinché una modifica a questa impostazione abbia effetto.

Negli eventi del webhook di origine primaria, seleziona Ricostruisci ogni volta che viene inviata una modifica al codice in questo repository se desideri creare il codice sorgente ogni volta che viene inviata una modifica CodeBuild al codice in questo repository. Per ulteriori informazioni sui webhook e sui gruppi di filtri, consulta. Eventi webhook Bitbucket

GitHub
Repository

Scegli Connetti tramite OAuth o Connetti con un token di accesso GitHub personale e segui le istruzioni per connetterti (o riconnetterti) GitHub e autorizzare l'accesso a. AWS CodeBuild

Scegli un archivio pubblico o un archivio nel tuo account.

Versione sorgente

Inserisci un branch, un ID di commit, un tag o un riferimento e un ID di commit. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild

Nota

Ti consigliamo di scegliere nomi di branch Git che non assomiglino a ID di commit, come 811dd1ba1aba14473856cee38308caed7190c0d o5392f7. Questo ti aiuta a evitare le collisioni tra i checkout di Git e i commit effettivi.

Profondità del clone Git

Seleziona Git clone depth per creare un clone superficiale con una cronologia troncata al numero specifico di commit. Se si desidera un clone completo, selezionare Full (Completo).

Sottomoduli Git

Seleziona Use Git submodules (Utilizza i sottomoduli Git) se vuoi includere i sottomoduli Git nel tuo archivio.

Stato della build

Seleziona Segnala lo stato della build al fornitore di origine all'inizio e alla fine delle build se desideri che lo stato dell'inizio e del completamento della build venga segnalato al tuo fornitore di origine.

Per poter segnalare lo stato della build al provider di origine, l'utente associato al provider di origine deve avere accesso in scrittura al repository. Se l'utente non dispone dell'accesso in scrittura, lo stato della build non può essere aggiornato. Per ulteriori informazioni, consulta Accesso al provider di origine.

Per il contesto Status, immettete il valore da utilizzare per il context parametro nel GitHub commit status. Per ulteriori informazioni, consulta Creare uno stato di commit nella guida per GitHub sviluppatori.

Per Target URL, inserisci il valore da utilizzare per il target_url parametro nello stato del GitHub commit. Per ulteriori informazioni, consulta Creare uno stato di commit nella guida per GitHub sviluppatori.

Lo stato di una build attivata da un webhook viene sempre segnalato al provider di origine. Per far sì che lo stato di una build avviata dalla console o di una chiamata API venga segnalato al provider di origine, è necessario selezionare questa impostazione.

Se le build del progetto vengono attivate da un webhook, è necessario inviare un nuovo commit al repository affinché una modifica a questa impostazione abbia effetto.

Negli eventi del webhook di origine primaria, seleziona Ricostruisci ogni volta che viene inviata una modifica al codice in questo repository se desideri creare il codice sorgente ogni volta che viene inviata una modifica CodeBuild al codice in questo repository. Per ulteriori informazioni sui webhook e sui gruppi di filtri, consulta. GitHub eventi webhook

GitHub Enterprise Server
GitHub Token di accesso personale aziendale

GitHub Esempio di Enterprise ServerPer informazioni su come copiare un token di accesso personale negli appunti, vedi. Incolla il token nel campo testo, quindi seleziona Save Token (Salva token).

Nota

Devi entrare e salvare il token per l'accesso personale solo una volta. CodeBuild utilizza questo token in tutti i progetti futuri.

Versione sorgente

Inserisci una pull request, un branch, un ID di commit, un tag o un riferimento e un ID di commit. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild.

Nota

Ti consigliamo di scegliere nomi di branch Git che non assomiglino a ID di commit, come 811dd1ba1aba14473856cee38308caed7190c0d o5392f7. Questo ti aiuta a evitare le collisioni tra i checkout di Git e i commit effettivi.

Profondità del clone Git

Seleziona Git clone depth per creare un clone superficiale con una cronologia troncata al numero specifico di commit. Se si desidera un clone completo, selezionare Full (Completo).

Sottomoduli Git

Seleziona Use Git submodules (Utilizza i sottomoduli Git) se vuoi includere i sottomoduli Git nel tuo archivio.

Stato della build

Seleziona Segnala lo stato della build al fornitore di origine all'inizio e alla fine delle build se desideri che lo stato dell'inizio e del completamento della build venga segnalato al tuo fornitore di origine.

Per poter segnalare lo stato della build al provider di origine, l'utente associato al provider di origine deve avere accesso in scrittura al repository. Se l'utente non dispone dell'accesso in scrittura, lo stato della build non può essere aggiornato. Per ulteriori informazioni, consulta Accesso al provider di origine.

Per il contesto Status, immettete il valore da utilizzare per il context parametro nel GitHub commit status. Per ulteriori informazioni, consulta Creare uno stato di commit nella guida per GitHub sviluppatori.

Per Target URL, inserisci il valore da utilizzare per il target_url parametro nello stato del GitHub commit. Per ulteriori informazioni, consulta Creare uno stato di commit nella guida per GitHub sviluppatori.

Lo stato di una build attivata da un webhook viene sempre segnalato al provider di origine. Per far sì che lo stato di una build avviata dalla console o di una chiamata API venga segnalato al provider di origine, è necessario selezionare questa impostazione.

Se le build del progetto vengono attivate da un webhook, è necessario inviare un nuovo commit al repository affinché una modifica a questa impostazione abbia effetto.

SSL non sicuro

Seleziona Abilita SSL non sicuro per ignorare gli avvisi SSL durante la connessione al repository del tuo progetto Enterprise. GitHub

In Primary source webhook events, seleziona Ricostruisci ogni volta che viene inviata una modifica al codice in questo repository se desideri creare il codice sorgente ogni volta che viene inserita una modifica CodeBuild al codice in questo repository. Per ulteriori informazioni sui webhook e sui gruppi di filtri, consulta. GitHub eventi webhook

GitLab
Connessione

Collega il tuo GitLab account utilizzando AWS CodeConnections e usa la connessione per associare il tuo repository di terze parti come fonte per il tuo progetto di build.

Scegli Connessione predefinita o Connessione personalizzata.

La connessione predefinita applica una GitLab connessione predefinita a tutti i progetti. La connessione personalizzata applica una GitLab connessione personalizzata che sostituisce le impostazioni predefinite dell'account.

Connessione predefinita

Il nome della connessione predefinita associata al tuo account.

Se non hai ancora creato una connessione al tuo provider, consulta Crea una connessione a GitLab (console) le istruzioni.

Connessione personalizzata

Scegli il nome della connessione personalizzata che desideri utilizzare.

Se non hai ancora creato una connessione con il tuo provider, consulta Crea una connessione a GitLab (console) le istruzioni.

Repository

Scegli il repository che desideri utilizzare.

Versione sorgente

Inserisci un ID di pull request, un branch, un ID di commit, un tag o un riferimento e un ID di commit. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild.

Nota

Ti consigliamo di scegliere nomi di branch Git che non assomiglino a ID di commit, come 811dd1ba1aba14473856cee38308caed7190c0d o5392f7. Questo ti aiuta a evitare le collisioni tra i checkout di Git e i commit effettivi.

Profondità del clone Git

Seleziona Git clone depth per creare un clone superficiale con una cronologia troncata al numero specifico di commit. Se si desidera un clone completo, selezionare Full (Completo).

Stato della build

Seleziona Segnala lo stato della compilazione al fornitore di origine all'inizio e alla fine delle build se desideri che lo stato dell'inizio e del completamento della build venga segnalato al tuo fornitore di origine.

Per poter segnalare lo stato della build al provider di origine, l'utente associato al provider di origine deve avere accesso in scrittura al repository. Se l'utente non dispone dell'accesso in scrittura, lo stato della build non può essere aggiornato. Per ulteriori informazioni, consulta Accesso al provider di origine.

GitLab Self Managed
Connessione

Collega il tuo GitLab account utilizzando AWS CodeConnections e usa la connessione per associare il tuo repository di terze parti come fonte per il tuo progetto di build.

Scegli Connessione predefinita o Connessione personalizzata.

La connessione predefinita applica una connessione GitLab Self Managed predefinita a tutti i progetti. La connessione personalizzata applica una connessione GitLab autogestita personalizzata che sostituisce le impostazioni predefinite dell'account.

Connessione predefinita

Il nome della connessione predefinita associata al tuo account.

Se non hai ancora creato una connessione al tuo provider, consulta Creare una connessione a GitLab gestione autonoma nella Guida per l'utente della console Developer Tools per le istruzioni.

Connessione personalizzata

Scegli il nome della connessione personalizzata che desideri utilizzare.

Se non hai già creato una connessione con il tuo provider, consulta Create a connection to GitLab self-managed nella Guida per l'utente della console Developer Tools per le istruzioni.

Repository

Scegli il repository che desideri utilizzare.

Versione sorgente

Inserisci un ID di pull request, un branch, un ID di commit, un tag o un riferimento e un ID di commit. Per ulteriori informazioni, consulta Esempio di versione sorgente con AWS CodeBuild.

Nota

Ti consigliamo di scegliere nomi di branch Git che non assomiglino a ID di commit, come 811dd1ba1aba14473856cee38308caed7190c0d o5392f7. Questo ti aiuta a evitare le collisioni tra i checkout di Git e i commit effettivi.

Profondità del clone Git

Seleziona Git clone depth per creare un clone superficiale con una cronologia troncata al numero specifico di commit. Se si desidera un clone completo, selezionare Full (Completo).

Stato della build

Seleziona Segnala lo stato della compilazione al fornitore di origine all'inizio e alla fine delle build se desideri che lo stato dell'inizio e del completamento della build venga segnalato al tuo fornitore di origine.

Per poter segnalare lo stato della build al provider di origine, l'utente associato al provider di origine deve avere accesso in scrittura al repository. Se l'utente non dispone dell'accesso in scrittura, lo stato della build non può essere aggiornato. Per ulteriori informazioni, consulta Accesso al provider di origine.

Ambiente

Modello di provisioning

Esegui una di queste operazioni:

  • Per utilizzare flotte on-demand gestite da AWS CodeBuild, scegli On-demand. Con le flotte on-demand, CodeBuild fornisce elaborazione per le tue build. Le macchine vengono distrutte al termine della costruzione. Le flotte on-demand sono completamente gestite e includono funzionalità di scalabilità automatica per gestire i picchi di domanda.

  • Per utilizzare flotte a capacità riservata gestite da AWS CodeBuild, scegli Capacità riservata, quindi seleziona il nome di una flotta. Con le flotte a capacità riservata, puoi configurare un set di istanze dedicate per il tuo ambiente di costruzione. Queste macchine rimangono inattive, pronte per l'elaborazione immediata di build o test e riducono la durata di costruzione. Con flotte a capacità riservata, le macchine sono sempre in funzione e continueranno a sostenere costi finché verranno rifornite.

Per informazioni, consulta Utilizzo della capacità riservata in AWS CodeBuild.

Immagine dell'ambiente

Esegui una di queste operazioni:

  • Per utilizzare un'immagine Docker gestita da AWS CodeBuild, scegli Immagine gestita, quindi effettua le selezioni tra Sistema operativo, Runtime (s), Immagine e Versione dell'immagine. Se disponibile, eseguire una selezione da Environment type (Tipo ambiente).

  • Per utilizzare un'altra immagine Docker, selezionare Custom image (Immagine personalizzata). Per il tipo di ambiente, scegli ARM, Linux, Linux GPU o Windows. Se si sceglie Other registry (Altro registro), fin External registry URL (URL registro esterno), inserire il nome e il tag dell'immagine Docker in Docker Hub, utilizzando il formato docker repository/docker image name. Se scegli Amazon ECR, utilizza il repository Amazon ECR e l'immagine Amazon ECR per scegliere l'immagine Docker nel tuo account. AWS

  • Per utilizzare un'immagine Docker privata, scegli Immagine personalizzata. Per il tipo di ambiente, scegli ARM, Linux, Linux GPU o Windows. Per Image registry (Registro immagine), selezionare Other registry (Altro registro), quindi immettere l'ARN delle credenziali per l'immagine Docker privata. Le credenziali devono essere create da Secrets Manager. Per ulteriori informazioni, consulta Che cos'è AWS Secrets Manager? nella Guida per l'utente di AWS Secrets Manager .

Nota

CodeBuild sostituisce le immagini Docker ENTRYPOINT personalizzate.

Calcolo

Esegui una di queste operazioni:

  • Per usare il calcolo EC2, scegli EC2. L'elaborazione EC2 offre una flessibilità ottimizzata durante le operazioni.

  • Per usare l'elaborazione Lambda, scegli Lambda. L'elaborazione Lambda offre velocità di avvio ottimizzate per le tue build. Lambda supporta build più veloci grazie a una minore latenza di avvio. Lambda inoltre si ridimensiona automaticamente, quindi le build non devono attendere in coda per essere eseguite. Per informazioni, consulta Lavorare con il AWS Lambda calcolo in AWS CodeBuild.

Ruolo di servizio

Esegui una di queste operazioni:

  • Se non disponi di un ruolo CodeBuild di servizio, scegli Nuovo ruolo di servizio. In Nome ruolo, inserisci un nome per il nuovo ruolo.

  • Se hai un ruolo CodeBuild di servizio, scegli Ruolo di servizio esistente. In Role ARN, scegli il ruolo di servizio.

Nota

Quando usi la console per creare un progetto di build, puoi creare contemporaneamente un ruolo di CodeBuild servizio. Per impostazione predefinita, il ruolo funziona solo con tale progetto di compilazione. Se si utilizza la console per associare questo ruolo del servizio con un altro progetto di compilazione, il ruolo viene aggiornato per funzionare con l'altro progetto. Un ruolo del servizio può funzionare con un massimo di 10 progetti di compilazione.

Configurazione aggiuntiva
Timeout

Specificate un valore, compreso tra 5 minuti e 8 ore, dopo il quale CodeBuild interrompe la compilazione se non è completa. Se hours (ore) e minutes (minuti) vengono lasciati vuoti, viene utilizzato il valore predefinito di 60 minuti.

Privilegiato

(Facoltativo) Seleziona Abilita questo flag se desideri creare immagini Docker o desideri che le tue build ottengano privilegi elevati solo se prevedi di utilizzare questo progetto di compilazione per creare immagini Docker. In caso contrario, tutte le compilazioni associate che tentano di interagire con il daemon Docker avranno esito negativo. È inoltre necessario avviare il daemon Docker in modo che le compilazioni possano interagire con esso. Un modo per fare ciò è inizializzare il daemon Docker nella fase install delle specifiche di compilazione eseguendo i comandi di compilazione seguenti. Non eseguire questi comandi se hai scelto un'immagine dell'ambiente di compilazione fornita dal supporto Docker. CodeBuild

Nota

Per impostazione predefinita, il daemon Docker è abilitato per le build non VPC. Se desideri utilizzare i contenitori Docker per le build VPC, consulta Runtime Privilege e Linux Capabilities sul sito Web di Docker Docs e abilita la modalità privilegiata. Inoltre, Windows non supporta la modalità privilegiata.

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://127.0.0.1:2375 --storage-driver=overlay2 & - timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
VPC

Se vuoi CodeBuild lavorare con il tuo VPC:

  • Per VPC, scegli l'ID VPC che utilizza. CodeBuild

  • Per le sottoreti VPC, scegli le sottoreti che includono le risorse che utilizza. CodeBuild

  • Per i gruppi di sicurezza VPC, scegli i gruppi di sicurezza da CodeBuild utilizzare per consentire l'accesso alle risorse nei VPC.

Per ulteriori informazioni, consulta Utilizzo AWS CodeBuild con Amazon Virtual Private Cloud.

Calcolo

Scegli una delle opzioni disponibili.

Variabili di ambiente

Inserisci il nome e il valore, quindi scegli il tipo di ogni variabile di ambiente da utilizzare per le build.

Nota

CodeBuild imposta automaticamente la variabile di ambiente per la tua AWS regione. È necessario impostare le seguenti variabili di ambiente se non le hai aggiunte al tuo buildspec.yml:

  • AWS_ACCOUNT_ID

  • IMAGE_REPO_NAME

  • IMAGE_TAG

La console e AWS CLI gli utenti possono visualizzare le variabili di ambiente. Se la visibilità della variabile di ambiente non rappresenta un problema, configurare i campi Name (Nome) e Value (Valore), quindi impostare Type (Tipo) su Plaintext (Testo normale).

Ti consigliamo di memorizzare una variabile di ambiente con un valore sensibile, come un ID di chiave di AWS accesso, una chiave di accesso AWS segreta o una password come parametro in Amazon EC2 Systems Manager Parameter Store AWS Secrets Manager o.

Se utilizzi Amazon EC2 Systems Manager Parameter Store, per Tipo scegli Parameter. Per Nome, inserisci un identificativo a cui CodeBuild fare riferimento. Per Value, inserisci il nome del parametro memorizzato in Amazon EC2 Systems Manager Parameter Store. Utilizzando un parametro esemplificativo denominato /CodeBuild/dockerLoginPassword, per Type (Tipo) selezionare Parameter (Parametro). Per Nome, immetti LOGIN_PASSWORD. In Valore, specifica /CodeBuild/dockerLoginPassword.

Importante

Se utilizzi Amazon EC2 Systems Manager Parameter Store, ti consigliamo di archiviare i parametri con nomi di parametri che iniziano /CodeBuild/ con (ad esempio/CodeBuild/dockerLoginPassword,). Puoi utilizzare la CodeBuild console per creare un parametro in Amazon EC2 Systems Manager. Selezionare Create a parameter (Crea un parametro), quindi seguire le istruzioni nella finestra di dialogo. (In quella finestra di dialogo, per la chiave KMS, puoi specificare l'ARN di AWS KMS una chiave nel tuo account. Amazon EC2 Systems Manager utilizza questa chiave per crittografare il valore del parametro durante l'archiviazione e decrittografarlo durante il recupero.) Se usi la CodeBuild console per creare un parametro, la console avvia il nome del parametro con /CodeBuild/ il momento in cui viene memorizzato. Per ulteriori informazioni, consulta la procedura dettagliata della console di Systems Manager Parameter Store e Systems Manager Parameter Store nella Guida per l'utente di Amazon EC2 Systems Manager.

Se il progetto di compilazione si riferisce a parametri archiviati in Amazon EC2 Systems Manager Parameter Store, il ruolo di servizio del progetto di compilazione deve consentire ssm:GetParameters l'azione. Se in precedenza hai scelto Nuovo ruolo di servizio, CodeBuild include questa azione nel ruolo di servizio predefinito per il tuo progetto di build. Tuttavia, se invece hai scelto Existing service role (Ruolo del servizio esistente), devi includere questa operazione al ruolo del servizio separatamente.

Se il tuo progetto di build si riferisce a parametri archiviati in Amazon EC2 Systems Manager Parameter Store con nomi di parametri che non iniziano /CodeBuild/ con e hai scelto Nuovo ruolo di servizio, devi aggiornare quel ruolo di servizio per consentire l'accesso ai nomi dei parametri che non iniziano /CodeBuild/ con. Ciò dipende dal fatto che tale ruolo consente l'accesso solo a nomi di parametro che iniziano con /CodeBuild/.

Se scegli Nuovo ruolo di servizio, il ruolo di servizio include l'autorizzazione a decrittografare tutti i parametri nello spazio dei /CodeBuild/ nomi in Amazon EC2 Systems Manager Parameter Store.

Le variabili di ambiente impostate sostituiscono quelle esistenti. Ad esempio, se l'immagine Docker contiene già una variabile di ambiente denominata MY_VAR con un valore di my_value, e si imposta una variabile di ambiente denominata MY_VAR con un valore di other_value, il valore my_value viene sostituito da other_value. Allo stesso modo, se l'immagine Docker contiene già una variabile di ambiente denominata PATH con un valore di /usr/local/sbin:/usr/local/bin, e si imposta una variabile di ambiente denominata PATH con un valore di $PATH:/usr/share/ant/bin, il valore di /usr/local/sbin:/usr/local/bin viene sostituito dal valore letterale $PATH:/usr/share/ant/bin.

Non impostare variabili di ambiente con nomi che iniziano con CODEBUILD_. Questo prefisso è riservato per l'uso interno .

Se una variabile di ambiente con lo stesso nome viene definita in più luoghi, il valore viene determinato come segue:

  • Il valore della chiamata all'operazione di inizio della compilazione ha la massima priorità.

  • Il valore della definizione del progetto di compilazione è il seguente in ordine di priorità.

  • Il valore della dichiarazione buildspec ha la minima priorità.

Se usi Secrets Manager, per Tipo, scegli Secrets Manager. Per Nome, inserite un identificatore CodeBuild a cui fare riferimento. Per Valore, immettere un reference-key utilizzando il modello secret-id:json-key:version-stage:version-id. Per informazioni, consulta Secrets Manager reference-key in the buildspec file.

Importante

Se utilizzi Secrets Manager, ti consigliamo di archiviare i segreti con nomi che iniziano con /CodeBuild/ (ad esempio,/CodeBuild/dockerLoginPassword). Per ulteriori informazioni, consulta Che cos'è AWS Secrets Manager? nella Guida per l'utente di AWS Secrets Manager .

Se il tuo progetto di build fa riferimento a segreti archiviati in Secrets Manager, il ruolo di servizio del progetto di build deve consentire l'secretsmanager:GetSecretValueazione. Se in precedenza hai scelto Nuovo ruolo di servizio, CodeBuild include questa azione nel ruolo di servizio predefinito per il tuo progetto di build. Tuttavia, se invece hai scelto Existing service role (Ruolo del servizio esistente), devi includere questa operazione al ruolo del servizio separatamente.

Se il tuo progetto di build fa riferimento a segreti archiviati in Secrets Manager con nomi segreti che non iniziano con /CodeBuild/ e hai scelto Nuovo ruolo di servizio, devi aggiornare il ruolo di servizio per consentire l'accesso ai nomi segreti che non iniziano con/CodeBuild/. Questo perché il ruolo di servizio consente l'accesso solo ai nomi segreti che iniziano con/CodeBuild/.

Se scegli Nuovo ruolo di servizio, il ruolo di servizio include l'autorizzazione a decrittografare tutti i segreti nello spazio dei /CodeBuild/ nomi in Secrets Manager.

Buildspec

Specifiche di costruzione

Esegui una di queste operazioni:

  • Se il codice sorgente include un file di specifiche di compilazione, selezionare Use a buildspec file (Utilizza un file buildspec). Per impostazione predefinita, CodeBuild cerca un file denominato buildspec.yml nella directory principale del codice sorgente. Se il file buildspec utilizza un nome o una posizione diversi, inserisci il percorso dalla radice di origine in Buildspec name (ad esempio, o. buildspec-two.yml configuration/buildspec.yml Se il file buildspec si trova in un bucket S3, deve trovarsi nella stessa regione del progetto di build. AWS Specificate il file buildspec utilizzando il relativo ARN (ad esempio,). arn:aws:s3:::<my-codebuild-sample2>/buildspec.yml

  • Se il codice sorgente non include un file di specifiche di compilazione o se desideri eseguire comandi di compilazione diversi da quelli specificati per la fase build del file buildspec.yml nella directory radice del codice sorgente, scegli Insert build commands (Inserisci comandi di compilazione). Per Build commands (Comandi di compilazione), immetti i comandi che desideri eseguire nella fase build. In caso di più comandi, separa ogni comando con && (ad esempio mvn test && mvn package). Per eseguire comandi in altre fasi, o se disponi di un lungo elenco di comandi per la build fase, aggiungi un buildspec.yml file alla directory principale del codice sorgente, aggiungi i comandi al file e quindi scegli Usa il buildspec.yml nella directory principale del codice sorgente.

Per ulteriori informazioni, consulta Riferimento per buildspec.

Configurazione Batch

È possibile eseguire un gruppo di build come singola operazione. Per ulteriori informazioni, consulta Batch si integra AWS CodeBuild.

Definire la configurazione in batch

Seleziona questa opzione per consentire le compilazioni in batch in questo progetto.

Ruolo del servizio Batch

Fornisce il ruolo di servizio per le build in batch.

Seleziona una delle seguenti opzioni:

  • Se non disponi di un ruolo di servizio batch, scegli Nuovo ruolo di servizio. In Ruolo di servizio, inserisci un nome per il nuovo ruolo.

  • Se disponi di un ruolo di servizio batch, scegli Ruolo di servizio esistente. In Ruolo di servizio, scegli il ruolo di servizio.

Le build batch introducono un nuovo ruolo di sicurezza nella configurazione batch. Questo nuovo ruolo è obbligatorio in quanto è CodeBuild necessario poter richiamare StartBuildStopBuild, e RetryBuild le azioni per conto dell'utente per eseguire le build come parte di un batch. I clienti devono utilizzare un nuovo ruolo e non lo stesso ruolo utilizzato nella build, per due motivi:

  • L'assegnazione del ruolo StartBuild di build e RetryBuild delle autorizzazioni consentirebbe a una singola build di avviare più build tramite buildspec. StopBuild

  • CodeBuild le build in batch forniscono restrizioni che limitano il numero di build e i tipi di calcolo che possono essere utilizzati per le build del batch. Se il ruolo di build dispone di queste autorizzazioni, è possibile che le build stesse possano aggirare queste restrizioni.

Tipi di calcolo consentiti per batch

Seleziona i tipi di calcolo consentiti per il batch. Seleziona tutte le risposte pertinenti.

Numero massimo di build consentite in batch

Immettere il numero massimo di build consentite nel batch. Se un batch supera questo limite, il batch avrà esito negativo.

Timeout del batch

Immettere il periodo di tempo massimo per il completamento della creazione del batch.

Combina artefatti

Seleziona Combina tutti gli artefatti del batch in un'unica posizione per combinare tutti gli artefatti del batch in un'unica posizione.

Modalità report Batch

Seleziona la modalità di report sullo stato della build desiderata per le compilazioni in batch.

Nota

Questo campo è disponibile solo quando l'origine del progetto è Bitbucket o GitHub Enterprise e in Origine è selezionato Segnala lo stato della build al fornitore di origine quando le build iniziano e finiscono. GitHub

Building aggregate

Seleziona questa opzione per combinare gli stati di tutte le build del batch in un unico rapporto sullo stato.

Building individuali

Seleziona questa opzione per far sì che gli stati di compilazione di tutte le build del batch vengano riportati separatamente.

Artifacts

Type

Esegui una di queste operazioni:

  • Se non si desidera creare alcun artefatto di output di compilazione, scegliere No artifacts (Nessun artefatto). Questa operazione potrebbe essere utile se esegui solo test di compilazione o desideri inviare un'immagine Docker a un repository Amazon ECR.

  • Per archiviare l'output della build in un bucket S3, scegli Amazon S3, quindi procedi come segue:

    • Se desideri utilizzare il tuo nome di progetto per la cartella o il file ZIP di output di compilazione, lascia vuoto il campo Name (Nome). In caso contrario, digitare il nome. Se desideri eseguire l'output di un file ZIP e vuoi che il file ZIP abbia un'estensione di file, assicurati di includerla dopo il nome del file ZIP.

    • Selezionare Enable semantic versioning (Abilita funzione Versioni multiple semantica) se si desidera che un nome specificato nel file buildspec sostituisca qualsiasi nome specificato nella console. Il nome del file di specifiche di compilazione viene calcolato in fase di compilazione e utilizza il linguaggio di comando Shell. Ad esempio, è possibile aggiungere una data e un'ora al nome dell'artefatto in modo che sia sempre univoco. I nomi di artefatto univoci impediscono che gli artefatti vengano sovrascritti. Per ulteriori informazioni, consulta Sintassi buildspec.

    • Per Bucket name (Nome bucket) selezionare il nome del bucket di output.

    • Se hai scelto Insert build commands (Inserisci comandi di compilazione) in una fase precedente di questa procedura, quindi per Output files (File di output), immetti le posizioni dei file di compilazione che desideri inserire nella cartella o nel file ZIP dell'output di compilazione. Per più posizioni, separarne ognuna con una virgola (per esempio, appspec.yml, target/my-app.jar). Per ulteriori informazioni, consultare la descrizione di files in Sintassi buildspec.

    • Se desideri crittografare gli artefatti di compilazione, seleziona Remove artifacts encryption (Rimuovi crittografia artefatti).

Per ogni insieme secondario di artefatti desiderato:

  1. Per Artifact identifier (Identificatore di artefatto), inserire un valore inferiore a 128 caratteri e che contiene solo caratteri alfanumerici e trattini bassi.

  2. Scegliere Add artifact (Aggiungi artefatto).

  3. Seguire le fasi precedenti configurare gli artefatti secondari.

  4. Selezionare Save artifact (Salva elemento).

Configurazione aggiuntiva
Chiave di crittografia

(Facoltativo) Scegliere una delle seguenti operazioni:

  • Per utilizzare la chiave di crittografia Chiave gestita da AWS per Amazon S3 nel tuo account per crittografare gli artefatti di output della build, lascia vuota la chiave di crittografia. Questa è l'impostazione predefinita.

  • Per utilizzare una chiave gestita dal cliente per crittografare gli artefatti di output della build, in Chiave di crittografia, inserisci l'ARN della chiave KMS. Utilizzare il formato arn:aws:kms:region-ID:account-ID:key/key-ID.

Tipo di cache

In Cache type (Tipo di cache), procedere in uno dei modi seguenti:

  • Se non si desidera utilizzare una cache, scegliere No cache (Nessuna cache).

  • Se desideri utilizzare una cache Amazon S3, scegli Amazon S3 e procedi come segue:

    • Per Bucket, selezionare il nome del bucket S3 in cui è archiviata la cache.

    • (Facoltativo) Per il prefisso del percorso della cache, inserisci un prefisso del percorso Amazon S3. Il valore Cache path prefix (Prefisso percorso cache) è simile a un nome di directory. Consente di archiviare la cache sotto la stessa directory in un bucket.

      Importante

      Non aggiungere una barra finale (/) alla fine del prefisso del percorso.

  • Se si desidera utilizzare una cache locale, selezionare Local (Locale), quindi scegliere una o più modalità cache locali.

    Nota

    La modalità Cache di livello Docker è disponibile solo per Linux. Se la scegli, il progetto deve essere eseguito in modalità privilegiata.

L'utilizzo di una cache consente di risparmiare tempo di compilazione perché alcune parti riutilizzabili dell'ambiente di compilazione vengono memorizzate nella cache e utilizzate in compilazioni diverse. Per informazioni su come specificare una cache nel file di specifiche di compilazione, consulta Sintassi buildspec. Per ulteriori informazioni sul caching, consulta Caching delle compilazioni in AWS CodeBuild.

Log

Scegli i log che desideri creare. Puoi creare Amazon CloudWatch Logs, Amazon S3 log o entrambi.

CloudWatch

Se desideri i log di Amazon CloudWatch Logs:

CloudWatch registri

Seleziona i CloudWatch registri.

Group name (Nome gruppo)

Inserisci il nome del tuo gruppo di CloudWatch log Amazon Logs.

Nome dello stream

Inserisci il nome del tuo flusso di CloudWatch log di Amazon Logs.

S3

Se desideri i log di Amazon S3:

Registri S3

Selezionare S3 logs (Log S3).

Bucket

Scegli il nome del bucket S3 per i tuoi log.

Prefisso del percorso

Inserisci il prefisso per i tuoi log.

Disattiva la crittografia dei log S3

Seleziona se non desideri che i registri S3 siano crittografati.