This module creates Continuous Deployment hooks for a Github Repository, that will build and deploy using Google Cloud Build.
If you wish to use Github's fine-grained access tokens (recommended), the token will need read-only access to the Content category, and read-write access to the Webhook category.
If you wish to restrict access to specific repositories, but the organization does not appear in the dropdown, ask your github org admin to enable personal access tokens for your organization.
In order for the included google_cloudbuild_trigger to work, you will need to
connect your github
repository,
which may require installing the Google Cloud Build Github
App.
Module cloudbuild-github-deploy
This module creates Cloud Build triggers to run when the provided github repo is updated.
It handles the complexity of connecting cloud build and github together.
| Name | Version |
|---|---|
| github | >= 6.2.1 |
| ~> 7.0 | |
| google-beta | ~> 7.0 |
| Name | Version |
|---|---|
| github | >= 6.2.1 |
| ~> 7.0 | |
| random | n/a |
| Name | Type |
|---|---|
| github_repository_webhook.gh_webhook | resource |
| google_apikeys_key.api_key | resource |
| google_cloudbuild_trigger.deploy | resource |
| google_project_service.required_apis | resource |
| google_secret_manager_secret.gh_webhook | resource |
| google_secret_manager_secret_iam_policy.policy | resource |
| google_secret_manager_secret_version.wh_secv | resource |
| random_password.pass_webhook | resource |
| google_iam_policy.wh-secv-access | data source |
| google_project.project | data source |
| google_secret_manager_secret_version.gh_access | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| app_name | Name of the application being created. | any |
n/a | yes |
| cloudbuild_file | relative path from repo root to a cloudbuild.yaml file to run on push to main | string |
"cloudbuild.yaml" |
no |
| github_repo | github repository as $owner/$repo_name | any |
n/a | yes |
| github_token | GitHub user access token. | string |
"" |
no |
| project_id | Project ID to use for Cloud Build execution | any |
n/a | yes |
| token_secret | secret manager secret to use instead of github_token | string |
"" |
no |
No outputs.