implantação de referência

Git webhooks na AWS

Endpoint e código HTTPS para vincular seu repositório Git à AWS

Esta solução implanta um endpoint HTTPS que pode ser usado para configurar um webhook que vincula seu Git à Amazon Web Services (AWS). Com um webhook, toda vez que houver uma confirmação, seu repositório será automaticamente recuperado, compactado e carregado em um bucket do Amazon Simple Storage System (Amazon S3). Em seguida, você poderá configurar o AWS CodePipeline, o AWS CodeBuild e o AWS CodeDeploy para usar o bucket do S3 como fonte.

Esta solução foi desenvolvida pela AWS.

 


Administradores do AWS Service Catalog podem adicionar esta arquitetura ao seu próprio catálogo.  

  •  O que você criará
  • Esta solução configura um ambiente da Nuvem AWS com tecnologia sem servidor que inclui os seguintes componentes:

    • Um endpoint do Amazon API Gateway para receber solicitações de Git webhook e encaminhá-las ao AWS Lambda.
    • Uma função do AWS Lambda para processar solicitações de Git webhook do API Gateway e invocar um projeto do AWS CodeBuild.
    • Um projeto do AWS CodeBuild para conectar seu serviço Git, recuperar, compactar e carregar a última versão do seu repositório Git para o Amazon S3.
    • Uma chave do AWS Key Management Service (AWS KMS) para criptografar/descriptografar chaves SSH (Secure Shell) usadas pelo CodeBuild para conectar ao seu repositório Git usando SSH. O par de chaves SSH é gerado pelo recurso personalizado do AWS CloudFormation quando a pilha é implantada.
    • Dois buckets do Amazon S3: um para conteúdo de repositório Git e outro para chaves SSH criptografadas. Um recurso personalizado do AWS CloudFormation com suporte do Lambda exclui o conteúdo dos buckets S3 quando você exclui a pilha. Se você precisar de backups, copie os buckets do S3 antes de excluir a pilha.
  •  Como implantar
  • Para construir seu ambiente do Git com a AWS, siga as instruções do guia de implantação. O processo de implantação inclui as seguintes etapas:

    1. Caso ainda não tenha uma conta da AWS, cadastre-se em https://aws.amazon.com.
    2. Execute a solução. A implantação leva cerca de 15 minutos.
    3. Configure seu repositório do Git para configurar webhooks, seguindo as instruções do seu serviço do Git. (Você deve ser capaz de conectar ao seu repositório Git pela Internet.)
    4. Configure um serviço da AWS para conectar-se ao objeto S3.
    5. Teste uma confirmação.

    A Amazon pode compartilhar informações sobre implantações de usuários com o parceiro da AWS que colaborou com a AWS nesta solução.  

  •  Custos e licenças
  • Esta solução implanta uma chave do AWS Key Management Service (AWS KMS) que incorre em um custo mensal para armazenamento e uso da chave. (Consulte Preços do AWS Key Management Service.)

    Os custos do API Gateway, Amazon S3, Lambda e AWS CodeBuild variam dependendo da frequência com que códigos são confirmados em seu repositório Git. (Consulte Preço do Amazon API Gateway, Definição de preço do Amazon S3, Definição de preço do AWS Lambda e Preços do AWS CodeBuild.)

    Você é responsável pelo custo dos serviços da AWS e de licenças de terceiros usadas durante a execução da solução. Não há custo adicional para usar a solução.

    Esta solução inclui parâmetros de configuração personalizáveis. Algumas dessas configurações, como o tipo de instância, afetam os custos de implantação. Para obter estimativas de custo, consulte as páginas de preço de cada produto da AWS que você utiliza. Os preços estão sujeitos a alterações.

    Dica: após a implantação da solução, crie  Relatórios de custos e uso da AWS para monitorar os custos associados. Esses relatórios fornecem métricas de faturamento para um bucket do Amazon Simple Storage Service (Amazon S3) em sua conta. Fornecem estimativas de custos com base no uso ao longo de cada mês e agregam os dados no fim do mês. Para obter mais informações, consulte  What are AWS Cost and Usage Reports? (O que são os Relatórios de Custos e Uso da AWS?).