GitHubSourceActionProps¶
-
class
aws_cdk.aws_codepipeline_actions.
GitHubSourceActionProps
(*, action_name, run_order=None, variables_namespace=None, oauth_token, output, owner, repo, branch=None, trigger=None)¶ Bases:
aws_cdk.aws_codepipeline.CommonActionProps
Construction properties of the {@link GitHubSourceAction GitHub source action}.
- Parameters
action_name (
str
) – The physical, human-readable name of the Action. Note that Action names must be unique within a single Stage.run_order (
Union
[int
,float
,None
]) – The runOrder property for this Action. RunOrder determines the relative order in which multiple Actions in the same Stage execute. Default: 1variables_namespace (
Optional
[str
]) – The name of the namespace to use for variables emitted by this action. Default: - a name will be generated, based on the stage and action names, if any of the action’s variables were referenced - otherwise, no namespace will be setoauth_token (
SecretValue
) – A GitHub OAuth token to use for authentication. It is recommended to use a Secrets ManagerSecret
to obtain the token: const oauth = cdk.SecretValue.secretsManager(‘my-github-token’); new GitHubSource(this, ‘GitHubAction’, { oauthToken: oauth, … }); The GitHub Personal Access Token should have these scopes: - repo - to read the repository - admin:repo_hook - if you plan to use webhooks (true by default)output (
Artifact
) –owner (
str
) – The GitHub account/user that owns the repo.repo (
str
) – The name of the repo, without the username.branch (
Optional
[str
]) – The branch to use. Default: “master”trigger (
Optional
[GitHubTrigger
]) – How AWS CodePipeline should be triggered. With the default value “WEBHOOK”, a webhook is created in GitHub that triggers the action With “POLL”, CodePipeline periodically checks the source for changes With “None”, the action is not triggered through changes in the source To useWEBHOOK
, your GitHub Personal Access Token should have admin:repo_hook scope (in addition to the regular repo scope). Default: GitHubTrigger.WEBHOOK
- ExampleMetadata
infused
Example:
# source_output: codepipeline.Artifact # project: codebuild.PipelineProject source_action = codepipeline_actions.GitHubSourceAction( action_name="Github_Source", output=source_output, owner="my-owner", repo="my-repo", oauth_token=SecretValue.secrets_manager("my-github-token"), variables_namespace="MyNamespace" ) # later: codepipeline_actions.CodeBuildAction( action_name="CodeBuild", project=project, input=source_output, environment_variables={ "COMMIT_URL": codebuild.BuildEnvironmentVariable( value=source_action.variables.commit_url ) } )
Attributes
-
action_name
¶ The physical, human-readable name of the Action.
Note that Action names must be unique within a single Stage.
- Return type
str
-
branch
¶ The branch to use.
- Default
“master”
- Return type
Optional
[str
]
-
oauth_token
¶ A GitHub OAuth token to use for authentication.
It is recommended to use a Secrets Manager
Secret
to obtain the token:const oauth = cdk.SecretValue.secretsManager(‘my-github-token’); new GitHubSource(this, ‘GitHubAction’, { oauthToken: oauth, … });
The GitHub Personal Access Token should have these scopes:
repo - to read the repository
admin:repo_hook - if you plan to use webhooks (true by default)
-
owner
¶ The GitHub account/user that owns the repo.
- Return type
str
-
repo
¶ The name of the repo, without the username.
- Return type
str
-
run_order
¶ The runOrder property for this Action.
RunOrder determines the relative order in which multiple Actions in the same Stage execute.
- Default
1
- See
https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html
- Return type
Union
[int
,float
,None
]
-
trigger
¶ How AWS CodePipeline should be triggered.
With the default value “WEBHOOK”, a webhook is created in GitHub that triggers the action With “POLL”, CodePipeline periodically checks the source for changes With “None”, the action is not triggered through changes in the source
To use
WEBHOOK
, your GitHub Personal Access Token should have admin:repo_hook scope (in addition to the regular repo scope).- Default
GitHubTrigger.WEBHOOK
- Return type
Optional
[GitHubTrigger
]
-
variables_namespace
¶ The name of the namespace to use for variables emitted by this action.
- Default
a name will be generated, based on the stage and action names,
if any of the action’s variables were referenced - otherwise, no namespace will be set
- Return type
Optional
[str
]