Fluxos de trabalho em equipe com ambientes de back-end do Amplify - AWS AmplifyHospedagem

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

Fluxos de trabalho em equipe com ambientes de back-end do Amplify

A implantação de uma ramificação de recursos consiste em um front-end e (opcionalmente) em um ambiente de back-end. O front-end é construído e implantado em uma rede global de entrega de conteúdo (CDN), enquanto o back-end é implantado pelo Amplify Studio ou pela CLI do Amplify paraAWS. Para obter mais informações sobre esse cenário de implantação, consulteConceitos básicos do.

nota

Agora você pode reutilizar facilmente os ambientes de back-end do Amplify em seus aplicativos Amplify. Para obter mais informações, consulte Use back-ends do Amplify em todos os aplicativos.

Você pode usar o Amplify Hosting para implantar continuamente recursos de back-end, como APIs GraphQL e funções Lambda, com a implantação de sua ramificação de recursos. Você pode usar os seguintes modelos para implantar seu back-end e front-end com o Amplify Hosting.

Fluxo de trabalho de ramificação de recurso

  • Crie os ambientes de back-end prod, test e dev com a CLI do Amplify.

  • Mapeie o prod e o teste para as ramificações principais (anteriormente chamadas de master) e desenvolva.

  • Os membros da equipe podem usar o ambiente de back-end dev para testar as ramificações de recurso.

  1. Instale a CLI do Amplify para inicializar um novo projeto do Amplify.

    npm install -g @aws-amplify/cli
  2. Inicialize um ambiente de back-end prod para o seu projeto. Se não houver um projeto, crie um com o Gatsby. create-react-app

    create-react-app next-unicorn cd next-unicorn amplify init ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: prod ... amplify push
  3. Adicione os ambientes de back-end test e dev.

    amplify env add ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: test ... amplify push amplify env add ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: dev ... amplify push
  4. Envie o código para um repositório Git de sua escolha (neste exemplo, vamos supor que você enviou para o repositório principal).

    git commit -am 'Added dev, test, and prod environments' git push origin main
  5. Visite Amplify noAWS Management Console para ver seu ambiente de back-end atual. Navegue um nível acima do breadcrumb para ver uma lista de todos os ambientes de back-end criados na guia Ambientes de back-end.

  6. Mude para a guia Ambientes de front-end e conecte seu provedor de repositório e sua filial principal.

  7. Na tela de configurações de compilação, escolha um ambiente de back-end existente para configurar a implantação contínua com a filial principal. Escolha prod no menu suspenso e conceda a função de serviço ao Amplify. Escolha Save and deploy (Save e implantar). Depois que a compilação for concluída, você terá uma implantação da ramificação principal disponível em https://main.appid.amplifyapp.com.

  8. Connect a ramificação de desenvolvimento no Amplify (suponha que o desenvolvimento e a ramificação principal sejam iguais neste momento). Escolha o ambiente de back-end test.

  9. O Amplify agora está configurado. Você pode começar a trabalhar em novos recursos em uma ramificação de recurso. Adicione a funcionalidade de back-end usando o ambiente de back-end dev na sua estação de trabalho local.

    git checkout -b newinternet amplify env checkout dev amplify add api ... amplify push
  10. Quando terminar de trabalhar no recurso, confirme seu código, crie uma solicitação pull para revisar internamente.

    git commit -am 'Decentralized internet v0.1' git push origin newinternet
  11. Para visualizar como serão as alterações, acesse o console do Amplify e conecte sua ramificação de recursos. Nota: Se você tiver oAWS CLI instalado em seu sistema (não o Amplify CLI), você pode conectar uma ramificação diretamente do seu terminal. Para encontrar o ID do aplicativo, vá até App settings > General > AppARN (Configurações de aplicativo > Geral > ARN do aplicativo): arn:aws:amplify:<region>:<region>:apps/<appid>

    aws amplify create-branch --app-id <appid> --branch-name <branchname> aws amplify start-job --app-id <appid> --branch-name <branchname> --job-type RELEASE
  12. Seu recurso estará acessível em https://newinternet.appid.amplifyapp.com para compartilhar com sua equipe. Se tudo estiver aparentemente correto, mescle o PR à ramificação de desenvolvimento.

    git checkout develop git merge newinternet git push
  13. Isso iniciará uma compilação que atualizará o back-end e o front-end no Amplify com uma implantação de ramificação em https://dev.appid.amplifyapp.com. Você pode compartilhar esse link com partes interessadas, para que possam revisar o novo recurso.

  14. Exclua sua ramificação de recursos do Git, do Amplify e remova o ambiente de back-end da nuvem (você sempre pode criar uma nova com base nela executando 'amplify env checkout prod' e executando 'amplify env add').

    git push origin --delete newinternet aws amplify delete-branch --app-id <appid> --branch-name <branchname> amplify env remove dev

