1
0
Fork 0
mirror of https://github.com/imjasonh/gcloud-help synced 2026-07-14 00:46:53 +00:00
gcloud-help/gcloud/beta/builds/triggers/create/github
2022-05-18 08:41:01 +00:00

215 lines
8.4 KiB
Text

NAME
gcloud beta builds triggers create github - create a build trigger for a
GitHub repository
SYNOPSIS
gcloud beta builds triggers create github
(--trigger-config=PATH | [--repo-name=REPO_NAME
--repo-owner=REPO_OWNER (--branch-pattern=REGEX | --tag-pattern=REGEX
| [--pull-request-pattern=REGEX : --comment-control=COMMENT_CONTROL;
default=CommentControlValueValuesEnum(COMMENTS_ENABLED,
1)]) (--build-config=PATH | --inline-config=PATH
| --dockerfile=DOCKERFILE --dockerfile-dir=DOCKERFILE_DIR;
default="/" --dockerfile-image=DOCKERFILE_IMAGE)
: --description=DESCRIPTION --ignored-files=[GLOB,...]
--include-logs-with-status --included-files=[GLOB,...] --name=NAME
--require-approval
--service-account=SERVICE_ACCOUNT --substitutions=[KEY=VALUE,...]])
[GCLOUD_WIDE_FLAG ...]
DESCRIPTION
(BETA) Create a build trigger for a GitHub repository.
EXAMPLES
To create a push trigger for all branches:
$ gcloud beta builds triggers create github --name="my-trigger" \
--service-account="projects/my-project/serviceAccounts/my-byosa@\
my-project.iam.gserviceaccount.com" \
--repo-owner="GoogleCloudPlatform" \
--repo-name="cloud-builders" --branch-pattern=".*" \
--build-config="cloudbuild.yaml"
To create a pull request trigger for master:
$ gcloud beta builds triggers create github --name="my-trigger" \
--service-account="projects/my-project/serviceAccounts/my-byosa@\
my-project.iam.gserviceaccount.com" \
--repo-owner="GoogleCloudPlatform" \
--repo-name="cloud-builders" --pull-request-pattern="^master$" \
--build-config="cloudbuild.yaml"
REQUIRED FLAGS
Exactly one of these must be specified:
--trigger-config=PATH
Path to Build Trigger config file (JSON or YAML format). For more
details, see
https://cloud.google.com/cloud-build/docs/api/reference/rest/v1/projects.triggers#BuildTrigger
Flag based trigger configuration
--repo-name=REPO_NAME
Name of the GitHub Repository.
This flag must be specified if any of the other arguments in this
group are specified.
--repo-owner=REPO_OWNER
Owner of the GitHub Repository.
This flag must be specified if any of the other arguments in this
group are specified.
--description=DESCRIPTION
Build trigger description.
--ignored-files=[GLOB,...]
Glob filter. Changes only affecting ignored files won't trigger
builds.
--include-logs-with-status
Build logs will be sent back to GitHub as part of the checkrun
result.
--included-files=[GLOB,...]
Glob filter. Changes affecting at least one included file will
trigger builds.
--name=NAME
Build trigger name.
--require-approval
Require manual approval for triggered builds.
--service-account=SERVICE_ACCOUNT
The service account used for all user-controlled operations
including UpdateBuildTrigger, RunBuildTrigger, CreateBuild, and
CancelBuild. If no service account is set, then the standard Cloud
Build service account ([PROJECT_NUM]@system.gserviceaccount.com) is
used instead. Format:
projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT_ID_OR_EMAIL}.
--substitutions=[KEY=VALUE,...]
Parameters to be substituted in the build specification.
For example (using some nonsensical substitution keys; all keys
must begin with an underscore):
$ gcloud builds triggers create ... --config config.yaml
--substitutions _FAVORITE_COLOR=blue,_NUM_CANDIES=10
This will result in a build where every occurrence of
${_FAVORITE_COLOR} in certain fields is replaced by "blue", and
similarly for ${_NUM_CANDIES} and "10".
Only the following built-in variables can be specified with the
--substitutions flag: REPO_NAME, BRANCH_NAME, TAG_NAME,
REVISION_ID, COMMIT_SHA, SHORT_SHA.
For more details, see:
https://cloud.google.com/cloud-build/docs/api/build-requests#substitutions
Exactly one of these must be specified:
--branch-pattern=REGEX
A regular expression specifying which git branches to match.
This pattern is used as a regex search for any incoming pushes.
For example, --branch-pattern=foo will match "foo", "foobar", and
"barfoo". Events on a branch that does not match will be ignored.
The syntax of the regular expressions accepted is the syntax
accepted by RE2 and described at
https://github.com/google/re2/wiki/Syntax.
--tag-pattern=REGEX
A regular expression specifying which git tags to match.
This pattern is used as a regex search for any incoming pushes.
For example, --tag-pattern=foo will match "foo", "foobar", and
"barfoo". Events on a tag that does not match will be ignored.
The syntax of the regular expressions accepted is the syntax
accepted by RE2 and described at
https://github.com/google/re2/wiki/Syntax.
Pull Request settings
--pull-request-pattern=REGEX
A regular expression specifying which base git branch to match
for pull request events.
This pattern is used as a regex search for the base branch (the
branch you are trying to merge into) for pull request updates.
For example, --pull-request-pattern=foo will match "foo",
"foobar", and "barfoo".
The syntax of the regular expressions accepted is the syntax
accepted by RE2 and described at
https://github.com/google/re2/wiki/Syntax.
This flag must be specified if any of the other arguments in
this group are specified.
--comment-control=COMMENT_CONTROL; default=CommentControlValueValuesEnum(COMMENTS_ENABLED, 1)
Require a repository collaborator or owner to comment '/gcbrun'
on a pull request before running the build.
Exactly one of these must be specified:
Build file configuration flags
--build-config=PATH
Path to a YAML or JSON file containing the build configuration
in the repository.
For more details, see:
https://cloud.google.com/cloud-build/docs/build-config
Build configuration file
--inline-config=PATH
Local path to a YAML or JSON file containing a build
configuration.
Dockerfile build configuration flags
--dockerfile=DOCKERFILE
Path of Dockerfile to use for builds in the repository.
If specified, a build config will be generated to run docker
build using the specified file.
The filename is relative to the Dockerfile directory.
--dockerfile-dir=DOCKERFILE_DIR; default="/"
Location of the directory containing the Dockerfile in the
repository.
The directory will also be used as the Docker build context.
--dockerfile-image=DOCKERFILE_IMAGE
Docker image name to build.
If not specified,
gcr.io/PROJECT/github.com/REPO_OWNER/REPO_NAME:$COMMIT_SHA will
be used.
Use a build configuration (cloudbuild.yaml) file for building
multiple images in a single trigger.
GCLOUD WIDE FLAGS
These flags are available to all commands: --access-token-file, --account,
--billing-project, --configuration, --flags-file, --flatten, --format,
--help, --impersonate-service-account, --log-http, --project, --quiet,
--trace-token, --user-output-enabled, --verbosity.
Run $ gcloud help for details.
NOTES
This command is currently in beta and might change without notice. This
variant is also available:
$ gcloud alpha builds triggers create github