GitHub Authentication for AWS CodePipeline

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

External

Internal

Overview

This article describes how to configure the Source stage of an AWS CodePipeline to access a GitHub repository.

Procedure

Create a Personal Access Token

Use the procedure described here:

Create a GitHub Personal Access Token

Update the Pipeline

CloudFormation

Update "OAuthToken" value with the value of the personal access token.

Resources:
  MyPipeline:
    Type: AWS::CodePipeline::Pipeline
    Properties:
      Stages:
        - Name: Source
          Actions:
          - Name: 'pull-from-github'
            ActionTypeId:
              Category: Source
              Owner: ThirdParty
              Version: '1'
              Provider: GitHub
            Configuration:
              Owner: 'novaordis-llc'
              Repo: https://github.com/something
              Branch: master
              OAuthToken: <use the personal access token here>

AWS CLI

TODO, not tested.

aws codepipeline get-pipeline --name MyPipeline > pipeline.json

Update pipeline.json, as described above, then

aws codepipeline update-pipeline --cli-input-json file://pipeline.json

Troubleshooting

"PermissionError: Could not access the GitHub repository

https://docs.aws.amazon.com/codepipeline/latest/userguide/troubleshooting.html#troubleshooting-gs2