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à.
Puoi utilizzare la CLI EB per distribuire la tua applicazione direttamente dal repository di AWS CodeCommit. Con CodeCommit puoi caricare unicamente le modifiche nel repository al momento della distribuzione, anziché caricare l'intero progetto. In questo modo, puoi risparmiare tempo e larghezza di banda se il progetto è di grandi dimensioni o se la connettività Internet è limitata. La CLI EB effettua il push dei commit locali e utilizza i commit per creare versioni dell'applicazione quando utilizzi eb appversion, eb create o eb deploy.
Per distribuire le modifiche, l'integrazione CodeCommit richiede dapprima il commit delle modifiche. Tuttavia, durante lo sviluppo o il debug, è possibile che tu non intenda effettuare il push di modifiche che non hai confermato. Puoi evitare il commit delle modifiche mediante lo staging delle stesse e utilizzando eb deploy --staged (che esegue una distribuzione standard). Oppure, puoi eseguire dapprima il commit delle modifiche su un ramo di sviluppo o test e quindi il merge nel ramo principale quando il codice è pronto. Con eb use, puoi configurare la CLI EB per distribuire in un ambiente dal ramo di sviluppo e in un altro ambiente dal ramo principale.
Nota
In alcune regioni CodeCommit non è disponibile. L'integrazione tra Elastic Beanstalk e CodeCommit non funziona in queste regioni.
Per informazioni sui servizi AWS offerti in ciascuna regione, consulta la Tabella delle regioni
Sezioni
Prerequisiti
Per utilizzare CodeCommit con AWS Elastic Beanstalk devi disporre di un repository Git locale (uno già esistente o uno nuovo che crei) con almeno un commit, un'autorizzazione a utilizzare CodeCommit e un ambiente Elastic Beanstalk in una regione supportata da CodeCommit. L'ambiente e il repository devono essere nella stessa regione.
Inizializzazione del repository Git
-
Esegui
git init
nella tua cartella di progetto.~/my-app$
git init
-
Esegui lo staging dei file di progetto con
git add
.~/my-app$
git add .
-
Esegui il commit delle modifiche con
git commit
.~/my-app$
git commit -m "Elastic Beanstalk application"
Creazione di un repository CodeCommit con l'interfaccia a riga di comando EB
Per iniziare a utilizzare CodeCommit esegui eb init. Durante la configurazione del repository, l'interfaccia a riga di comando EB chiede di utilizzare CodeCommit per archiviare il codice e accelerare le distribuzioni. Anche se hai già configurato il progetto con eb init, puoi eseguirlo nuovamente per configurare CodeCommit.
Per creare un repository CodeCommit con l'interfaccia a riga di comando EB
-
Esegui eb init nella tua cartella di progetto. Durante la configurazione, l'interfaccia a riga di comando EB chiede se vuoi utilizzare CodeCommit per archiviare il codice e accelerare le distribuzioni. Se hai già configurato il progetto con eb init, puoi eseguirlo di nuovo per configurare CodeCommit. Digita
y
al prompt per configurare CodeCommit.~/my-app$
eb init
Note: Elastic Beanstalk now supports AWS CodeCommit; a fully-managed source control service. To learn more, see Docs: https://aws.amazon.com/codecommit/ Do you wish to continue with CodeCommit? (y/n)(default is n):y
-
Seleziona Create new Repository (Crea nuovo repository).
Select a repository 1) my-repo 2) [ Create new Repository ] (default is 2):
2
-
Digita un nome di repository o premi Enter (Invio) per accettare il nome di default.
Enter Repository Name (default is "codecommit-origin"):
my-app
Successfully created repository: my-app -
Scegli un ramo esistente per i commit, oppure utilizza l'interfaccia a riga di comando EB per creare un nuovo ramo.
Enter Branch Name ***** Must have at least one commit to create a new branch with CodeCommit ***** (default is "mainline"):
ENTER
Successfully created branch: mainline
Distribuzione dal repository CodeCommit
Quando configuri CodeCommit con il repository dell'interfaccia a riga di comando EB, l'interfaccia utilizza i contenuti del repository per creare bundle di origine. Quando esegui eb deploy o eb create, l'interfaccia a riga di comando EB esegue il push di nuovi commit e utilizza la revisione HEAD del ramo per creare l'archivio distribuito alle istanze EC2 nel tuo ambiente.
Per utilizzare l'integrazione di CodeCommit con l'interfaccia a riga di comando EB
-
Crea un nuovo ambiente con eb create.
~/my-app$
eb create
Starting environment deployment via CodeCommit --- Waiting for application versions to be pre-processed --- Finished processing application version app-ac1ea-161010_201918 Setting up default branch Environment details for: my-app-env Application name: my-app Region: us-east-2 Deployed Version: app-ac1ea-161010_201918 Environment ID: e-pm5mvvkfnd Platform: 64bit Amazon Linux 2016.03 v2.1.6 running Java 8 Tier: WebServer-Standard CNAME: UNKNOWN Updated: 2016-10-10 20:20:29.725000+00:00 Printing Status: INFO: createEnvironment is starting. ...my-app-env
L'interfaccia a riga di comando EB utilizza l'ultimo commit nel ramo monitorato per creare la versione dell'applicazione che viene distribuita nell'ambiente.
-
Quando disponi di nuovi commit locali, utilizza eb deploy per eseguirne il push e distribuirli nell'ambiente.
~/my-app$
eb deploy
Starting environment deployment via CodeCommit INFO: Environment update is starting. INFO: Deploying new version to instance(s). INFO: New application version was deployed to running EC2 instances. INFO: Environment update completed successfully. -
Per testare le modifiche prima di eseguire il commit, utilizza l'opzione
--staged
per distribuire le modifiche aggiunte all'area di gestione temporanea congit add
.~/my-app$
git add new-file
~/my-app$eb deploy --staged
Se utilizzi l'opzione
--staged
viene eseguita una distribuzione standard e CodeCommit viene ignorato.
Configurazione di ulteriori rami e ambienti
La configurazione di CodeCommit si applica a un unico ramo. Puoi utilizzare eb use e eb codesource per configurare ulteriori rami o modificare la configurazione del ramo corrente.
Per configurare l'integrazione di CodeCommit con l'interfaccia a riga di comando EB
-
Per modificare il ramo remoto, utilizza l'opzione
--source
del comando eb use.~/my-app$
eb use
test-env
--sourcemy-app/test
-
Per creare un nuovo ramo e un nuovo ambiente, estrai un nuovo ramo, eseguine il push in CodeCommit, crea l'ambiente e utilizza eb use per collegare il ramo locale, il ramo remoto e l'ambiente.
~/my-app$
git checkout -b
~/my-app$production
git push --set-upstream
~/my-app$production
eb create
~/my-app$production-env
eb use --source
my-app/production production-env
-
Per configurare CodeCommit in modo interattivo utilizza eb codesource codecommit.
~/my-app$
eb codesource codecommit
Current CodeCommit setup: Repository: my-app Branch: test Do you wish to continue (y/n):y
Select a repository 1) my-repo 2) my-app 3) [ Create new Repository ] (default is 2):2
Select a branch 1) mainline 2) test 3) [ Create new Branch with local HEAD ] (default is 1):1
-
Per disabilitare l'integrazione di CodeCommit utilizza eb codesource local.
~/my-app$
eb codesource local
Current CodeCommit setup: Repository: my-app Branch: mainline Default set to use local sources
Utilizzo di un repository CodeCommit esistente
Se hai già un repository CodeCommit e vuoi usarlo con Elastic Beanstalk, esegui eb init alla root del tuo repository Git locale.
Per utilizzare un repository CodeCommit esistente con l'interfaccia a riga di comando EB
-
Clona il tuo repository CodeCommit.
~$
git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/
my-app
-
Estrai ed esegui il push di un ramo da utilizzare per il tuo ambiente Elastic Beanstalk.
~/my-app$
git checkout -b
~/my-app$dev-env
git push --set-upstream origin
dev-env
-
Esegui eb init. Scegli lo stesso nome di regione, repository e ramo che utilizzi attualmente.
~/my-app$
eb init
Select a default region 1) us-east-1 : US East (N. Virginia) 2) us-west-1 : US West (N. California) 3) us-west-2 : US West (Oregon) 4) eu-west-1 : Europe (Ireland) 5) eu-central-1 : Europe (Frankfurt) 6) ap-south-1 : Asia Pacific (Mumbai) 7) ap-southeast-1 : Asia Pacific (Singapore) ... (default is 3):1
... Note: Elastic Beanstalk now supports AWS CodeCommit; a fully-managed source control service. To learn more, see Docs: https://aws.amazon.com/codecommit/ Do you wish to continue with CodeCommit? (y/n)(default is n):y
Select a repository 1) my-app 2) [ Create new Repository ] (default is 1):1
Select a branch 1) mainline 2) dev-env 3) [ Create new Branch with local HEAD ] (default is 2):2
Per ulteriori informazioni sull'utilizzo di eb init, consulta Configurazione dell'interfaccia a riga di comando EB.