GitFlow fluxo de trabalho

GitFlow usa duas filiais para registrar a história do projeto. A ramificação principal (anteriormente chamada de ramificação master) rastreia somente o código de lançamento, e a ramificação de desenvolvimento é usada como uma ramificação de integração para novos recursos. GitFlow simplifica o desenvolvimento parallel ao isolar o novo desenvolvimento do trabalho concluído. O novo desenvolvimento (como recursos e correções de erros não emergenciais) é feito em ramificações de recurso. Quando o desenvolvedor estiver satisfeito com o código e entender que ele está pronto para o lançamento, a ramificação de recurso será mesclada com a ramificação de desenvolvimento de integração. As únicas confirmações na ramificação principal são as fusões das ramificações de lançamento e das ramificações de hotfix (para corrigir bugs de emergência).

O diagrama abaixo mostra uma configuração recomendada com GitFlow. Você pode seguir o mesmo processo descrito na seção de fluxo de trabalho de ramificação de recurso acima.

Sandbox de desenvolvedor

  • Cada desenvolvedor em uma equipe cria um ambiente de sandbox na nuvem, separado do computador local. Isso permite que os desenvolvedores trabalhem isolados uns dos outros sem substituir as alterações de outros membros da equipe.

  • Cada filial no Amplify tem seu próprio back-end. Isso garante que o Amplify use o repositório Git como uma única fonte confiável para implantar mudanças, em vez de confiar que os desenvolvedores da equipe enviem manualmente seu back-end ou front-end para a produção a partir de seus computadores locais.

  1. Instale a CLI do Amplify para inicializar um novo projeto do Amplify.

    npm install -g @aws-amplify/cli
  2. Inicialize um ambiente de back-end kita para o seu projeto. Se não houver um projeto, crie um com o Gatsby. create-react-app

    cd next-unicorn amplify init ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: kita ... amplify push
  3. Envie o código para um repositório Git de sua escolha (neste exemplo, assumiremos que você enviou para o principal (anteriormente chamado de master).

    git commit -am 'Added kita sandbox' git push origin main
  4. Connect seu repositório > principal ao Amplify.

  5. O console do Amplify detectará ambientes de back-end criados pela CLI do Amplify. Escolha Criar novo ambiente no menu suspenso e conceda a função de serviço ao Amplify. Escolha Save and deploy (Save e implantar). Após a conclusão da construção, você terá uma implantação da ramificação principal disponível em https://main.appid.amplifyapp.com com um novo ambiente de back-end vinculado à ramificação.

  6. Connect a ramificação de desenvolvimento no Amplify (suponha que o desenvolvimento e a ramificação principal sejam iguais neste momento) e escolha Criar novo ambiente. Depois que a criação for concluída, haverá uma implantação de ramificação de desenvolvimento disponível em https://develop.appid.amplifyapp.com com um novo ambiente de back-end que é vinculado à ramificação.