Artefatos de entrada e saída
O CodePipeline integra-se a ferramentas de desenvolvimento para conferir alterações no código e, depois, criar e implantar em todos os estágios do processo de entrega contínua. Artefatos são os arquivos que são trabalhados por ações no pipeline, como arquivos ou pastas com código de aplicação, arquivos de página de índice, scripts, etc. Por exemplo, o artefato da ação de origem do Amazon S3 é um nome de arquivo (ou caminho de arquivo) em que os arquivos de código-fonte da aplicação são fornecidos para a ação de origem do pipeline. Os arquivos são fornecidos como um arquivo ZIP, como o seguinte nome do artefato de exemplo: SampleApp_Windows.zip. O artefato de saída para a ação de origem, os arquivos de código-fonte da aplicação, são o artefato de saída da ação e o artefato de entrada para a próxima ação, como uma ação de compilação. Como outro exemplo, uma ação de compilação pode executar comandos que compilem o código-fonte da aplicação para um artefato de entrada, que são os arquivos de código-fonte da aplicação. Consulte a página de referência da configuração da ação a fim de ver uma ação específica para obter detalhes sobre os parâmetros do artefato, como Referência da ação de compilação e teste do AWS CodeBuild para a ação do CodeBuild.
As ações usam artefatos de entrada e saída armazenados no bucket de artefatos do Amazon S3 que você escolheu ao criar o pipeline. O CodePipeline compacta e transfere os arquivos para os artefatos de entrada ou saída, conforme apropriado para o tipo de ação no estágio.
nota
O bucket de artefatos não é o mesmo usado como local do arquivo de origem de um pipeline em que a ação de origem escolhida é o S3.
Por exemplo:
-
O CodePipeline aciona a execução do pipeline quando há uma confirmação para o repositório de origem, que fornece o artefato de saída (todos os arquivos a serem criados) do estágio de Origem.
-
O artefato de saída (todos os arquivos a serem compilados) do estágio anterior é processado como um artefato de entrada para o estágio de Compilação. Um artefato de saída (o aplicativo compilado) do estágio de Compilação pode ser um aplicativo atualizado ou uma imagem do Docker atualizada criada para um contêiner.
-
O artefato de saída do estágio anterior (o aplicativo de compilação) é processado como um artefato de entrada para o estágio de implantação, como ambientes de preparação ou de produção na Nuvem AWS. Você pode implantar aplicativos para uma frota de implantação ou pode implantar aplicativos baseados em contêiner para tarefas em execução nos clusters do ECS.
Ao criar ou editar uma ação, você designa o artefato ou os artefatos de entrada e de saída para a ação. Neste exemplo de um pipeline de dois estágios, com um estágio de Origem e de Implantação, em Editar ação, escolha o nome do artefato da ação de origem para o artefato de entrada da ação de implantação.
-
Quando você usa o console para criar seu primeiro pipeline, o CodePipeline cria um bucket do Amazon S3 na mesma Conta da AWS e Região da AWS para armazenar itens para todos os pipelines. Sempre que você usar o console para criar outro pipeline nessa região, o CodePipeline criará uma pasta para esse pipeline no bucket. Ele usará essa pasta para armazenar os artefatos do pipeline conforme a execução do processo de lançamento automatizado. Esse bucket é chamado de codepipeline-
region-12345EXAMPLE, em queregioné a região AWS na qual você criou o pipeline, e12345EXAMPLEé um número aleatório de 12 dígitos que garante que o nome do bucket seja exclusivo.nota
Se você já tem um bucket começando com codepipeline-region- na região onde você está criando o pipeline, o CodePipeline o usa como o bucket padrão. Também segue a ordem lexicográfica; por exemplo, codepipeline-region-abcexample é escolhido antes de codepipeline-region-defexample.
O CodePipeline trunca nomes de artefatos, o que pode fazer com que alguns nomes de buckets pareçam semelhantes. Embora o nome do artefato pareça estar truncado, o CodePipeline realiza o mapeamento ao bucket do artefato de modo que não seja afetado por artefatos com nomes truncados. O pipeline pode funcionar normalmente. Isso não é um problema com a pasta ou os artefatos. Há um limite de 100 caracteres para nomes de pipelines. Embora o nome da pasta do artefato possa parecer reduzido, ele ainda é exclusivo para o pipeline.
Ao criar ou editar um pipeline, é necessário ter um bucket de artefato na região Conta da AWS e Região da AWS do pipeline e ter um bucket de artefato por região no qual você planeja executar uma ação. Se você usar o console para criar um pipeline ou ações entre regiões, buckets de artefatos padrão são configurados pelo CodePipeline nas regiões em que se encontram as ações.
Se usar a AWS CLI para criar um pipeline, você poderá armazenar os artefatos desse pipeline em qualquer bucket do Amazon S3, desde que esse bucket esteja na mesma Conta da AWS e Região da AWS que o pipeline. É possível fazer isso caso se preocupe em não exceder os limites dos buckets do Amazon S3 permitidos para a conta. Se você usar a AWS CLI para criar ou editar um pipeline e adicionar uma ação entre regiões (uma ação com um provedor da AWS em uma região diferente da região do pipeline), será necessário fornecer um bucket de artefato para cada região adicional onde você pretende executar uma ação.
-
Cada ação tem um tipo. Dependendo do tipo, a ação poderá ter um destes itens ou os dois:
-
Um artefato de entrada, que é o que ele utiliza ou no qual trabalha durante o curso de execução da ação.
-
Um artefato de saída, que é o resultado da ação.
Todos os artefatos de saída no pipeline devem ter um nome exclusivo. Cada artefato de entrada de uma ação deve corresponder ao artefato de saída de uma ação anterior no pipeline, não importa se essa ação for imediatamente anterior à ação em um estágio ou for executada em um estágio que ocorreu vários estágios antes.
Mais de uma ação pode trabalhar em um artefato.
-