Usando o EB CLI com AWS CodeCommit - AWS Elastic Beanstalk

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usando o EB CLI com AWS CodeCommit

Você pode usar o EB CLI para implantar seu aplicativo diretamente do seu AWS CodeCommit repositório. Com CodeCommit, você pode carregar somente suas alterações no repositório durante a implantação, em vez de carregar todo o projeto. Isso pode poupar tempo e largura de banda se você tem um projeto grande ou conectividade limitada com a Internet. A EB CLI envia confirmações locais e as usa para criar versões da aplicação quando você usa eb appversion, eb create ou eb deploy.

Para implantar suas alterações, a CodeCommit integração exige que você as confirme primeiro. No entanto, enquanto você desenvolve ou depura, talvez não seja conveniente enviar alterações que ainda não tem certeza de estarem funcionando. Você pode evitar confirmar as alterações feitas preparando-as e usando eb deploy --staged (que executa uma implantação padrão). Ou confirmar suas alterações em uma ramificação de desenvolvimento ou teste primeiro e mesclar a ramificação principal somente quando seu código estiver pronto. Com eb use, você pode configurar a EB CLI para implantar em um ambiente a partir da ramificação de desenvolvimento e em um ambiente diferente da ramificação principal.

nota

Algumas regiões não oferecem CodeCommit. A integração entre o Elastic CodeCommit Beanstalk não funciona nessas regiões.

Para obter informações sobre os AWS serviços oferecidos em cada região, consulte a Tabela de regiões.

Pré-requisitos

Para usar CodeCommit com AWS Elastic Beanstalk, você precisa de um repositório Git local (um que você já tenha ou um novo que você crie) com pelo menos um commit, permissão de uso CodeCommit e um ambiente do Elastic Beanstalk em uma região que ofereça suporte. CodeCommit O ambiente e o repositório devem estar na mesma região.

Para inicializar um repositório Git
  1. Execute git init na pasta do projeto.

    ~/my-app$ git init
  2. Prepare os arquivos do projeto com git add.

    ~/my-app$ git add .
  3. Confirme as alterações com git commit.

    ~/my-app$ git commit -m "Elastic Beanstalk application"

Criando um CodeCommit repositório com o EB CLI

Para começar CodeCommit, execute eb init. Durante a configuração do repositório, a CLI do EB solicita que você CodeCommit use para armazenar seu código e acelerar as implantações. Mesmo que você tenha configurado seu projeto anteriormente comeb init, você pode executá-lo novamente para configurar CodeCommit.

Para criar um CodeCommit repositório com o EB CLI
  1. Execute eb init na pasta do projeto. Durante a configuração, a CLI do EB pergunta se você deseja usar CodeCommit para armazenar seu código e acelerar as implantações. Se você configurou seu projeto anteriormente comeb init, ainda poderá executá-lo novamente para configurar CodeCommit. Digite y no prompt para configurar 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
  2. Escolha Create new Repository.

    Select a repository 1) my-repo 2) [ Create new Repository ] (default is 2): 2
  3. Digite um nome de repositório ou pressione Enter para aceitar o nome padrão.

    Enter Repository Name (default is "codecommit-origin"): my-app Successfully created repository: my-app
  4. Escolha uma ramificação existente para suas confirmações ou use a EB CLI para criar uma nova ramificação.

    Enter Branch Name ***** Must have at least one commit to create a new branch with CodeCommit ***** (default is "mainline"): ENTER Successfully created branch: mainline

Implantando a partir do seu repositório CodeCommit

Quando você configura CodeCommit com seu repositório EB CLI, o EB CLI usa o conteúdo do repositório para criar pacotes de origem. Quando você executa eb deploy oueb create, a CLI do EB envia novos commits e usa a revisão HEAD da sua ramificação para criar o arquivo que ele implanta nas instâncias do EC2 seu ambiente.

Para usar a CodeCommit integração com o EB CLI
  1. Crie um novo ambiente com eb create.

    ~/my-app$ eb create my-app-env 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. ...

    A EB CLI usa a confirmação mais recente na ramificação rastreada para criar a versão do aplicativo que é implantada no ambiente.

  2. Quando você tiver novas confirmações locais, use eb deploy para enviar as confirmações e implantar em seu 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.
  3. Para testar as alterações antes de confirmá-las, use a opção --staged para implantar as alterações que você adicionou à área de preparação com git add.

    ~/my-app$ git add new-file ~/my-app$ eb deploy --staged

    A implantação com a opção --staged executa uma implantação padrão, ignorando o CodeCommit.

Configurar ramificações e ambientes adicionais

CodeCommit a configuração se aplica a uma única ramificação. Você pode usar eb use e eb codesource para configurar ramificações adicionais ou modificar a configuração da ramificação atual.

Para configurar a CodeCommit integração com o EB CLI
  1. Para alterar a ramificação remota, use a opção --source do comando eb use.

    ~/my-app$ eb use test-env --source my-app/test
  2. Para criar uma nova ramificação e ambiente, confira uma nova ramificação, envie-a CodeCommit, crie o ambiente e use-a eb use para conectar a ramificação local, a ramificação remota e o ambiente.

    ~/my-app$ git checkout -b production ~/my-app$ git push --set-upstream production ~/my-app$ eb create production-env ~/my-app$ eb use --source my-app/production production-env
  3. Para configurar CodeCommit interativamente, use 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
  4. Para desativar a CodeCommit integração, use eb codesource local.

    ~/my-app$ eb codesource local Current CodeCommit setup: Repository: my-app Branch: mainline Default set to use local sources

Usando um CodeCommit repositório existente

Se você já tem um CodeCommit repositório e quer usá-lo com o Elastic Beanstalkeb init, execute na raiz do seu repositório Git local.

Para usar um CodeCommit repositório existente com o EB CLI
  1. Clone seu CodeCommit repositório.

    ~$ git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/my-app
  2. Confira e envie uma ramificação para usar no seu ambiente do Elastic Beanstalk.

    ~/my-app$ git checkout -b dev-env ~/my-app$ git push --set-upstream origin dev-env
  3. Executar eb init. Escolha os mesmos região, repositório e nome da ramificação que está usando no momento.

    ~/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

Para obter mais informações sobre o uso de eb init, consulte Configurar a EB CLI.