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á.
Apêndice A: ações de origem do GitHub (por meio do aplicativo OAuth)
Este apêndice fornece informações sobre (por meio do aplicativo OAuth) da ação do GitHub no CodePipeline.
nota
Embora não seja recomendável usar a ação do GitHub (por meio do aplicativo OAuth), os pipelines existentes com a ação do GitHub (por meio do aplicativo OAuth) continuarão funcionando sem impacto algum. Para um pipeline com uma ação do GitHub (por meio do aplicativo OAuth), o CodePipeline usa tokens baseados no OAuth para se conectar ao repositório do GitHub. Por outro lado, a ação do GitHub (por meio do aplicativo do GitHub) usa um recurso de conexão para associar recursos da AWS ao repositório do GitHub. O recurso de conexão usa tokens baseados em aplicativos para estabelecer conexões. Para obter mais informações sobre como atualizar seu pipeline para a ação recomendada do GitHub que usa uma conexão, consulte Atualizar uma ação de origem do GitHub (por meio do aplicativo OAuth) para uma ação de origem do GitHub (por meio do aplicativo do GitHub). Para obter mais informações sobre o acesso ao GitHub baseado no OAuth em contraste com o acesso ao GitHub baseado em aplicativo, consulte https://docs.github.com/en/developers/apps/differences-between-github-apps-and-oauth-apps
Para integrar-se ao GitHub, o CodePipeline usa um aplicativo OAuth do GitHub para o pipeline. O CodePipeline usa webhooks para gerenciar a detecção de alterações do pipeline com a ação de origem do GitHub (por meio do aplicativo OAuth).
nota
Ao configurar uma ação de origem do GitHub (por meio do aplicativo do GitHub) no CloudFormation, você não inclui nenhuma informação de token do GitHub nem adiciona um recurso de webhook. Você configura um recurso de conexão conforme mostrado em AWS::CodeStarConnections::Connection no Guia do usuário do CloudFormation.
Essa referência contém as seguintes seções para a ação do GitHub (por meio do aplicativo OAuth):
-
Para obter informações sobre como adicionar uma ação de origem do GitHub (por meio do aplicativo OAuth) e um webhook a um pipeline, consulte Adição de uma ação de origem do GitHub (por meio do aplicativo OAuth).
-
Para obter informações sobre os parâmetros de configuração e trechos YAML/JSON de exemplo de uma ação de origem do GitHub (por meio do aplicativo OAuth), consulte Referência da ação de origem do GitHub (por meio do aplicativo OAuth).
Importante
Ao criar webhooks do CodePipeline, não use suas próprias credenciais nem reutilize o mesmo token secreto em vários webhooks. Para garantir um nível ideal de segurança, gere um token secreto exclusivo para cada webhook que você criar. O token secreto é uma string arbitrária que você fornece e é usada pelo GitHub para calcular e assinar as cargas úteis do webhook enviadas ao CodePipeline, com o intuito de proteger a integridade e a autenticidade das cargas úteis do webhook. Usar as próprias credenciais ou reutilizar o mesmo token em vários webhooks pode levar a vulnerabilidades de segurança.
nota
Se um token secreto tiver sido fornecido, ele será redigido na resposta.
Tópicos
Adição de uma ação de origem do GitHub (por meio do aplicativo OAuth)
Você adiciona ações de origem do GitHub (por meio do aplicativo OAuth) ao CodePipeline ao:
-
Usando o assistente Criar pipeline do console do CodePipeline (Criar um pipeline personalizado (console)) ou a página Editar ação para escolher a opção de provedor do GitHub. O console cria um webhook que aciona seu pipeline quando a origem é alterada.
-
Usando a CLI para adicionar a configuração da ação
GitHube criando recursos adicionais por meio do(a):-
Exemplo de configuração da ação
GitHubem Referência da ação de origem do GitHub (por meio do aplicativo OAuth) para criar a ação conforme mostrado em Criar um pipeline (CLI). -
Desabilitação das verificações periódicas e criação da detecção de alterações manualmente, porque o método de detecção de alterações assume como padrão o acionamento do pipeline pesquisando a origem. Você migra o pipeline de sondagem para webhooks de ações do GitHub (por meio do aplicativo OAuth).
-
Referência da ação de origem do GitHub (por meio do aplicativo OAuth)
nota
Embora não seja recomendável usar a ação do GitHub (por meio do aplicativo OAuth), os pipelines existentes com a ação do GitHub (por meio do aplicativo OAuth) continuarão funcionando sem impacto algum. Para um pipeline com uma ação de origem do GitHub (por meio do aplicativo OAuth), o CodePipeline usa tokens baseados no OAuth para se conectar ao repositório do GitHub. Por outro lado, a nova ação do GitHub (por meio do aplicativo do GitHub) usa um recurso de conexão para associar recursos da AWS ao repositório do GitHub. O recurso de conexão usa tokens baseados em aplicativos para estabelecer conexões. Para obter mais informações sobre como atualizar seu pipeline para a ação recomendada do GitHub que usa uma conexão, consulte Atualizar uma ação de origem do GitHub (por meio do aplicativo OAuth) para uma ação de origem do GitHub (por meio do aplicativo do GitHub).
Aciona o pipeline quando uma nova confirmação é feita no repositório e ramificação do GitHub configurados.
Para integrar-se ao GitHub, o CodePipeline usa uma aplicação OAuth ou um token de acesso pessoal para seu pipeline. Se você usar o console para criar ou editar o pipeline, o CodePipeline criará um webhook do GitHub que acionará o pipeline quando ocorrer uma alteração no repositório.
Você já deve ter criado uma conta e um repositório do GitHub antes de conectar o pipeline por meio de uma ação do GitHub.
Se você quiser limitar o acesso do CodePipeline aos repositórios, crie uma conta do GitHub e conceda à conta acesso apenas aos repositórios que você deseja integrar ao CodePipeline. Use essa conta ao configurar o CodePipeline para usar repositórios do GitHub em estágios de origem nos pipelines.
Para obter mais informações, consulte a documentação do desenvolvedor do GitHub
Tópicos
Tipo de ação
-
Categoria:
Source -
Proprietário:
ThirdParty -
Fornecedor:
GitHub -
Versão:
1
Parâmetros de configuração
- Proprietário
-
Obrigatório: Sim
O nome do usuário ou da organização do GitHub que possui o repositório do GitHub.
- Repositório
-
Obrigatório: Sim
O nome do repositório onde as alterações de origem devem ser detectadas.
- Ramificação
-
Obrigatório: Sim
O nome da ramificação onde as alterações de origem devem ser detectadas.
- OAuthToken
-
Obrigatório: Sim
Representa o token de autenticação do GitHub que permite ao CodePipeline executar operações no repositório do GitHub. A entrada é sempre exibida como uma máscara de quatro asteriscos. Representa um dos seguintes valores:
-
Quando você usa o console para criar o pipeline, o CodePipeline usa um token OAuth para registrar a conexão do GitHub.
-
Ao usar a AWS CLI para criar o pipeline, é possível transmitir um token de acesso pessoal do GitHub nesse campo. Substitua os asteriscos (****) pelo seu token de acesso pessoal copiado do GitHub. Quando
get-pipelineé executado para visualizar a configuração da ação, a máscara de quatro asteriscos é exibida para esse valor. -
Quando um modelo do CloudFormation é usado para criar o pipeline, primeiro é necessário armazenar o token como um segredo no AWS Secrets Manager. Inclua o valor desse campo como uma referência dinâmica ao segredo armazenado no Secrets Manager, como
{{resolve:secretsmanager:MyGitHubSecret:SecretString:token}}.
Para obter mais informações sobre os escopos do GitHub, consulte a Referência da API do desenvolvedor do GitHub
no site do GitHub. -
- PollForSourceChanges
-
Obrigatório: Não
O
PollForSourceChangesdetermina se o CodePipeline pesquisará o repositório do GitHub em busca de alterações na origem. Recomendamos que você use webhooks para detectar alterações na origem. Para obter mais informações sobre como configurar webhooks, consulte Migre os pipelines de pesquisa para webhooks (via OAuth aplicativo) GitHub (ações de origem)) (CLI) ou Atualize pipelines para eventos push GitHub (por meio do OAuth aplicativo) (ações de origem) (CloudFormation modelo).Importante
Quando planejar configurar webhooks, você deve definir
PollForSourceChangescomofalsepara evitar execuções duplicadas do pipeline.Os valores válidos para esse parâmetro:
-
True: se definido, o CodePipeline pesquisará o repositório em busca de alterações na origem.nota
Se você omitir
PollForSourceChanges, o CodePipeline assumirá como valor padrão a pesquisa do repositório em busca de alterações na origem. Esse comportamento é o mesmo de quando oPollForSourceChangesestá definido comotrue. -
False: se definido, o CodePipeline não pesquisará o repositório em busca de alterações na origem. Use essa configuração quando você planejar configurar um webhook para detectar alterações na origem.
-
Input artifacts (Artefatos de entrada)
-
Número de artefatos:
0 -
Descrição: os artefatos de entrada não se aplicam a esse tipo de ação.
Artefatos de saída
-
Número de artefatos:
1 -
Descrição: O artefato de saída desta ação é um arquivo ZIP que contém o conteúdo do repositório e ramificação configurados na confirmação especificada como a revisão de origem para a execução do pipeline. Os artefatos gerados no repositório são os artefatos de saída para a ação do GitHub. O ID de confirmação do código-fonte é exibido no CodePipeline como a revisão de origem da execução acionada do pipeline.
Variáveis de saída
Quando configurada, essa ação produz variáveis que podem ser referenciadas pela configuração de ação de uma ação downstream no pipeline. Esta ação produz variáveis que podem ser visualizadas como variáveis de saída, mesmo que a ação não tenha um namespace. Configure uma ação com um namespace a fim de disponibilizar as variáveis para a configuração de ações downstream.
Para obter mais informações sobre variáveis no CodePipeline, consulte Referência de variáveis.
- CommitId
-
O ID de confirmação do GitHub que acionou a execução do pipeline. Os IDs de confirmação são o SHA completo da confirmação.
- CommitMessage
-
A mensagem da descrição, se houver, associada à confirmação que acionou a execução do pipeline.
- CommitUrl
-
O endereço URL da confirmação que acionou o pipeline.
- RepositoryName
-
O nome do repositório do GitHub onde a confirmação que acionou o pipeline foi feita.
- BranchName
-
O nome da ramificação do repositório do GitHub onde a alteração na origem foi feita.
- AuthorDate
-
A data em que a confirmação foi criada, no formato de timestamp.
- CommitterDate
-
A data em que a confirmação foi confirmada, no formato de timestamp.
Declaração de ação (exemplo do GitHub)
Conexão ao GitHub (OAuth)
Na primeira vez que usar o console para adicionar um repositório do GitHub a um pipeline, você será solicitado a autorizar o acesso do CodePipeline a seus repositórios. O token requer os seguintes escopos do GitHub:
-
O escopo
repo, que é usado para se obter o controle total para ler e efetuar pull de artefatos de repositórios públicos e privados para um pipeline. -
O escopo
admin:repo_hook, que é usado para se obter o controle total dos ganchos do repositório.
Ao usar a CLI ou um modelo do CloudFormation, você deve fornecer o valor de um token de acesso pessoal que você já criou no GitHub.
Consulte também
Os recursos relacionados a seguir podem ajudar você à medida que trabalha com esta ação.
-
Referência de recurso para o AWS::CodePipeline::Webhook do Guia do usuário do AWS CloudFormation: inclui definições de campo, exemplos e trechos do recurso no CloudFormation.
-
Referência de recurso para o AWS::CodeStar::GitHubRepository do Guia do usuário do AWS CloudFormation: inclui definições de campo, exemplos e trechos do recurso no CloudFormation.
-
Tutorial: crie um pipeline que crie e teste seu aplicativo Android com AWS Device Farm: este tutorial fornece um exemplo de arquivo de especificação de compilação e um exemplo de aplicação para criar um pipeline com uma origem do GitHub. Ele cria e testa um aplicativo Android com o CodeBuild e o AWS Device Farm.