# Cloud Build API . projects . triggers

## Instance Methods

Creates a new `BuildTrigger`.

Deletes a `BuildTrigger` by its project ID and trigger ID.

Returns information about a `BuildTrigger`.

Lists existing `BuildTrigger`s.

Retrieves the next page of results.

Updates a `BuildTrigger` by its project ID and trigger ID.

Runs a `BuildTrigger` at a particular source revision.

### Method Details

`create(projectId, body=None, x__xgafv=None)`

    Creates a new `BuildTrigger`.

    This API is experimental.

    Args:
      projectId: string, Required. ID of the project for which to configure automatic builds. (required)
      body: object, The request body.
        The object takes the form of:

    { # Configuration for an automated build in response to source repository
        # changes.
      "description": "A String", # Human-readable description of this trigger.
      "filename": "A String", # Path, from the source root, to a file whose contents is used for the
          # template.
      "name": "A String", # User-assigned name of the trigger. Must be unique within the project.
          # Trigger names must meet the following requirements:
          #
          # + They must contain only alphanumeric characters and dashes.
          # + They can be 1-64 characters long.
          # + They must begin and end with an alphanumeric character.
      "tags": [ # Tags for annotation of a `BuildTrigger`
        "A String",
      ],
      "id": "A String", # Output only. Unique identifier of the trigger.
      "build": { # A build resource in the Cloud Build API. # Contents of the build template.
          #
          # At a high level, a `Build` describes where to find source code, how to build
          # it (for example, the builder image to run on the source), and where to store
          # the built artifacts.
          #
          # Fields can include the following variables, which will be expanded when the
          # build is created:
          #
          # - $PROJECT_ID: the project ID of the build.
          # - $BUILD_ID: the autogenerated ID of the build.
          # - $REPO_NAME: the source repository name specified by RepoSource.
          # - $BRANCH_NAME: the branch name specified by RepoSource.
          # - $TAG_NAME: the tag name specified by RepoSource.
          # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
          #   resolved from the specified branch or tag.
          # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
        "startTime": "A String", # Output only. Time at which execution of the build was started.
        "substitutions": { # Substitutions data for `Build` resource.
          "a_key": "A String",
        },
        "timing": { # Output only. Stores timing information for phases of the build. Valid keys
            # are:
            #
            # * BUILD: time to execute all build steps
            # * PUSH: time to push all specified images.
            # * FETCHSOURCE: time to fetch source.
            #
            # If the build does not specify source or images,
            # these keys will not be included.
          "a_key": { # Start and end times for a build execution phase.
            "endTime": "A String", # End of time span.
            "startTime": "A String", # Start of time span.
          },
        },
        "createTime": "A String", # Output only. Time at which the request to create the build was received.
        "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that # Output only. A permanent fixed identifier for source.
            # some source was used for this build.
          "fileHashes": { # Output only. Hash(es) of the build source, which can be used to verify that
              # the original source integrity was maintained in the build. Note that
              # `FileHashes` will only be populated if `BuildOptions` has requested a
              # `SourceProvenanceHash`.
              #
              # The keys to this map are file paths used as build source and the values
              # contain the hash values for those files.
              #
              # If the build source came in a single package such as a gzipped tarfile
              # (`.tar.gz`), the `FileHash` will be for the single path to that file.
            "a_key": { # Container message for hashes of byte content of files, used in
                # SourceProvenance messages to verify integrity of source input to the build.
              "fileHash": [ # Collection of file hashes.
                { # Container message for hash values.
                  "type": "A String", # The type of hash that was performed.
                  "value": "A String", # The hash value.
                },
              ],
            },
          },
          "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any
              # revisions resolved.
            "branchName": "A String", # Regex matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "dir": "A String", # Directory, relative to the source root, in which to run the build.
                #
                # This must be a relative path. If a step's `dir` is specified and is an
                # absolute path, this value is ignored for that step's execution.
            "tagName": "A String", # Regex matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                # project ID requesting the build is assumed.
            "repoName": "A String", # Required. Name of the Cloud Source Repository.
            "commitSha": "A String", # Explicit commit SHA to build.
            "substitutions": { # Substitutions to use in a triggered build.
                # Should only be used with RunBuildTrigger
              "a_key": "A String",
            },
            "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                # regex.
          },
          "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any
              # generations resolved.
            "object": "A String", # Google Cloud Storage object containing the source.
                #
                # This object must be a gzipped archive file (`.tar.gz`) containing source to
                # build.
            "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                # omitted, the latest generation will be used.
            "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          },
        },
        "images": [ # A list of images to be pushed upon the successful completion of all build
            # steps.
            #
            # The images are pushed using the builder service account's credentials.
            #
            # The digests of the pushed images will be stored in the `Build` resource's
            # results field.
            #
            # If any of the images fail to be pushed, the build status is marked
            # `FAILURE`.
          "A String",
        ],
        "projectId": "A String", # Output only. ID of the project.
        "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
        "queueTtl": "A String", # TTL in queue for this build. If provided and the build is enqueued longer
            # than this value, the build will expire and the build status will be
            # `EXPIRED`.
            #
            # The TTL starts ticking from create_time.
        "finishTime": "A String", # Output only. Time at which execution of the build was finished.
            #
            # The difference between finish_time and start_time is the duration of the
            # build's execution.
        "source": { # Location of the source in a supported storage service. # The location of the source files to build.
          "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source
              # Repository.
            "branchName": "A String", # Regex matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "dir": "A String", # Directory, relative to the source root, in which to run the build.
                #
                # This must be a relative path. If a step's `dir` is specified and is an
                # absolute path, this value is ignored for that step's execution.
            "tagName": "A String", # Regex matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                # project ID requesting the build is assumed.
            "repoName": "A String", # Required. Name of the Cloud Source Repository.
            "commitSha": "A String", # Explicit commit SHA to build.
            "substitutions": { # Substitutions to use in a triggered build.
                # Should only be used with RunBuildTrigger
              "a_key": "A String",
            },
            "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                # regex.
          },
          "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage.
            "object": "A String", # Google Cloud Storage object containing the source.
                #
                # This object must be a gzipped archive file (`.tar.gz`) containing source to
                # build.
            "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                # omitted, the latest generation will be used.
            "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          },
        },
        "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
          "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
              # Storage.
          "env": [ # A list of global environment variable definitions that will exist for all
              # build steps in this build. If a variable is defined in both globally and in
              # a build step, the variable will use the build step value.
              #
              # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
              # being given the value "VALUE".
            "A String",
          ],
          "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
              # Format: projects/{project}/workerPools/{workerPool}
              #
              # This field is experimental.
          "logging": "A String", # Option to specify the logging mode, which determines where the logs are
              # stored.
          "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
              # checks.
          "requestedVerifyOption": "A String", # Requested verifiability options.
          "diskSizeGb": "A String", # Requested disk size for the VM that runs the build. Note that this is *NOT*
              # "disk free"; some of the space will be used by the operating system and
              # build utilities. Also note that this is the minimum disk size that will be
              # allocated for the build -- the build may run with a larger disk than
              # requested. At present, the maximum disk size is 1000GB; builds that request
              # more than the maximum are rejected with an error.
          "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
            "A String",
          ],
          "secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud
              # Key Management Service crypto key. These values must be specified in the
              # build's `Secret`. These variables will be available to all build steps
              # in this build.
            "A String",
          ],
          "machineType": "A String", # Compute Engine machine type on which to run the build.
          "volumes": [ # Global list of volumes to mount for ALL build steps
              #
              # Each volume is created as an empty volume prior to starting the build
              # process. Upon completion of the build, volumes and their contents are
              # discarded. Global volume names and paths cannot conflict with the volumes
              # defined a build step.
              #
              # Using a global volume in a build with only one step is not valid as
              # it is indicative of a build request with an incorrect configuration.
            { # Volume describes a Docker container volume which is mounted into build steps
                # in order to persist files across build step execution.
              "path": "A String", # Path at which to mount the volume.
                  #
                  # Paths must be absolute and cannot conflict with other volume paths on the
                  # same build step or with certain reserved volume paths.
              "name": "A String", # Name of the volume to mount.
                  #
                  # Volume names must be unique per build step and must be valid names for
                  # Docker volumes. Each named volume must be used by at least two build steps.
            },
          ],
        },
        "timeout": "A String", # Amount of time that this build should be allowed to run, to second
            # granularity. If this amount of time elapses, work on the build will cease
            # and the build status will be `TIMEOUT`.
            #
            # `timeout` starts ticking from `startTime`.
            #
            # Default time is ten minutes.
        "status": "A String", # Output only. Status of the build.
        "statusDetail": "A String", # Output only. Customer-readable message about the current status.
        "artifacts": { # Artifacts produced by a build that should be uploaded upon # Artifacts produced by the build that should be uploaded upon
            # successful completion of all build steps.
            # successful completion of all build steps.
          "objects": { # Files in the workspace to upload to Cloud Storage upon successful # A list of objects to be uploaded to Cloud Storage upon successful
              # completion of all build steps.
              #
              # Files in the workspace matching specified paths globs will be uploaded to
              # the specified Cloud Storage location using the builder service account's
              # credentials.
              #
              # The location and generation of the uploaded objects will be stored in the
              # Build resource's results field.
              #
              # If any objects fail to be pushed, the build is marked FAILURE.
              # completion of all build steps.
            "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing all artifact objects.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "location": "A String", # Cloud Storage bucket and optional object path, in the form
                # "gs://bucket/path/to/somewhere/". (see [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                #
                # Files in the workspace matching any path pattern will be uploaded to
                # Cloud Storage with this location as a prefix.
            "paths": [ # Path globs used to match files in the build's workspace.
              "A String",
            ],
          },
          "images": [ # A list of images to be pushed upon the successful completion of all build
              # steps.
              #
              # The images will be pushed using the builder service account's credentials.
              #
              # The digests of the pushed images will be stored in the Build resource's
              # results field.
              #
              # If any of the images fail to be pushed, the build is marked FAILURE.
            "A String",
          ],
        },
        "secrets": [ # Secrets to decrypt using Cloud Key Management Service.
          { # Pairs a set of secret environment variables containing encrypted
              # values with the Cloud KMS key to use to decrypt the value.
            "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
            "secretEnv": { # Map of environment variable name to its encrypted value.
                #
                # Secret environment variables must be unique across all of a build's
                # secrets, and must be used by at least one build step. Values can be at most
                # 64 KB in size. There can be at most 100 secret values across all of a
                # build's secrets.
              "a_key": "A String",
            },
          },
        ],
        "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
          "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
          "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
          "buildStepImages": [ # List of build step digests, in the order corresponding to build step
              # indices.
            "A String",
          ],
          "artifactTiming": { # Start and end times for a build execution phase. # Time to push all non-container artifacts.
            "endTime": "A String", # End of time span.
            "startTime": "A String", # Start of time span.
          },
          "buildStepOutputs": [ # List of build step outputs, produced by builder images, in the order
              # corresponding to build step indices.
              #
              # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
              # can produce this output by writing to `$BUILDER_OUTPUT/output`.
              # Only the first 4KB of data is stored.
            "A String",
          ],
          "images": [ # Container images that were built as a part of the build.
            { # An image built by the pipeline.
              "name": "A String", # Name used to push the container image to Google Container Registry, as
                  # presented to `docker push`.
              "digest": "A String", # Docker Registry 2.0 digest.
              "pushTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing the specified image.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
            },
          ],
        },
        "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
            # [Bucket Name
            # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
        "steps": [ # Required. The operations to be performed on the workspace.
          { # A step in the build pipeline.
            "entrypoint": "A String", # Entrypoint to be used instead of the build step image's default entrypoint.
                # If unset, the image's default entrypoint is used.
            "volumes": [ # List of volumes to mount into the build step.
                #
                # Each volume is created as an empty volume prior to execution of the
                # build step. Upon completion of the build, volumes and their contents are
                # discarded.
                #
                # Using a named volume in only one step is not valid as it is indicative
                # of a build request with an incorrect configuration.
              { # Volume describes a Docker container volume which is mounted into build steps
                  # in order to persist files across build step execution.
                "path": "A String", # Path at which to mount the volume.
                    #
                    # Paths must be absolute and cannot conflict with other volume paths on the
                    # same build step or with certain reserved volume paths.
                "name": "A String", # Name of the volume to mount.
                    #
                    # Volume names must be unique per build step and must be valid names for
                    # Docker volumes. Each named volume must be used by at least two build steps.
              },
            ],
            "args": [ # A list of arguments that will be presented to the step when it is started.
                #
                # If the image used to run the step's container has an entrypoint, the `args`
                # are used as arguments to that entrypoint. If the image does not define
                # an entrypoint, the first element in args is used as the entrypoint,
                # and the remainder will be used as arguments.
              "A String",
            ],
            "status": "A String", # Output only. Status of the build step. At this time, build step status is
                # only updated on build completion; step status is not updated in real-time
                # as the build progresses.
            "timeout": "A String", # Time limit for executing this build step. If not defined, the step has no
                # time limit and will be allowed to continue to run until either it completes
                # or the build itself times out.
            "pullTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pulling this build step's
                # builder image only.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "name": "A String", # Required. The name of the container image that will run this particular
                # build step.
                #
                # If the image is available in the host's Docker daemon's cache, it
                # will be run directly. If not, the host will attempt to pull the image
                # first, using the builder service account's credentials if necessary.
                #
                # The Docker daemon's cache will already have the latest versions of all of
                # the officially supported build steps
                # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).
                # The Docker daemon will also have cached many of the layers for some popular
                # images, like "ubuntu", "debian", but they will be refreshed at the time you
                # attempt to use them.
                #
                # If you built an image in a previous build step, it will be stored in the
                # host's Docker daemon's cache and is available to use as the name for a
                # later build step.
            "secretEnv": [ # A list of environment variables which are encrypted using a Cloud Key
                # Management Service crypto key. These values must be specified in the
                # build's `Secret`.
              "A String",
            ],
            "id": "A String", # Unique identifier for this build step, used in `wait_for` to
                # reference this build step as a dependency.
            "dir": "A String", # Working directory to use when running this step's container.
                #
                # If this value is a relative path, it is relative to the build's working
                # directory. If this value is absolute, it may be outside the build's working
                # directory, in which case the contents of the path may not be persisted
                # across build step executions, unless a `volume` for that path is specified.
                #
                # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
                # which specifies an absolute path, the `RepoSource` `dir` is ignored for
                # the step's execution.
            "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for executing this build step.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "waitFor": [ # The ID(s) of the step(s) that this build step depends on.
                # This build step will not start until all the build steps in `wait_for`
                # have completed successfully. If `wait_for` is empty, this build step will
                # start when all previous build steps in the `Build.Steps` list have
                # completed successfully.
              "A String",
            ],
            "env": [ # A list of environment variable definitions to be used when running a step.
                #
                # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                # being given the value "VALUE".
              "A String",
            ],
          },
        ],
        "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
            # was triggered automatically.
        "id": "A String", # Output only. Unique identifier of the build.
        "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
          "A String",
        ],
      },
      "github": { # GitHubEventsConfig describes the configuration of a trigger that creates a # GitHubEventsConfig describes the configuration of a trigger that creates
          # a build whenever a GitHub event is received.
          #
          # Mutually exclusive with `trigger_template`.
          # build whenever a GitHub event is received.
          #
          # This message is experimental.
        "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
            # Requests.
          "commentControl": "A String", # Configure builds to run only when a repository owner or collaborator
              # comments `/gcbrun`.
          "branch": "A String", # Regex of branches to match.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
        },
        "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
          "branch": "A String", # Regexes matching branches to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "invertRegex": True or False, # When true, only trigger a build if the revision regex does NOT match the
              # git_ref regex.
          "tag": "A String", # Regexes matching tags to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
        },
        "installationId": "A String", # The installationID that emits the GitHub event.
        "owner": "A String", # Owner of the repository. For example: The owner for
            # https://github.com/googlecloudplatform/cloud-builders is
            # "googlecloudplatform".
        "name": "A String", # Name of the repository. For example: The name for
            # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
      },
      "ignoredFiles": [ # ignored_files and included_files are file glob matches using
          # https://golang.org/pkg/path/filepath/#Match extended with support for "**".
          #
          # If ignored_files and changed files are both empty, then they are
          # not used to determine whether or not to trigger a build.
          #
          # If ignored_files is not empty, then we ignore any files that match
          # any of the ignored_file globs. If the change has no files that are
          # outside of the ignored_files globs, then we do not trigger a build.
        "A String",
      ],
      "substitutions": { # Substitutions for Build resource. The keys must match the following
          # regular expression: `^_[A-Z0-9_]+$`.The keys cannot conflict with the
          # keys in bindings.
        "a_key": "A String",
      },
      "includedFiles": [ # If any of the files altered in the commit pass the ignored_files
          # filter and included_files is empty, then as far as this filter is
          # concerned, we should trigger the build.
          #
          # If any of the files altered in the commit pass the ignored_files
          # filter and included_files is not empty, then we make sure that at
          # least one of those files matches a included_files glob. If not,
          # then we do not trigger a build.
        "A String",
      ],
      "disabled": True or False, # If true, the trigger will never result in a build.
      "createTime": "A String", # Output only. Time when the trigger was created.
      "triggerTemplate": { # Location of the source in a Google Cloud Source Repository. # Template describing the types of source changes to trigger a build.
          #
          # Branch and tag names in trigger templates are interpreted as regular
          # expressions. Any branch or tag change that matches that regular expression
          # will trigger a build.
          #
          # Mutually exclusive with `github`.
        "branchName": "A String", # Regex matching branches to build.
            #
            # The syntax of the regular expressions accepted is the syntax accepted by
            # RE2 and described at https://github.com/google/re2/wiki/Syntax
        "dir": "A String", # Directory, relative to the source root, in which to run the build.
            #
            # This must be a relative path. If a step's `dir` is specified and is an
            # absolute path, this value is ignored for that step's execution.
        "tagName": "A String", # Regex matching tags to build.
            #
            # The syntax of the regular expressions accepted is the syntax accepted by
            # RE2 and described at https://github.com/google/re2/wiki/Syntax
        "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
            # project ID requesting the build is assumed.
        "repoName": "A String", # Required. Name of the Cloud Source Repository.
        "commitSha": "A String", # Explicit commit SHA to build.
        "substitutions": { # Substitutions to use in a triggered build.
            # Should only be used with RunBuildTrigger
          "a_key": "A String",
        },
        "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
            # regex.
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for an automated build in response to source repository
          # changes.
        "description": "A String", # Human-readable description of this trigger.
        "filename": "A String", # Path, from the source root, to a file whose contents is used for the
            # template.
        "name": "A String", # User-assigned name of the trigger. Must be unique within the project.
            # Trigger names must meet the following requirements:
            #
            # + They must contain only alphanumeric characters and dashes.
            # + They can be 1-64 characters long.
            # + They must begin and end with an alphanumeric character.
        "tags": [ # Tags for annotation of a `BuildTrigger`
          "A String",
        ],
        "id": "A String", # Output only. Unique identifier of the trigger.
        "build": { # A build resource in the Cloud Build API. # Contents of the build template.
            #
            # At a high level, a `Build` describes where to find source code, how to build
            # it (for example, the builder image to run on the source), and where to store
            # the built artifacts.
            #
            # Fields can include the following variables, which will be expanded when the
            # build is created:
            #
            # - $PROJECT_ID: the project ID of the build.
            # - $BUILD_ID: the autogenerated ID of the build.
            # - $REPO_NAME: the source repository name specified by RepoSource.
            # - $BRANCH_NAME: the branch name specified by RepoSource.
            # - $TAG_NAME: the tag name specified by RepoSource.
            # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
            #   resolved from the specified branch or tag.
            # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
          "startTime": "A String", # Output only. Time at which execution of the build was started.
          "substitutions": { # Substitutions data for `Build` resource.
            "a_key": "A String",
          },
          "timing": { # Output only. Stores timing information for phases of the build. Valid keys
              # are:
              #
              # * BUILD: time to execute all build steps
              # * PUSH: time to push all specified images.
              # * FETCHSOURCE: time to fetch source.
              #
              # If the build does not specify source or images,
              # these keys will not be included.
            "a_key": { # Start and end times for a build execution phase.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
          },
          "createTime": "A String", # Output only. Time at which the request to create the build was received.
          "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that # Output only. A permanent fixed identifier for source.
              # some source was used for this build.
            "fileHashes": { # Output only. Hash(es) of the build source, which can be used to verify that
                # the original source integrity was maintained in the build. Note that
                # `FileHashes` will only be populated if `BuildOptions` has requested a
                # `SourceProvenanceHash`.
                #
                # The keys to this map are file paths used as build source and the values
                # contain the hash values for those files.
                #
                # If the build source came in a single package such as a gzipped tarfile
                # (`.tar.gz`), the `FileHash` will be for the single path to that file.
              "a_key": { # Container message for hashes of byte content of files, used in
                  # SourceProvenance messages to verify integrity of source input to the build.
                "fileHash": [ # Collection of file hashes.
                  { # Container message for hash values.
                    "type": "A String", # The type of hash that was performed.
                    "value": "A String", # The hash value.
                  },
                ],
              },
            },
            "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any
                # revisions resolved.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
            "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any
                # generations resolved.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "images": [ # A list of images to be pushed upon the successful completion of all build
              # steps.
              #
              # The images are pushed using the builder service account's credentials.
              #
              # The digests of the pushed images will be stored in the `Build` resource's
              # results field.
              #
              # If any of the images fail to be pushed, the build status is marked
              # `FAILURE`.
            "A String",
          ],
          "projectId": "A String", # Output only. ID of the project.
          "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
          "queueTtl": "A String", # TTL in queue for this build. If provided and the build is enqueued longer
              # than this value, the build will expire and the build status will be
              # `EXPIRED`.
              #
              # The TTL starts ticking from create_time.
          "finishTime": "A String", # Output only. Time at which execution of the build was finished.
              #
              # The difference between finish_time and start_time is the duration of the
              # build's execution.
          "source": { # Location of the source in a supported storage service. # The location of the source files to build.
            "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source
                # Repository.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
            "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
            "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
                # Storage.
            "env": [ # A list of global environment variable definitions that will exist for all
                # build steps in this build. If a variable is defined in both globally and in
                # a build step, the variable will use the build step value.
                #
                # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                # being given the value "VALUE".
              "A String",
            ],
            "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
                # Format: projects/{project}/workerPools/{workerPool}
                #
                # This field is experimental.
            "logging": "A String", # Option to specify the logging mode, which determines where the logs are
                # stored.
            "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
                # checks.
            "requestedVerifyOption": "A String", # Requested verifiability options.
            "diskSizeGb": "A String", # Requested disk size for the VM that runs the build. Note that this is *NOT*
                # "disk free"; some of the space will be used by the operating system and
                # build utilities. Also note that this is the minimum disk size that will be
                # allocated for the build -- the build may run with a larger disk than
                # requested. At present, the maximum disk size is 1000GB; builds that request
                # more than the maximum are rejected with an error.
            "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
              "A String",
            ],
            "secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud
                # Key Management Service crypto key. These values must be specified in the
                # build's `Secret`. These variables will be available to all build steps
                # in this build.
              "A String",
            ],
            "machineType": "A String", # Compute Engine machine type on which to run the build.
            "volumes": [ # Global list of volumes to mount for ALL build steps
                #
                # Each volume is created as an empty volume prior to starting the build
                # process. Upon completion of the build, volumes and their contents are
                # discarded. Global volume names and paths cannot conflict with the volumes
                # defined a build step.
                #
                # Using a global volume in a build with only one step is not valid as
                # it is indicative of a build request with an incorrect configuration.
              { # Volume describes a Docker container volume which is mounted into build steps
                  # in order to persist files across build step execution.
                "path": "A String", # Path at which to mount the volume.
                    #
                    # Paths must be absolute and cannot conflict with other volume paths on the
                    # same build step or with certain reserved volume paths.
                "name": "A String", # Name of the volume to mount.
                    #
                    # Volume names must be unique per build step and must be valid names for
                    # Docker volumes. Each named volume must be used by at least two build steps.
              },
            ],
          },
          "timeout": "A String", # Amount of time that this build should be allowed to run, to second
              # granularity. If this amount of time elapses, work on the build will cease
              # and the build status will be `TIMEOUT`.
              #
              # `timeout` starts ticking from `startTime`.
              #
              # Default time is ten minutes.
          "status": "A String", # Output only. Status of the build.
          "statusDetail": "A String", # Output only. Customer-readable message about the current status.
          "artifacts": { # Artifacts produced by a build that should be uploaded upon # Artifacts produced by the build that should be uploaded upon
              # successful completion of all build steps.
              # successful completion of all build steps.
            "objects": { # Files in the workspace to upload to Cloud Storage upon successful # A list of objects to be uploaded to Cloud Storage upon successful
                # completion of all build steps.
                #
                # Files in the workspace matching specified paths globs will be uploaded to
                # the specified Cloud Storage location using the builder service account's
                # credentials.
                #
                # The location and generation of the uploaded objects will be stored in the
                # Build resource's results field.
                #
                # If any objects fail to be pushed, the build is marked FAILURE.
                # completion of all build steps.
              "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing all artifact objects.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "location": "A String", # Cloud Storage bucket and optional object path, in the form
                  # "gs://bucket/path/to/somewhere/". (see [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                  #
                  # Files in the workspace matching any path pattern will be uploaded to
                  # Cloud Storage with this location as a prefix.
              "paths": [ # Path globs used to match files in the build's workspace.
                "A String",
              ],
            },
            "images": [ # A list of images to be pushed upon the successful completion of all build
                # steps.
                #
                # The images will be pushed using the builder service account's credentials.
                #
                # The digests of the pushed images will be stored in the Build resource's
                # results field.
                #
                # If any of the images fail to be pushed, the build is marked FAILURE.
              "A String",
            ],
          },
          "secrets": [ # Secrets to decrypt using Cloud Key Management Service.
            { # Pairs a set of secret environment variables containing encrypted
                # values with the Cloud KMS key to use to decrypt the value.
              "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
              "secretEnv": { # Map of environment variable name to its encrypted value.
                  #
                  # Secret environment variables must be unique across all of a build's
                  # secrets, and must be used by at least one build step. Values can be at most
                  # 64 KB in size. There can be at most 100 secret values across all of a
                  # build's secrets.
                "a_key": "A String",
              },
            },
          ],
          "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
            "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
            "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
            "buildStepImages": [ # List of build step digests, in the order corresponding to build step
                # indices.
              "A String",
            ],
            "artifactTiming": { # Start and end times for a build execution phase. # Time to push all non-container artifacts.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "buildStepOutputs": [ # List of build step outputs, produced by builder images, in the order
                # corresponding to build step indices.
                #
                # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
                # can produce this output by writing to `$BUILDER_OUTPUT/output`.
                # Only the first 4KB of data is stored.
              "A String",
            ],
            "images": [ # Container images that were built as a part of the build.
              { # An image built by the pipeline.
                "name": "A String", # Name used to push the container image to Google Container Registry, as
                    # presented to `docker push`.
                "digest": "A String", # Docker Registry 2.0 digest.
                "pushTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing the specified image.
                  "endTime": "A String", # End of time span.
                  "startTime": "A String", # Start of time span.
                },
              },
            ],
          },
          "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
              # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
          "steps": [ # Required. The operations to be performed on the workspace.
            { # A step in the build pipeline.
              "entrypoint": "A String", # Entrypoint to be used instead of the build step image's default entrypoint.
                  # If unset, the image's default entrypoint is used.
              "volumes": [ # List of volumes to mount into the build step.
                  #
                  # Each volume is created as an empty volume prior to execution of the
                  # build step. Upon completion of the build, volumes and their contents are
                  # discarded.
                  #
                  # Using a named volume in only one step is not valid as it is indicative
                  # of a build request with an incorrect configuration.
                { # Volume describes a Docker container volume which is mounted into build steps
                    # in order to persist files across build step execution.
                  "path": "A String", # Path at which to mount the volume.
                      #
                      # Paths must be absolute and cannot conflict with other volume paths on the
                      # same build step or with certain reserved volume paths.
                  "name": "A String", # Name of the volume to mount.
                      #
                      # Volume names must be unique per build step and must be valid names for
                      # Docker volumes. Each named volume must be used by at least two build steps.
                },
              ],
              "args": [ # A list of arguments that will be presented to the step when it is started.
                  #
                  # If the image used to run the step's container has an entrypoint, the `args`
                  # are used as arguments to that entrypoint. If the image does not define
                  # an entrypoint, the first element in args is used as the entrypoint,
                  # and the remainder will be used as arguments.
                "A String",
              ],
              "status": "A String", # Output only. Status of the build step. At this time, build step status is
                  # only updated on build completion; step status is not updated in real-time
                  # as the build progresses.
              "timeout": "A String", # Time limit for executing this build step. If not defined, the step has no
                  # time limit and will be allowed to continue to run until either it completes
                  # or the build itself times out.
              "pullTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pulling this build step's
                  # builder image only.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "name": "A String", # Required. The name of the container image that will run this particular
                  # build step.
                  #
                  # If the image is available in the host's Docker daemon's cache, it
                  # will be run directly. If not, the host will attempt to pull the image
                  # first, using the builder service account's credentials if necessary.
                  #
                  # The Docker daemon's cache will already have the latest versions of all of
                  # the officially supported build steps
                  # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).
                  # The Docker daemon will also have cached many of the layers for some popular
                  # images, like "ubuntu", "debian", but they will be refreshed at the time you
                  # attempt to use them.
                  #
                  # If you built an image in a previous build step, it will be stored in the
                  # host's Docker daemon's cache and is available to use as the name for a
                  # later build step.
              "secretEnv": [ # A list of environment variables which are encrypted using a Cloud Key
                  # Management Service crypto key. These values must be specified in the
                  # build's `Secret`.
                "A String",
              ],
              "id": "A String", # Unique identifier for this build step, used in `wait_for` to
                  # reference this build step as a dependency.
              "dir": "A String", # Working directory to use when running this step's container.
                  #
                  # If this value is a relative path, it is relative to the build's working
                  # directory. If this value is absolute, it may be outside the build's working
                  # directory, in which case the contents of the path may not be persisted
                  # across build step executions, unless a `volume` for that path is specified.
                  #
                  # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
                  # which specifies an absolute path, the `RepoSource` `dir` is ignored for
                  # the step's execution.
              "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for executing this build step.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "waitFor": [ # The ID(s) of the step(s) that this build step depends on.
                  # This build step will not start until all the build steps in `wait_for`
                  # have completed successfully. If `wait_for` is empty, this build step will
                  # start when all previous build steps in the `Build.Steps` list have
                  # completed successfully.
                "A String",
              ],
              "env": [ # A list of environment variable definitions to be used when running a step.
                  #
                  # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                  # being given the value "VALUE".
                "A String",
              ],
            },
          ],
          "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
              # was triggered automatically.
          "id": "A String", # Output only. Unique identifier of the build.
          "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
            "A String",
          ],
        },
        "github": { # GitHubEventsConfig describes the configuration of a trigger that creates a # GitHubEventsConfig describes the configuration of a trigger that creates
            # a build whenever a GitHub event is received.
            #
            # Mutually exclusive with `trigger_template`.
            # build whenever a GitHub event is received.
            #
            # This message is experimental.
          "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
              # Requests.
            "commentControl": "A String", # Configure builds to run only when a repository owner or collaborator
                # comments `/gcbrun`.
            "branch": "A String", # Regex of branches to match.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
          },
          "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
            "branch": "A String", # Regexes matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "invertRegex": True or False, # When true, only trigger a build if the revision regex does NOT match the
                # git_ref regex.
            "tag": "A String", # Regexes matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
          },
          "installationId": "A String", # The installationID that emits the GitHub event.
          "owner": "A String", # Owner of the repository. For example: The owner for
              # https://github.com/googlecloudplatform/cloud-builders is
              # "googlecloudplatform".
          "name": "A String", # Name of the repository. For example: The name for
              # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
        },
        "ignoredFiles": [ # ignored_files and included_files are file glob matches using
            # https://golang.org/pkg/path/filepath/#Match extended with support for "**".
            #
            # If ignored_files and changed files are both empty, then they are
            # not used to determine whether or not to trigger a build.
            #
            # If ignored_files is not empty, then we ignore any files that match
            # any of the ignored_file globs. If the change has no files that are
            # outside of the ignored_files globs, then we do not trigger a build.
          "A String",
        ],
        "substitutions": { # Substitutions for Build resource. The keys must match the following
            # regular expression: `^_[A-Z0-9_]+$`.The keys cannot conflict with the
            # keys in bindings.
          "a_key": "A String",
        },
        "includedFiles": [ # If any of the files altered in the commit pass the ignored_files
            # filter and included_files is empty, then as far as this filter is
            # concerned, we should trigger the build.
            #
            # If any of the files altered in the commit pass the ignored_files
            # filter and included_files is not empty, then we make sure that at
            # least one of those files matches a included_files glob. If not,
            # then we do not trigger a build.
          "A String",
        ],
        "disabled": True or False, # If true, the trigger will never result in a build.
        "createTime": "A String", # Output only. Time when the trigger was created.
        "triggerTemplate": { # Location of the source in a Google Cloud Source Repository. # Template describing the types of source changes to trigger a build.
            #
            # Branch and tag names in trigger templates are interpreted as regular
            # expressions. Any branch or tag change that matches that regular expression
            # will trigger a build.
            #
            # Mutually exclusive with `github`.
          "branchName": "A String", # Regex matching branches to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "dir": "A String", # Directory, relative to the source root, in which to run the build.
              #
              # This must be a relative path. If a step's `dir` is specified and is an
              # absolute path, this value is ignored for that step's execution.
          "tagName": "A String", # Regex matching tags to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "commitSha": "A String", # Explicit commit SHA to build.
          "substitutions": { # Substitutions to use in a triggered build.
              # Should only be used with RunBuildTrigger
            "a_key": "A String",
          },
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
        },
      }

`delete(projectId, triggerId, x__xgafv=None)`

    Deletes a `BuildTrigger` by its project ID and trigger ID.

    This API is experimental.

    Args:
      projectId: string, Required. ID of the project that owns the trigger. (required)
      triggerId: string, Required. ID of the `BuildTrigger` to delete. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated
          # empty messages in your APIs. A typical example is to use it as the request
          # or the response type of an API method. For instance:
          #
          #     service Foo {
          #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
          #     }
          #
          # The JSON representation for `Empty` is empty JSON object `{}`.
      }

`get(projectId, triggerId, x__xgafv=None)`

    Returns information about a `BuildTrigger`.

    This API is experimental.

    Args:
      projectId: string, Required. ID of the project that owns the trigger. (required)
      triggerId: string, Required. Identifier (`id` or `name`) of the `BuildTrigger` to get. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for an automated build in response to source repository
          # changes.
        "description": "A String", # Human-readable description of this trigger.
        "filename": "A String", # Path, from the source root, to a file whose contents is used for the
            # template.
        "name": "A String", # User-assigned name of the trigger. Must be unique within the project.
            # Trigger names must meet the following requirements:
            #
            # + They must contain only alphanumeric characters and dashes.
            # + They can be 1-64 characters long.
            # + They must begin and end with an alphanumeric character.
        "tags": [ # Tags for annotation of a `BuildTrigger`
          "A String",
        ],
        "id": "A String", # Output only. Unique identifier of the trigger.
        "build": { # A build resource in the Cloud Build API. # Contents of the build template.
            #
            # At a high level, a `Build` describes where to find source code, how to build
            # it (for example, the builder image to run on the source), and where to store
            # the built artifacts.
            #
            # Fields can include the following variables, which will be expanded when the
            # build is created:
            #
            # - $PROJECT_ID: the project ID of the build.
            # - $BUILD_ID: the autogenerated ID of the build.
            # - $REPO_NAME: the source repository name specified by RepoSource.
            # - $BRANCH_NAME: the branch name specified by RepoSource.
            # - $TAG_NAME: the tag name specified by RepoSource.
            # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
            #   resolved from the specified branch or tag.
            # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
          "startTime": "A String", # Output only. Time at which execution of the build was started.
          "substitutions": { # Substitutions data for `Build` resource.
            "a_key": "A String",
          },
          "timing": { # Output only. Stores timing information for phases of the build. Valid keys
              # are:
              #
              # * BUILD: time to execute all build steps
              # * PUSH: time to push all specified images.
              # * FETCHSOURCE: time to fetch source.
              #
              # If the build does not specify source or images,
              # these keys will not be included.
            "a_key": { # Start and end times for a build execution phase.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
          },
          "createTime": "A String", # Output only. Time at which the request to create the build was received.
          "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that # Output only. A permanent fixed identifier for source.
              # some source was used for this build.
            "fileHashes": { # Output only. Hash(es) of the build source, which can be used to verify that
                # the original source integrity was maintained in the build. Note that
                # `FileHashes` will only be populated if `BuildOptions` has requested a
                # `SourceProvenanceHash`.
                #
                # The keys to this map are file paths used as build source and the values
                # contain the hash values for those files.
                #
                # If the build source came in a single package such as a gzipped tarfile
                # (`.tar.gz`), the `FileHash` will be for the single path to that file.
              "a_key": { # Container message for hashes of byte content of files, used in
                  # SourceProvenance messages to verify integrity of source input to the build.
                "fileHash": [ # Collection of file hashes.
                  { # Container message for hash values.
                    "type": "A String", # The type of hash that was performed.
                    "value": "A String", # The hash value.
                  },
                ],
              },
            },
            "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any
                # revisions resolved.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
            "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any
                # generations resolved.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "images": [ # A list of images to be pushed upon the successful completion of all build
              # steps.
              #
              # The images are pushed using the builder service account's credentials.
              #
              # The digests of the pushed images will be stored in the `Build` resource's
              # results field.
              #
              # If any of the images fail to be pushed, the build status is marked
              # `FAILURE`.
            "A String",
          ],
          "projectId": "A String", # Output only. ID of the project.
          "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
          "queueTtl": "A String", # TTL in queue for this build. If provided and the build is enqueued longer
              # than this value, the build will expire and the build status will be
              # `EXPIRED`.
              #
              # The TTL starts ticking from create_time.
          "finishTime": "A String", # Output only. Time at which execution of the build was finished.
              #
              # The difference between finish_time and start_time is the duration of the
              # build's execution.
          "source": { # Location of the source in a supported storage service. # The location of the source files to build.
            "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source
                # Repository.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
            "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
            "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
                # Storage.
            "env": [ # A list of global environment variable definitions that will exist for all
                # build steps in this build. If a variable is defined in both globally and in
                # a build step, the variable will use the build step value.
                #
                # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                # being given the value "VALUE".
              "A String",
            ],
            "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
                # Format: projects/{project}/workerPools/{workerPool}
                #
                # This field is experimental.
            "logging": "A String", # Option to specify the logging mode, which determines where the logs are
                # stored.
            "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
                # checks.
            "requestedVerifyOption": "A String", # Requested verifiability options.
            "diskSizeGb": "A String", # Requested disk size for the VM that runs the build. Note that this is *NOT*
                # "disk free"; some of the space will be used by the operating system and
                # build utilities. Also note that this is the minimum disk size that will be
                # allocated for the build -- the build may run with a larger disk than
                # requested. At present, the maximum disk size is 1000GB; builds that request
                # more than the maximum are rejected with an error.
            "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
              "A String",
            ],
            "secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud
                # Key Management Service crypto key. These values must be specified in the
                # build's `Secret`. These variables will be available to all build steps
                # in this build.
              "A String",
            ],
            "machineType": "A String", # Compute Engine machine type on which to run the build.
            "volumes": [ # Global list of volumes to mount for ALL build steps
                #
                # Each volume is created as an empty volume prior to starting the build
                # process. Upon completion of the build, volumes and their contents are
                # discarded. Global volume names and paths cannot conflict with the volumes
                # defined a build step.
                #
                # Using a global volume in a build with only one step is not valid as
                # it is indicative of a build request with an incorrect configuration.
              { # Volume describes a Docker container volume which is mounted into build steps
                  # in order to persist files across build step execution.
                "path": "A String", # Path at which to mount the volume.
                    #
                    # Paths must be absolute and cannot conflict with other volume paths on the
                    # same build step or with certain reserved volume paths.
                "name": "A String", # Name of the volume to mount.
                    #
                    # Volume names must be unique per build step and must be valid names for
                    # Docker volumes. Each named volume must be used by at least two build steps.
              },
            ],
          },
          "timeout": "A String", # Amount of time that this build should be allowed to run, to second
              # granularity. If this amount of time elapses, work on the build will cease
              # and the build status will be `TIMEOUT`.
              #
              # `timeout` starts ticking from `startTime`.
              #
              # Default time is ten minutes.
          "status": "A String", # Output only. Status of the build.
          "statusDetail": "A String", # Output only. Customer-readable message about the current status.
          "artifacts": { # Artifacts produced by a build that should be uploaded upon # Artifacts produced by the build that should be uploaded upon
              # successful completion of all build steps.
              # successful completion of all build steps.
            "objects": { # Files in the workspace to upload to Cloud Storage upon successful # A list of objects to be uploaded to Cloud Storage upon successful
                # completion of all build steps.
                #
                # Files in the workspace matching specified paths globs will be uploaded to
                # the specified Cloud Storage location using the builder service account's
                # credentials.
                #
                # The location and generation of the uploaded objects will be stored in the
                # Build resource's results field.
                #
                # If any objects fail to be pushed, the build is marked FAILURE.
                # completion of all build steps.
              "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing all artifact objects.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "location": "A String", # Cloud Storage bucket and optional object path, in the form
                  # "gs://bucket/path/to/somewhere/". (see [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                  #
                  # Files in the workspace matching any path pattern will be uploaded to
                  # Cloud Storage with this location as a prefix.
              "paths": [ # Path globs used to match files in the build's workspace.
                "A String",
              ],
            },
            "images": [ # A list of images to be pushed upon the successful completion of all build
                # steps.
                #
                # The images will be pushed using the builder service account's credentials.
                #
                # The digests of the pushed images will be stored in the Build resource's
                # results field.
                #
                # If any of the images fail to be pushed, the build is marked FAILURE.
              "A String",
            ],
          },
          "secrets": [ # Secrets to decrypt using Cloud Key Management Service.
            { # Pairs a set of secret environment variables containing encrypted
                # values with the Cloud KMS key to use to decrypt the value.
              "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
              "secretEnv": { # Map of environment variable name to its encrypted value.
                  #
                  # Secret environment variables must be unique across all of a build's
                  # secrets, and must be used by at least one build step. Values can be at most
                  # 64 KB in size. There can be at most 100 secret values across all of a
                  # build's secrets.
                "a_key": "A String",
              },
            },
          ],
          "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
            "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
            "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
            "buildStepImages": [ # List of build step digests, in the order corresponding to build step
                # indices.
              "A String",
            ],
            "artifactTiming": { # Start and end times for a build execution phase. # Time to push all non-container artifacts.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "buildStepOutputs": [ # List of build step outputs, produced by builder images, in the order
                # corresponding to build step indices.
                #
                # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
                # can produce this output by writing to `$BUILDER_OUTPUT/output`.
                # Only the first 4KB of data is stored.
              "A String",
            ],
            "images": [ # Container images that were built as a part of the build.
              { # An image built by the pipeline.
                "name": "A String", # Name used to push the container image to Google Container Registry, as
                    # presented to `docker push`.
                "digest": "A String", # Docker Registry 2.0 digest.
                "pushTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing the specified image.
                  "endTime": "A String", # End of time span.
                  "startTime": "A String", # Start of time span.
                },
              },
            ],
          },
          "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
              # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
          "steps": [ # Required. The operations to be performed on the workspace.
            { # A step in the build pipeline.
              "entrypoint": "A String", # Entrypoint to be used instead of the build step image's default entrypoint.
                  # If unset, the image's default entrypoint is used.
              "volumes": [ # List of volumes to mount into the build step.
                  #
                  # Each volume is created as an empty volume prior to execution of the
                  # build step. Upon completion of the build, volumes and their contents are
                  # discarded.
                  #
                  # Using a named volume in only one step is not valid as it is indicative
                  # of a build request with an incorrect configuration.
                { # Volume describes a Docker container volume which is mounted into build steps
                    # in order to persist files across build step execution.
                  "path": "A String", # Path at which to mount the volume.
                      #
                      # Paths must be absolute and cannot conflict with other volume paths on the
                      # same build step or with certain reserved volume paths.
                  "name": "A String", # Name of the volume to mount.
                      #
                      # Volume names must be unique per build step and must be valid names for
                      # Docker volumes. Each named volume must be used by at least two build steps.
                },
              ],
              "args": [ # A list of arguments that will be presented to the step when it is started.
                  #
                  # If the image used to run the step's container has an entrypoint, the `args`
                  # are used as arguments to that entrypoint. If the image does not define
                  # an entrypoint, the first element in args is used as the entrypoint,
                  # and the remainder will be used as arguments.
                "A String",
              ],
              "status": "A String", # Output only. Status of the build step. At this time, build step status is
                  # only updated on build completion; step status is not updated in real-time
                  # as the build progresses.
              "timeout": "A String", # Time limit for executing this build step. If not defined, the step has no
                  # time limit and will be allowed to continue to run until either it completes
                  # or the build itself times out.
              "pullTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pulling this build step's
                  # builder image only.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "name": "A String", # Required. The name of the container image that will run this particular
                  # build step.
                  #
                  # If the image is available in the host's Docker daemon's cache, it
                  # will be run directly. If not, the host will attempt to pull the image
                  # first, using the builder service account's credentials if necessary.
                  #
                  # The Docker daemon's cache will already have the latest versions of all of
                  # the officially supported build steps
                  # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).
                  # The Docker daemon will also have cached many of the layers for some popular
                  # images, like "ubuntu", "debian", but they will be refreshed at the time you
                  # attempt to use them.
                  #
                  # If you built an image in a previous build step, it will be stored in the
                  # host's Docker daemon's cache and is available to use as the name for a
                  # later build step.
              "secretEnv": [ # A list of environment variables which are encrypted using a Cloud Key
                  # Management Service crypto key. These values must be specified in the
                  # build's `Secret`.
                "A String",
              ],
              "id": "A String", # Unique identifier for this build step, used in `wait_for` to
                  # reference this build step as a dependency.
              "dir": "A String", # Working directory to use when running this step's container.
                  #
                  # If this value is a relative path, it is relative to the build's working
                  # directory. If this value is absolute, it may be outside the build's working
                  # directory, in which case the contents of the path may not be persisted
                  # across build step executions, unless a `volume` for that path is specified.
                  #
                  # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
                  # which specifies an absolute path, the `RepoSource` `dir` is ignored for
                  # the step's execution.
              "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for executing this build step.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "waitFor": [ # The ID(s) of the step(s) that this build step depends on.
                  # This build step will not start until all the build steps in `wait_for`
                  # have completed successfully. If `wait_for` is empty, this build step will
                  # start when all previous build steps in the `Build.Steps` list have
                  # completed successfully.
                "A String",
              ],
              "env": [ # A list of environment variable definitions to be used when running a step.
                  #
                  # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                  # being given the value "VALUE".
                "A String",
              ],
            },
          ],
          "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
              # was triggered automatically.
          "id": "A String", # Output only. Unique identifier of the build.
          "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
            "A String",
          ],
        },
        "github": { # GitHubEventsConfig describes the configuration of a trigger that creates a # GitHubEventsConfig describes the configuration of a trigger that creates
            # a build whenever a GitHub event is received.
            #
            # Mutually exclusive with `trigger_template`.
            # build whenever a GitHub event is received.
            #
            # This message is experimental.
          "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
              # Requests.
            "commentControl": "A String", # Configure builds to run only when a repository owner or collaborator
                # comments `/gcbrun`.
            "branch": "A String", # Regex of branches to match.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
          },
          "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
            "branch": "A String", # Regexes matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "invertRegex": True or False, # When true, only trigger a build if the revision regex does NOT match the
                # git_ref regex.
            "tag": "A String", # Regexes matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
          },
          "installationId": "A String", # The installationID that emits the GitHub event.
          "owner": "A String", # Owner of the repository. For example: The owner for
              # https://github.com/googlecloudplatform/cloud-builders is
              # "googlecloudplatform".
          "name": "A String", # Name of the repository. For example: The name for
              # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
        },
        "ignoredFiles": [ # ignored_files and included_files are file glob matches using
            # https://golang.org/pkg/path/filepath/#Match extended with support for "**".
            #
            # If ignored_files and changed files are both empty, then they are
            # not used to determine whether or not to trigger a build.
            #
            # If ignored_files is not empty, then we ignore any files that match
            # any of the ignored_file globs. If the change has no files that are
            # outside of the ignored_files globs, then we do not trigger a build.
          "A String",
        ],
        "substitutions": { # Substitutions for Build resource. The keys must match the following
            # regular expression: `^_[A-Z0-9_]+$`.The keys cannot conflict with the
            # keys in bindings.
          "a_key": "A String",
        },
        "includedFiles": [ # If any of the files altered in the commit pass the ignored_files
            # filter and included_files is empty, then as far as this filter is
            # concerned, we should trigger the build.
            #
            # If any of the files altered in the commit pass the ignored_files
            # filter and included_files is not empty, then we make sure that at
            # least one of those files matches a included_files glob. If not,
            # then we do not trigger a build.
          "A String",
        ],
        "disabled": True or False, # If true, the trigger will never result in a build.
        "createTime": "A String", # Output only. Time when the trigger was created.
        "triggerTemplate": { # Location of the source in a Google Cloud Source Repository. # Template describing the types of source changes to trigger a build.
            #
            # Branch and tag names in trigger templates are interpreted as regular
            # expressions. Any branch or tag change that matches that regular expression
            # will trigger a build.
            #
            # Mutually exclusive with `github`.
          "branchName": "A String", # Regex matching branches to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "dir": "A String", # Directory, relative to the source root, in which to run the build.
              #
              # This must be a relative path. If a step's `dir` is specified and is an
              # absolute path, this value is ignored for that step's execution.
          "tagName": "A String", # Regex matching tags to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "commitSha": "A String", # Explicit commit SHA to build.
          "substitutions": { # Substitutions to use in a triggered build.
              # Should only be used with RunBuildTrigger
            "a_key": "A String",
          },
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
        },
      }

`list(projectId, pageToken=None, pageSize=None, x__xgafv=None)`

    Lists existing `BuildTrigger`s.

    This API is experimental.

    Args:
      projectId: string, Required. ID of the project for which to list BuildTriggers. (required)
      pageToken: string, Token to provide to skip to a particular spot in the list.
      pageSize: integer, Number of results to return in the list.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response containing existing `BuildTriggers`.
        "triggers": [ # `BuildTriggers` for the project, sorted by `create_time` descending.
          { # Configuration for an automated build in response to source repository
              # changes.
            "description": "A String", # Human-readable description of this trigger.
            "filename": "A String", # Path, from the source root, to a file whose contents is used for the
                # template.
            "name": "A String", # User-assigned name of the trigger. Must be unique within the project.
                # Trigger names must meet the following requirements:
                #
                # + They must contain only alphanumeric characters and dashes.
                # + They can be 1-64 characters long.
                # + They must begin and end with an alphanumeric character.
            "tags": [ # Tags for annotation of a `BuildTrigger`
              "A String",
            ],
            "id": "A String", # Output only. Unique identifier of the trigger.
            "build": { # A build resource in the Cloud Build API. # Contents of the build template.
                #
                # At a high level, a `Build` describes where to find source code, how to build
                # it (for example, the builder image to run on the source), and where to store
                # the built artifacts.
                #
                # Fields can include the following variables, which will be expanded when the
                # build is created:
                #
                # - $PROJECT_ID: the project ID of the build.
                # - $BUILD_ID: the autogenerated ID of the build.
                # - $REPO_NAME: the source repository name specified by RepoSource.
                # - $BRANCH_NAME: the branch name specified by RepoSource.
                # - $TAG_NAME: the tag name specified by RepoSource.
                # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
                #   resolved from the specified branch or tag.
                # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
              "startTime": "A String", # Output only. Time at which execution of the build was started.
              "substitutions": { # Substitutions data for `Build` resource.
                "a_key": "A String",
              },
              "timing": { # Output only. Stores timing information for phases of the build. Valid keys
                  # are:
                  #
                  # * BUILD: time to execute all build steps
                  # * PUSH: time to push all specified images.
                  # * FETCHSOURCE: time to fetch source.
                  #
                  # If the build does not specify source or images,
                  # these keys will not be included.
                "a_key": { # Start and end times for a build execution phase.
                  "endTime": "A String", # End of time span.
                  "startTime": "A String", # Start of time span.
                },
              },
              "createTime": "A String", # Output only. Time at which the request to create the build was received.
              "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that # Output only. A permanent fixed identifier for source.
                  # some source was used for this build.
                "fileHashes": { # Output only. Hash(es) of the build source, which can be used to verify that
                    # the original source integrity was maintained in the build. Note that
                    # `FileHashes` will only be populated if `BuildOptions` has requested a
                    # `SourceProvenanceHash`.
                    #
                    # The keys to this map are file paths used as build source and the values
                    # contain the hash values for those files.
                    #
                    # If the build source came in a single package such as a gzipped tarfile
                    # (`.tar.gz`), the `FileHash` will be for the single path to that file.
                  "a_key": { # Container message for hashes of byte content of files, used in
                      # SourceProvenance messages to verify integrity of source input to the build.
                    "fileHash": [ # Collection of file hashes.
                      { # Container message for hash values.
                        "type": "A String", # The type of hash that was performed.
                        "value": "A String", # The hash value.
                      },
                    ],
                  },
                },
                "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any
                    # revisions resolved.
                  "branchName": "A String", # Regex matching branches to build.
                      #
                      # The syntax of the regular expressions accepted is the syntax accepted by
                      # RE2 and described at https://github.com/google/re2/wiki/Syntax
                  "dir": "A String", # Directory, relative to the source root, in which to run the build.
                      #
                      # This must be a relative path. If a step's `dir` is specified and is an
                      # absolute path, this value is ignored for that step's execution.
                  "tagName": "A String", # Regex matching tags to build.
                      #
                      # The syntax of the regular expressions accepted is the syntax accepted by
                      # RE2 and described at https://github.com/google/re2/wiki/Syntax
                  "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                      # project ID requesting the build is assumed.
                  "repoName": "A String", # Required. Name of the Cloud Source Repository.
                  "commitSha": "A String", # Explicit commit SHA to build.
                  "substitutions": { # Substitutions to use in a triggered build.
                      # Should only be used with RunBuildTrigger
                    "a_key": "A String",
                  },
                  "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                      # regex.
                },
                "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any
                    # generations resolved.
                  "object": "A String", # Google Cloud Storage object containing the source.
                      #
                      # This object must be a gzipped archive file (`.tar.gz`) containing source to
                      # build.
                  "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                      # omitted, the latest generation will be used.
                  "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                      # [Bucket Name
                      # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                },
              },
              "images": [ # A list of images to be pushed upon the successful completion of all build
                  # steps.
                  #
                  # The images are pushed using the builder service account's credentials.
                  #
                  # The digests of the pushed images will be stored in the `Build` resource's
                  # results field.
                  #
                  # If any of the images fail to be pushed, the build status is marked
                  # `FAILURE`.
                "A String",
              ],
              "projectId": "A String", # Output only. ID of the project.
              "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
              "queueTtl": "A String", # TTL in queue for this build. If provided and the build is enqueued longer
                  # than this value, the build will expire and the build status will be
                  # `EXPIRED`.
                  #
                  # The TTL starts ticking from create_time.
              "finishTime": "A String", # Output only. Time at which execution of the build was finished.
                  #
                  # The difference between finish_time and start_time is the duration of the
                  # build's execution.
              "source": { # Location of the source in a supported storage service. # The location of the source files to build.
                "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source
                    # Repository.
                  "branchName": "A String", # Regex matching branches to build.
                      #
                      # The syntax of the regular expressions accepted is the syntax accepted by
                      # RE2 and described at https://github.com/google/re2/wiki/Syntax
                  "dir": "A String", # Directory, relative to the source root, in which to run the build.
                      #
                      # This must be a relative path. If a step's `dir` is specified and is an
                      # absolute path, this value is ignored for that step's execution.
                  "tagName": "A String", # Regex matching tags to build.
                      #
                      # The syntax of the regular expressions accepted is the syntax accepted by
                      # RE2 and described at https://github.com/google/re2/wiki/Syntax
                  "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                      # project ID requesting the build is assumed.
                  "repoName": "A String", # Required. Name of the Cloud Source Repository.
                  "commitSha": "A String", # Explicit commit SHA to build.
                  "substitutions": { # Substitutions to use in a triggered build.
                      # Should only be used with RunBuildTrigger
                    "a_key": "A String",
                  },
                  "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                      # regex.
                },
                "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage.
                  "object": "A String", # Google Cloud Storage object containing the source.
                      #
                      # This object must be a gzipped archive file (`.tar.gz`) containing source to
                      # build.
                  "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                      # omitted, the latest generation will be used.
                  "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                      # [Bucket Name
                      # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                },
              },
              "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
                "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
                    # Storage.
                "env": [ # A list of global environment variable definitions that will exist for all
                    # build steps in this build. If a variable is defined in both globally and in
                    # a build step, the variable will use the build step value.
                    #
                    # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                    # being given the value "VALUE".
                  "A String",
                ],
                "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
                    # Format: projects/{project}/workerPools/{workerPool}
                    #
                    # This field is experimental.
                "logging": "A String", # Option to specify the logging mode, which determines where the logs are
                    # stored.
                "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
                    # checks.
                "requestedVerifyOption": "A String", # Requested verifiability options.
                "diskSizeGb": "A String", # Requested disk size for the VM that runs the build. Note that this is *NOT*
                    # "disk free"; some of the space will be used by the operating system and
                    # build utilities. Also note that this is the minimum disk size that will be
                    # allocated for the build -- the build may run with a larger disk than
                    # requested. At present, the maximum disk size is 1000GB; builds that request
                    # more than the maximum are rejected with an error.
                "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
                  "A String",
                ],
                "secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud
                    # Key Management Service crypto key. These values must be specified in the
                    # build's `Secret`. These variables will be available to all build steps
                    # in this build.
                  "A String",
                ],
                "machineType": "A String", # Compute Engine machine type on which to run the build.
                "volumes": [ # Global list of volumes to mount for ALL build steps
                    #
                    # Each volume is created as an empty volume prior to starting the build
                    # process. Upon completion of the build, volumes and their contents are
                    # discarded. Global volume names and paths cannot conflict with the volumes
                    # defined a build step.
                    #
                    # Using a global volume in a build with only one step is not valid as
                    # it is indicative of a build request with an incorrect configuration.
                  { # Volume describes a Docker container volume which is mounted into build steps
                      # in order to persist files across build step execution.
                    "path": "A String", # Path at which to mount the volume.
                        #
                        # Paths must be absolute and cannot conflict with other volume paths on the
                        # same build step or with certain reserved volume paths.
                    "name": "A String", # Name of the volume to mount.
                        #
                        # Volume names must be unique per build step and must be valid names for
                        # Docker volumes. Each named volume must be used by at least two build steps.
                  },
                ],
              },
              "timeout": "A String", # Amount of time that this build should be allowed to run, to second
                  # granularity. If this amount of time elapses, work on the build will cease
                  # and the build status will be `TIMEOUT`.
                  #
                  # `timeout` starts ticking from `startTime`.
                  #
                  # Default time is ten minutes.
              "status": "A String", # Output only. Status of the build.
              "statusDetail": "A String", # Output only. Customer-readable message about the current status.
              "artifacts": { # Artifacts produced by a build that should be uploaded upon # Artifacts produced by the build that should be uploaded upon
                  # successful completion of all build steps.
                  # successful completion of all build steps.
                "objects": { # Files in the workspace to upload to Cloud Storage upon successful # A list of objects to be uploaded to Cloud Storage upon successful
                    # completion of all build steps.
                    #
                    # Files in the workspace matching specified paths globs will be uploaded to
                    # the specified Cloud Storage location using the builder service account's
                    # credentials.
                    #
                    # The location and generation of the uploaded objects will be stored in the
                    # Build resource's results field.
                    #
                    # If any objects fail to be pushed, the build is marked FAILURE.
                    # completion of all build steps.
                  "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing all artifact objects.
                    "endTime": "A String", # End of time span.
                    "startTime": "A String", # Start of time span.
                  },
                  "location": "A String", # Cloud Storage bucket and optional object path, in the form
                      # "gs://bucket/path/to/somewhere/". (see [Bucket Name
                      # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                      #
                      # Files in the workspace matching any path pattern will be uploaded to
                      # Cloud Storage with this location as a prefix.
                  "paths": [ # Path globs used to match files in the build's workspace.
                    "A String",
                  ],
                },
                "images": [ # A list of images to be pushed upon the successful completion of all build
                    # steps.
                    #
                    # The images will be pushed using the builder service account's credentials.
                    #
                    # The digests of the pushed images will be stored in the Build resource's
                    # results field.
                    #
                    # If any of the images fail to be pushed, the build is marked FAILURE.
                  "A String",
                ],
              },
              "secrets": [ # Secrets to decrypt using Cloud Key Management Service.
                { # Pairs a set of secret environment variables containing encrypted
                    # values with the Cloud KMS key to use to decrypt the value.
                  "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
                  "secretEnv": { # Map of environment variable name to its encrypted value.
                      #
                      # Secret environment variables must be unique across all of a build's
                      # secrets, and must be used by at least one build step. Values can be at most
                      # 64 KB in size. There can be at most 100 secret values across all of a
                      # build's secrets.
                    "a_key": "A String",
                  },
                },
              ],
              "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
                "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
                "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
                "buildStepImages": [ # List of build step digests, in the order corresponding to build step
                    # indices.
                  "A String",
                ],
                "artifactTiming": { # Start and end times for a build execution phase. # Time to push all non-container artifacts.
                  "endTime": "A String", # End of time span.
                  "startTime": "A String", # Start of time span.
                },
                "buildStepOutputs": [ # List of build step outputs, produced by builder images, in the order
                    # corresponding to build step indices.
                    #
                    # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
                    # can produce this output by writing to `$BUILDER_OUTPUT/output`.
                    # Only the first 4KB of data is stored.
                  "A String",
                ],
                "images": [ # Container images that were built as a part of the build.
                  { # An image built by the pipeline.
                    "name": "A String", # Name used to push the container image to Google Container Registry, as
                        # presented to `docker push`.
                    "digest": "A String", # Docker Registry 2.0 digest.
                    "pushTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing the specified image.
                      "endTime": "A String", # End of time span.
                      "startTime": "A String", # Start of time span.
                    },
                  },
                ],
              },
              "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                  # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
              "steps": [ # Required. The operations to be performed on the workspace.
                { # A step in the build pipeline.
                  "entrypoint": "A String", # Entrypoint to be used instead of the build step image's default entrypoint.
                      # If unset, the image's default entrypoint is used.
                  "volumes": [ # List of volumes to mount into the build step.
                      #
                      # Each volume is created as an empty volume prior to execution of the
                      # build step. Upon completion of the build, volumes and their contents are
                      # discarded.
                      #
                      # Using a named volume in only one step is not valid as it is indicative
                      # of a build request with an incorrect configuration.
                    { # Volume describes a Docker container volume which is mounted into build steps
                        # in order to persist files across build step execution.
                      "path": "A String", # Path at which to mount the volume.
                          #
                          # Paths must be absolute and cannot conflict with other volume paths on the
                          # same build step or with certain reserved volume paths.
                      "name": "A String", # Name of the volume to mount.
                          #
                          # Volume names must be unique per build step and must be valid names for
                          # Docker volumes. Each named volume must be used by at least two build steps.
                    },
                  ],
                  "args": [ # A list of arguments that will be presented to the step when it is started.
                      #
                      # If the image used to run the step's container has an entrypoint, the `args`
                      # are used as arguments to that entrypoint. If the image does not define
                      # an entrypoint, the first element in args is used as the entrypoint,
                      # and the remainder will be used as arguments.
                    "A String",
                  ],
                  "status": "A String", # Output only. Status of the build step. At this time, build step status is
                      # only updated on build completion; step status is not updated in real-time
                      # as the build progresses.
                  "timeout": "A String", # Time limit for executing this build step. If not defined, the step has no
                      # time limit and will be allowed to continue to run until either it completes
                      # or the build itself times out.
                  "pullTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pulling this build step's
                      # builder image only.
                    "endTime": "A String", # End of time span.
                    "startTime": "A String", # Start of time span.
                  },
                  "name": "A String", # Required. The name of the container image that will run this particular
                      # build step.
                      #
                      # If the image is available in the host's Docker daemon's cache, it
                      # will be run directly. If not, the host will attempt to pull the image
                      # first, using the builder service account's credentials if necessary.
                      #
                      # The Docker daemon's cache will already have the latest versions of all of
                      # the officially supported build steps
                      # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).
                      # The Docker daemon will also have cached many of the layers for some popular
                      # images, like "ubuntu", "debian", but they will be refreshed at the time you
                      # attempt to use them.
                      #
                      # If you built an image in a previous build step, it will be stored in the
                      # host's Docker daemon's cache and is available to use as the name for a
                      # later build step.
                  "secretEnv": [ # A list of environment variables which are encrypted using a Cloud Key
                      # Management Service crypto key. These values must be specified in the
                      # build's `Secret`.
                    "A String",
                  ],
                  "id": "A String", # Unique identifier for this build step, used in `wait_for` to
                      # reference this build step as a dependency.
                  "dir": "A String", # Working directory to use when running this step's container.
                      #
                      # If this value is a relative path, it is relative to the build's working
                      # directory. If this value is absolute, it may be outside the build's working
                      # directory, in which case the contents of the path may not be persisted
                      # across build step executions, unless a `volume` for that path is specified.
                      #
                      # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
                      # which specifies an absolute path, the `RepoSource` `dir` is ignored for
                      # the step's execution.
                  "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for executing this build step.
                    "endTime": "A String", # End of time span.
                    "startTime": "A String", # Start of time span.
                  },
                  "waitFor": [ # The ID(s) of the step(s) that this build step depends on.
                      # This build step will not start until all the build steps in `wait_for`
                      # have completed successfully. If `wait_for` is empty, this build step will
                      # start when all previous build steps in the `Build.Steps` list have
                      # completed successfully.
                    "A String",
                  ],
                  "env": [ # A list of environment variable definitions to be used when running a step.
                      #
                      # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                      # being given the value "VALUE".
                    "A String",
                  ],
                },
              ],
              "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
                  # was triggered automatically.
              "id": "A String", # Output only. Unique identifier of the build.
              "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
                "A String",
              ],
            },
            "github": { # GitHubEventsConfig describes the configuration of a trigger that creates a # GitHubEventsConfig describes the configuration of a trigger that creates
                # a build whenever a GitHub event is received.
                #
                # Mutually exclusive with `trigger_template`.
                # build whenever a GitHub event is received.
                #
                # This message is experimental.
              "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
                  # Requests.
                "commentControl": "A String", # Configure builds to run only when a repository owner or collaborator
                    # comments `/gcbrun`.
                "branch": "A String", # Regex of branches to match.
                    #
                    # The syntax of the regular expressions accepted is the syntax accepted by
                    # RE2 and described at https://github.com/google/re2/wiki/Syntax
                "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
              },
              "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
                "branch": "A String", # Regexes matching branches to build.
                    #
                    # The syntax of the regular expressions accepted is the syntax accepted by
                    # RE2 and described at https://github.com/google/re2/wiki/Syntax
                "invertRegex": True or False, # When true, only trigger a build if the revision regex does NOT match the
                    # git_ref regex.
                "tag": "A String", # Regexes matching tags to build.
                    #
                    # The syntax of the regular expressions accepted is the syntax accepted by
                    # RE2 and described at https://github.com/google/re2/wiki/Syntax
              },
              "installationId": "A String", # The installationID that emits the GitHub event.
              "owner": "A String", # Owner of the repository. For example: The owner for
                  # https://github.com/googlecloudplatform/cloud-builders is
                  # "googlecloudplatform".
              "name": "A String", # Name of the repository. For example: The name for
                  # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
            },
            "ignoredFiles": [ # ignored_files and included_files are file glob matches using
                # https://golang.org/pkg/path/filepath/#Match extended with support for "**".
                #
                # If ignored_files and changed files are both empty, then they are
                # not used to determine whether or not to trigger a build.
                #
                # If ignored_files is not empty, then we ignore any files that match
                # any of the ignored_file globs. If the change has no files that are
                # outside of the ignored_files globs, then we do not trigger a build.
              "A String",
            ],
            "substitutions": { # Substitutions for Build resource. The keys must match the following
                # regular expression: `^_[A-Z0-9_]+$`.The keys cannot conflict with the
                # keys in bindings.
              "a_key": "A String",
            },
            "includedFiles": [ # If any of the files altered in the commit pass the ignored_files
                # filter and included_files is empty, then as far as this filter is
                # concerned, we should trigger the build.
                #
                # If any of the files altered in the commit pass the ignored_files
                # filter and included_files is not empty, then we make sure that at
                # least one of those files matches a included_files glob. If not,
                # then we do not trigger a build.
              "A String",
            ],
            "disabled": True or False, # If true, the trigger will never result in a build.
            "createTime": "A String", # Output only. Time when the trigger was created.
            "triggerTemplate": { # Location of the source in a Google Cloud Source Repository. # Template describing the types of source changes to trigger a build.
                #
                # Branch and tag names in trigger templates are interpreted as regular
                # expressions. Any branch or tag change that matches that regular expression
                # will trigger a build.
                #
                # Mutually exclusive with `github`.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
          },
        ],
        "nextPageToken": "A String", # Token to receive the next page of results.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`patch(projectId, triggerId, body=None, x__xgafv=None)`

    Updates a `BuildTrigger` by its project ID and trigger ID.

    This API is experimental.

    Args:
      projectId: string, Required. ID of the project that owns the trigger. (required)
      triggerId: string, Required. ID of the `BuildTrigger` to update. (required)
      body: object, The request body.
        The object takes the form of:

    { # Configuration for an automated build in response to source repository
        # changes.
      "description": "A String", # Human-readable description of this trigger.
      "filename": "A String", # Path, from the source root, to a file whose contents is used for the
          # template.
      "name": "A String", # User-assigned name of the trigger. Must be unique within the project.
          # Trigger names must meet the following requirements:
          #
          # + They must contain only alphanumeric characters and dashes.
          # + They can be 1-64 characters long.
          # + They must begin and end with an alphanumeric character.
      "tags": [ # Tags for annotation of a `BuildTrigger`
        "A String",
      ],
      "id": "A String", # Output only. Unique identifier of the trigger.
      "build": { # A build resource in the Cloud Build API. # Contents of the build template.
          #
          # At a high level, a `Build` describes where to find source code, how to build
          # it (for example, the builder image to run on the source), and where to store
          # the built artifacts.
          #
          # Fields can include the following variables, which will be expanded when the
          # build is created:
          #
          # - $PROJECT_ID: the project ID of the build.
          # - $BUILD_ID: the autogenerated ID of the build.
          # - $REPO_NAME: the source repository name specified by RepoSource.
          # - $BRANCH_NAME: the branch name specified by RepoSource.
          # - $TAG_NAME: the tag name specified by RepoSource.
          # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
          #   resolved from the specified branch or tag.
          # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
        "startTime": "A String", # Output only. Time at which execution of the build was started.
        "substitutions": { # Substitutions data for `Build` resource.
          "a_key": "A String",
        },
        "timing": { # Output only. Stores timing information for phases of the build. Valid keys
            # are:
            #
            # * BUILD: time to execute all build steps
            # * PUSH: time to push all specified images.
            # * FETCHSOURCE: time to fetch source.
            #
            # If the build does not specify source or images,
            # these keys will not be included.
          "a_key": { # Start and end times for a build execution phase.
            "endTime": "A String", # End of time span.
            "startTime": "A String", # Start of time span.
          },
        },
        "createTime": "A String", # Output only. Time at which the request to create the build was received.
        "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that # Output only. A permanent fixed identifier for source.
            # some source was used for this build.
          "fileHashes": { # Output only. Hash(es) of the build source, which can be used to verify that
              # the original source integrity was maintained in the build. Note that
              # `FileHashes` will only be populated if `BuildOptions` has requested a
              # `SourceProvenanceHash`.
              #
              # The keys to this map are file paths used as build source and the values
              # contain the hash values for those files.
              #
              # If the build source came in a single package such as a gzipped tarfile
              # (`.tar.gz`), the `FileHash` will be for the single path to that file.
            "a_key": { # Container message for hashes of byte content of files, used in
                # SourceProvenance messages to verify integrity of source input to the build.
              "fileHash": [ # Collection of file hashes.
                { # Container message for hash values.
                  "type": "A String", # The type of hash that was performed.
                  "value": "A String", # The hash value.
                },
              ],
            },
          },
          "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any
              # revisions resolved.
            "branchName": "A String", # Regex matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "dir": "A String", # Directory, relative to the source root, in which to run the build.
                #
                # This must be a relative path. If a step's `dir` is specified and is an
                # absolute path, this value is ignored for that step's execution.
            "tagName": "A String", # Regex matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                # project ID requesting the build is assumed.
            "repoName": "A String", # Required. Name of the Cloud Source Repository.
            "commitSha": "A String", # Explicit commit SHA to build.
            "substitutions": { # Substitutions to use in a triggered build.
                # Should only be used with RunBuildTrigger
              "a_key": "A String",
            },
            "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                # regex.
          },
          "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any
              # generations resolved.
            "object": "A String", # Google Cloud Storage object containing the source.
                #
                # This object must be a gzipped archive file (`.tar.gz`) containing source to
                # build.
            "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                # omitted, the latest generation will be used.
            "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          },
        },
        "images": [ # A list of images to be pushed upon the successful completion of all build
            # steps.
            #
            # The images are pushed using the builder service account's credentials.
            #
            # The digests of the pushed images will be stored in the `Build` resource's
            # results field.
            #
            # If any of the images fail to be pushed, the build status is marked
            # `FAILURE`.
          "A String",
        ],
        "projectId": "A String", # Output only. ID of the project.
        "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
        "queueTtl": "A String", # TTL in queue for this build. If provided and the build is enqueued longer
            # than this value, the build will expire and the build status will be
            # `EXPIRED`.
            #
            # The TTL starts ticking from create_time.
        "finishTime": "A String", # Output only. Time at which execution of the build was finished.
            #
            # The difference between finish_time and start_time is the duration of the
            # build's execution.
        "source": { # Location of the source in a supported storage service. # The location of the source files to build.
          "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source
              # Repository.
            "branchName": "A String", # Regex matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "dir": "A String", # Directory, relative to the source root, in which to run the build.
                #
                # This must be a relative path. If a step's `dir` is specified and is an
                # absolute path, this value is ignored for that step's execution.
            "tagName": "A String", # Regex matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                # project ID requesting the build is assumed.
            "repoName": "A String", # Required. Name of the Cloud Source Repository.
            "commitSha": "A String", # Explicit commit SHA to build.
            "substitutions": { # Substitutions to use in a triggered build.
                # Should only be used with RunBuildTrigger
              "a_key": "A String",
            },
            "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                # regex.
          },
          "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage.
            "object": "A String", # Google Cloud Storage object containing the source.
                #
                # This object must be a gzipped archive file (`.tar.gz`) containing source to
                # build.
            "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                # omitted, the latest generation will be used.
            "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          },
        },
        "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
          "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
              # Storage.
          "env": [ # A list of global environment variable definitions that will exist for all
              # build steps in this build. If a variable is defined in both globally and in
              # a build step, the variable will use the build step value.
              #
              # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
              # being given the value "VALUE".
            "A String",
          ],
          "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
              # Format: projects/{project}/workerPools/{workerPool}
              #
              # This field is experimental.
          "logging": "A String", # Option to specify the logging mode, which determines where the logs are
              # stored.
          "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
              # checks.
          "requestedVerifyOption": "A String", # Requested verifiability options.
          "diskSizeGb": "A String", # Requested disk size for the VM that runs the build. Note that this is *NOT*
              # "disk free"; some of the space will be used by the operating system and
              # build utilities. Also note that this is the minimum disk size that will be
              # allocated for the build -- the build may run with a larger disk than
              # requested. At present, the maximum disk size is 1000GB; builds that request
              # more than the maximum are rejected with an error.
          "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
            "A String",
          ],
          "secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud
              # Key Management Service crypto key. These values must be specified in the
              # build's `Secret`. These variables will be available to all build steps
              # in this build.
            "A String",
          ],
          "machineType": "A String", # Compute Engine machine type on which to run the build.
          "volumes": [ # Global list of volumes to mount for ALL build steps
              #
              # Each volume is created as an empty volume prior to starting the build
              # process. Upon completion of the build, volumes and their contents are
              # discarded. Global volume names and paths cannot conflict with the volumes
              # defined a build step.
              #
              # Using a global volume in a build with only one step is not valid as
              # it is indicative of a build request with an incorrect configuration.
            { # Volume describes a Docker container volume which is mounted into build steps
                # in order to persist files across build step execution.
              "path": "A String", # Path at which to mount the volume.
                  #
                  # Paths must be absolute and cannot conflict with other volume paths on the
                  # same build step or with certain reserved volume paths.
              "name": "A String", # Name of the volume to mount.
                  #
                  # Volume names must be unique per build step and must be valid names for
                  # Docker volumes. Each named volume must be used by at least two build steps.
            },
          ],
        },
        "timeout": "A String", # Amount of time that this build should be allowed to run, to second
            # granularity. If this amount of time elapses, work on the build will cease
            # and the build status will be `TIMEOUT`.
            #
            # `timeout` starts ticking from `startTime`.
            #
            # Default time is ten minutes.
        "status": "A String", # Output only. Status of the build.
        "statusDetail": "A String", # Output only. Customer-readable message about the current status.
        "artifacts": { # Artifacts produced by a build that should be uploaded upon # Artifacts produced by the build that should be uploaded upon
            # successful completion of all build steps.
            # successful completion of all build steps.
          "objects": { # Files in the workspace to upload to Cloud Storage upon successful # A list of objects to be uploaded to Cloud Storage upon successful
              # completion of all build steps.
              #
              # Files in the workspace matching specified paths globs will be uploaded to
              # the specified Cloud Storage location using the builder service account's
              # credentials.
              #
              # The location and generation of the uploaded objects will be stored in the
              # Build resource's results field.
              #
              # If any objects fail to be pushed, the build is marked FAILURE.
              # completion of all build steps.
            "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing all artifact objects.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "location": "A String", # Cloud Storage bucket and optional object path, in the form
                # "gs://bucket/path/to/somewhere/". (see [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                #
                # Files in the workspace matching any path pattern will be uploaded to
                # Cloud Storage with this location as a prefix.
            "paths": [ # Path globs used to match files in the build's workspace.
              "A String",
            ],
          },
          "images": [ # A list of images to be pushed upon the successful completion of all build
              # steps.
              #
              # The images will be pushed using the builder service account's credentials.
              #
              # The digests of the pushed images will be stored in the Build resource's
              # results field.
              #
              # If any of the images fail to be pushed, the build is marked FAILURE.
            "A String",
          ],
        },
        "secrets": [ # Secrets to decrypt using Cloud Key Management Service.
          { # Pairs a set of secret environment variables containing encrypted
              # values with the Cloud KMS key to use to decrypt the value.
            "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
            "secretEnv": { # Map of environment variable name to its encrypted value.
                #
                # Secret environment variables must be unique across all of a build's
                # secrets, and must be used by at least one build step. Values can be at most
                # 64 KB in size. There can be at most 100 secret values across all of a
                # build's secrets.
              "a_key": "A String",
            },
          },
        ],
        "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
          "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
          "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
          "buildStepImages": [ # List of build step digests, in the order corresponding to build step
              # indices.
            "A String",
          ],
          "artifactTiming": { # Start and end times for a build execution phase. # Time to push all non-container artifacts.
            "endTime": "A String", # End of time span.
            "startTime": "A String", # Start of time span.
          },
          "buildStepOutputs": [ # List of build step outputs, produced by builder images, in the order
              # corresponding to build step indices.
              #
              # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
              # can produce this output by writing to `$BUILDER_OUTPUT/output`.
              # Only the first 4KB of data is stored.
            "A String",
          ],
          "images": [ # Container images that were built as a part of the build.
            { # An image built by the pipeline.
              "name": "A String", # Name used to push the container image to Google Container Registry, as
                  # presented to `docker push`.
              "digest": "A String", # Docker Registry 2.0 digest.
              "pushTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing the specified image.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
            },
          ],
        },
        "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
            # [Bucket Name
            # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
        "steps": [ # Required. The operations to be performed on the workspace.
          { # A step in the build pipeline.
            "entrypoint": "A String", # Entrypoint to be used instead of the build step image's default entrypoint.
                # If unset, the image's default entrypoint is used.
            "volumes": [ # List of volumes to mount into the build step.
                #
                # Each volume is created as an empty volume prior to execution of the
                # build step. Upon completion of the build, volumes and their contents are
                # discarded.
                #
                # Using a named volume in only one step is not valid as it is indicative
                # of a build request with an incorrect configuration.
              { # Volume describes a Docker container volume which is mounted into build steps
                  # in order to persist files across build step execution.
                "path": "A String", # Path at which to mount the volume.
                    #
                    # Paths must be absolute and cannot conflict with other volume paths on the
                    # same build step or with certain reserved volume paths.
                "name": "A String", # Name of the volume to mount.
                    #
                    # Volume names must be unique per build step and must be valid names for
                    # Docker volumes. Each named volume must be used by at least two build steps.
              },
            ],
            "args": [ # A list of arguments that will be presented to the step when it is started.
                #
                # If the image used to run the step's container has an entrypoint, the `args`
                # are used as arguments to that entrypoint. If the image does not define
                # an entrypoint, the first element in args is used as the entrypoint,
                # and the remainder will be used as arguments.
              "A String",
            ],
            "status": "A String", # Output only. Status of the build step. At this time, build step status is
                # only updated on build completion; step status is not updated in real-time
                # as the build progresses.
            "timeout": "A String", # Time limit for executing this build step. If not defined, the step has no
                # time limit and will be allowed to continue to run until either it completes
                # or the build itself times out.
            "pullTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pulling this build step's
                # builder image only.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "name": "A String", # Required. The name of the container image that will run this particular
                # build step.
                #
                # If the image is available in the host's Docker daemon's cache, it
                # will be run directly. If not, the host will attempt to pull the image
                # first, using the builder service account's credentials if necessary.
                #
                # The Docker daemon's cache will already have the latest versions of all of
                # the officially supported build steps
                # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).
                # The Docker daemon will also have cached many of the layers for some popular
                # images, like "ubuntu", "debian", but they will be refreshed at the time you
                # attempt to use them.
                #
                # If you built an image in a previous build step, it will be stored in the
                # host's Docker daemon's cache and is available to use as the name for a
                # later build step.
            "secretEnv": [ # A list of environment variables which are encrypted using a Cloud Key
                # Management Service crypto key. These values must be specified in the
                # build's `Secret`.
              "A String",
            ],
            "id": "A String", # Unique identifier for this build step, used in `wait_for` to
                # reference this build step as a dependency.
            "dir": "A String", # Working directory to use when running this step's container.
                #
                # If this value is a relative path, it is relative to the build's working
                # directory. If this value is absolute, it may be outside the build's working
                # directory, in which case the contents of the path may not be persisted
                # across build step executions, unless a `volume` for that path is specified.
                #
                # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
                # which specifies an absolute path, the `RepoSource` `dir` is ignored for
                # the step's execution.
            "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for executing this build step.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "waitFor": [ # The ID(s) of the step(s) that this build step depends on.
                # This build step will not start until all the build steps in `wait_for`
                # have completed successfully. If `wait_for` is empty, this build step will
                # start when all previous build steps in the `Build.Steps` list have
                # completed successfully.
              "A String",
            ],
            "env": [ # A list of environment variable definitions to be used when running a step.
                #
                # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                # being given the value "VALUE".
              "A String",
            ],
          },
        ],
        "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
            # was triggered automatically.
        "id": "A String", # Output only. Unique identifier of the build.
        "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
          "A String",
        ],
      },
      "github": { # GitHubEventsConfig describes the configuration of a trigger that creates a # GitHubEventsConfig describes the configuration of a trigger that creates
          # a build whenever a GitHub event is received.
          #
          # Mutually exclusive with `trigger_template`.
          # build whenever a GitHub event is received.
          #
          # This message is experimental.
        "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
            # Requests.
          "commentControl": "A String", # Configure builds to run only when a repository owner or collaborator
              # comments `/gcbrun`.
          "branch": "A String", # Regex of branches to match.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
        },
        "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
          "branch": "A String", # Regexes matching branches to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "invertRegex": True or False, # When true, only trigger a build if the revision regex does NOT match the
              # git_ref regex.
          "tag": "A String", # Regexes matching tags to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
        },
        "installationId": "A String", # The installationID that emits the GitHub event.
        "owner": "A String", # Owner of the repository. For example: The owner for
            # https://github.com/googlecloudplatform/cloud-builders is
            # "googlecloudplatform".
        "name": "A String", # Name of the repository. For example: The name for
            # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
      },
      "ignoredFiles": [ # ignored_files and included_files are file glob matches using
          # https://golang.org/pkg/path/filepath/#Match extended with support for "**".
          #
          # If ignored_files and changed files are both empty, then they are
          # not used to determine whether or not to trigger a build.
          #
          # If ignored_files is not empty, then we ignore any files that match
          # any of the ignored_file globs. If the change has no files that are
          # outside of the ignored_files globs, then we do not trigger a build.
        "A String",
      ],
      "substitutions": { # Substitutions for Build resource. The keys must match the following
          # regular expression: `^_[A-Z0-9_]+$`.The keys cannot conflict with the
          # keys in bindings.
        "a_key": "A String",
      },
      "includedFiles": [ # If any of the files altered in the commit pass the ignored_files
          # filter and included_files is empty, then as far as this filter is
          # concerned, we should trigger the build.
          #
          # If any of the files altered in the commit pass the ignored_files
          # filter and included_files is not empty, then we make sure that at
          # least one of those files matches a included_files glob. If not,
          # then we do not trigger a build.
        "A String",
      ],
      "disabled": True or False, # If true, the trigger will never result in a build.
      "createTime": "A String", # Output only. Time when the trigger was created.
      "triggerTemplate": { # Location of the source in a Google Cloud Source Repository. # Template describing the types of source changes to trigger a build.
          #
          # Branch and tag names in trigger templates are interpreted as regular
          # expressions. Any branch or tag change that matches that regular expression
          # will trigger a build.
          #
          # Mutually exclusive with `github`.
        "branchName": "A String", # Regex matching branches to build.
            #
            # The syntax of the regular expressions accepted is the syntax accepted by
            # RE2 and described at https://github.com/google/re2/wiki/Syntax
        "dir": "A String", # Directory, relative to the source root, in which to run the build.
            #
            # This must be a relative path. If a step's `dir` is specified and is an
            # absolute path, this value is ignored for that step's execution.
        "tagName": "A String", # Regex matching tags to build.
            #
            # The syntax of the regular expressions accepted is the syntax accepted by
            # RE2 and described at https://github.com/google/re2/wiki/Syntax
        "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
            # project ID requesting the build is assumed.
        "repoName": "A String", # Required. Name of the Cloud Source Repository.
        "commitSha": "A String", # Explicit commit SHA to build.
        "substitutions": { # Substitutions to use in a triggered build.
            # Should only be used with RunBuildTrigger
          "a_key": "A String",
        },
        "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
            # regex.
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for an automated build in response to source repository
          # changes.
        "description": "A String", # Human-readable description of this trigger.
        "filename": "A String", # Path, from the source root, to a file whose contents is used for the
            # template.
        "name": "A String", # User-assigned name of the trigger. Must be unique within the project.
            # Trigger names must meet the following requirements:
            #
            # + They must contain only alphanumeric characters and dashes.
            # + They can be 1-64 characters long.
            # + They must begin and end with an alphanumeric character.
        "tags": [ # Tags for annotation of a `BuildTrigger`
          "A String",
        ],
        "id": "A String", # Output only. Unique identifier of the trigger.
        "build": { # A build resource in the Cloud Build API. # Contents of the build template.
            #
            # At a high level, a `Build` describes where to find source code, how to build
            # it (for example, the builder image to run on the source), and where to store
            # the built artifacts.
            #
            # Fields can include the following variables, which will be expanded when the
            # build is created:
            #
            # - $PROJECT_ID: the project ID of the build.
            # - $BUILD_ID: the autogenerated ID of the build.
            # - $REPO_NAME: the source repository name specified by RepoSource.
            # - $BRANCH_NAME: the branch name specified by RepoSource.
            # - $TAG_NAME: the tag name specified by RepoSource.
            # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
            #   resolved from the specified branch or tag.
            # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
          "startTime": "A String", # Output only. Time at which execution of the build was started.
          "substitutions": { # Substitutions data for `Build` resource.
            "a_key": "A String",
          },
          "timing": { # Output only. Stores timing information for phases of the build. Valid keys
              # are:
              #
              # * BUILD: time to execute all build steps
              # * PUSH: time to push all specified images.
              # * FETCHSOURCE: time to fetch source.
              #
              # If the build does not specify source or images,
              # these keys will not be included.
            "a_key": { # Start and end times for a build execution phase.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
          },
          "createTime": "A String", # Output only. Time at which the request to create the build was received.
          "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that # Output only. A permanent fixed identifier for source.
              # some source was used for this build.
            "fileHashes": { # Output only. Hash(es) of the build source, which can be used to verify that
                # the original source integrity was maintained in the build. Note that
                # `FileHashes` will only be populated if `BuildOptions` has requested a
                # `SourceProvenanceHash`.
                #
                # The keys to this map are file paths used as build source and the values
                # contain the hash values for those files.
                #
                # If the build source came in a single package such as a gzipped tarfile
                # (`.tar.gz`), the `FileHash` will be for the single path to that file.
              "a_key": { # Container message for hashes of byte content of files, used in
                  # SourceProvenance messages to verify integrity of source input to the build.
                "fileHash": [ # Collection of file hashes.
                  { # Container message for hash values.
                    "type": "A String", # The type of hash that was performed.
                    "value": "A String", # The hash value.
                  },
                ],
              },
            },
            "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any
                # revisions resolved.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
            "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any
                # generations resolved.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "images": [ # A list of images to be pushed upon the successful completion of all build
              # steps.
              #
              # The images are pushed using the builder service account's credentials.
              #
              # The digests of the pushed images will be stored in the `Build` resource's
              # results field.
              #
              # If any of the images fail to be pushed, the build status is marked
              # `FAILURE`.
            "A String",
          ],
          "projectId": "A String", # Output only. ID of the project.
          "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
          "queueTtl": "A String", # TTL in queue for this build. If provided and the build is enqueued longer
              # than this value, the build will expire and the build status will be
              # `EXPIRED`.
              #
              # The TTL starts ticking from create_time.
          "finishTime": "A String", # Output only. Time at which execution of the build was finished.
              #
              # The difference between finish_time and start_time is the duration of the
              # build's execution.
          "source": { # Location of the source in a supported storage service. # The location of the source files to build.
            "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source
                # Repository.
              "branchName": "A String", # Regex matching branches to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "dir": "A String", # Directory, relative to the source root, in which to run the build.
                  #
                  # This must be a relative path. If a step's `dir` is specified and is an
                  # absolute path, this value is ignored for that step's execution.
              "tagName": "A String", # Regex matching tags to build.
                  #
                  # The syntax of the regular expressions accepted is the syntax accepted by
                  # RE2 and described at https://github.com/google/re2/wiki/Syntax
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "commitSha": "A String", # Explicit commit SHA to build.
              "substitutions": { # Substitutions to use in a triggered build.
                  # Should only be used with RunBuildTrigger
                "a_key": "A String",
              },
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
            },
            "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
            "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
                # Storage.
            "env": [ # A list of global environment variable definitions that will exist for all
                # build steps in this build. If a variable is defined in both globally and in
                # a build step, the variable will use the build step value.
                #
                # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                # being given the value "VALUE".
              "A String",
            ],
            "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
                # Format: projects/{project}/workerPools/{workerPool}
                #
                # This field is experimental.
            "logging": "A String", # Option to specify the logging mode, which determines where the logs are
                # stored.
            "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
                # checks.
            "requestedVerifyOption": "A String", # Requested verifiability options.
            "diskSizeGb": "A String", # Requested disk size for the VM that runs the build. Note that this is *NOT*
                # "disk free"; some of the space will be used by the operating system and
                # build utilities. Also note that this is the minimum disk size that will be
                # allocated for the build -- the build may run with a larger disk than
                # requested. At present, the maximum disk size is 1000GB; builds that request
                # more than the maximum are rejected with an error.
            "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
              "A String",
            ],
            "secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud
                # Key Management Service crypto key. These values must be specified in the
                # build's `Secret`. These variables will be available to all build steps
                # in this build.
              "A String",
            ],
            "machineType": "A String", # Compute Engine machine type on which to run the build.
            "volumes": [ # Global list of volumes to mount for ALL build steps
                #
                # Each volume is created as an empty volume prior to starting the build
                # process. Upon completion of the build, volumes and their contents are
                # discarded. Global volume names and paths cannot conflict with the volumes
                # defined a build step.
                #
                # Using a global volume in a build with only one step is not valid as
                # it is indicative of a build request with an incorrect configuration.
              { # Volume describes a Docker container volume which is mounted into build steps
                  # in order to persist files across build step execution.
                "path": "A String", # Path at which to mount the volume.
                    #
                    # Paths must be absolute and cannot conflict with other volume paths on the
                    # same build step or with certain reserved volume paths.
                "name": "A String", # Name of the volume to mount.
                    #
                    # Volume names must be unique per build step and must be valid names for
                    # Docker volumes. Each named volume must be used by at least two build steps.
              },
            ],
          },
          "timeout": "A String", # Amount of time that this build should be allowed to run, to second
              # granularity. If this amount of time elapses, work on the build will cease
              # and the build status will be `TIMEOUT`.
              #
              # `timeout` starts ticking from `startTime`.
              #
              # Default time is ten minutes.
          "status": "A String", # Output only. Status of the build.
          "statusDetail": "A String", # Output only. Customer-readable message about the current status.
          "artifacts": { # Artifacts produced by a build that should be uploaded upon # Artifacts produced by the build that should be uploaded upon
              # successful completion of all build steps.
              # successful completion of all build steps.
            "objects": { # Files in the workspace to upload to Cloud Storage upon successful # A list of objects to be uploaded to Cloud Storage upon successful
                # completion of all build steps.
                #
                # Files in the workspace matching specified paths globs will be uploaded to
                # the specified Cloud Storage location using the builder service account's
                # credentials.
                #
                # The location and generation of the uploaded objects will be stored in the
                # Build resource's results field.
                #
                # If any objects fail to be pushed, the build is marked FAILURE.
                # completion of all build steps.
              "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing all artifact objects.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "location": "A String", # Cloud Storage bucket and optional object path, in the form
                  # "gs://bucket/path/to/somewhere/". (see [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                  #
                  # Files in the workspace matching any path pattern will be uploaded to
                  # Cloud Storage with this location as a prefix.
              "paths": [ # Path globs used to match files in the build's workspace.
                "A String",
              ],
            },
            "images": [ # A list of images to be pushed upon the successful completion of all build
                # steps.
                #
                # The images will be pushed using the builder service account's credentials.
                #
                # The digests of the pushed images will be stored in the Build resource's
                # results field.
                #
                # If any of the images fail to be pushed, the build is marked FAILURE.
              "A String",
            ],
          },
          "secrets": [ # Secrets to decrypt using Cloud Key Management Service.
            { # Pairs a set of secret environment variables containing encrypted
                # values with the Cloud KMS key to use to decrypt the value.
              "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
              "secretEnv": { # Map of environment variable name to its encrypted value.
                  #
                  # Secret environment variables must be unique across all of a build's
                  # secrets, and must be used by at least one build step. Values can be at most
                  # 64 KB in size. There can be at most 100 secret values across all of a
                  # build's secrets.
                "a_key": "A String",
              },
            },
          ],
          "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
            "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
            "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
            "buildStepImages": [ # List of build step digests, in the order corresponding to build step
                # indices.
              "A String",
            ],
            "artifactTiming": { # Start and end times for a build execution phase. # Time to push all non-container artifacts.
              "endTime": "A String", # End of time span.
              "startTime": "A String", # Start of time span.
            },
            "buildStepOutputs": [ # List of build step outputs, produced by builder images, in the order
                # corresponding to build step indices.
                #
                # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
                # can produce this output by writing to `$BUILDER_OUTPUT/output`.
                # Only the first 4KB of data is stored.
              "A String",
            ],
            "images": [ # Container images that were built as a part of the build.
              { # An image built by the pipeline.
                "name": "A String", # Name used to push the container image to Google Container Registry, as
                    # presented to `docker push`.
                "digest": "A String", # Docker Registry 2.0 digest.
                "pushTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pushing the specified image.
                  "endTime": "A String", # End of time span.
                  "startTime": "A String", # Start of time span.
                },
              },
            ],
          },
          "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
              # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
          "steps": [ # Required. The operations to be performed on the workspace.
            { # A step in the build pipeline.
              "entrypoint": "A String", # Entrypoint to be used instead of the build step image's default entrypoint.
                  # If unset, the image's default entrypoint is used.
              "volumes": [ # List of volumes to mount into the build step.
                  #
                  # Each volume is created as an empty volume prior to execution of the
                  # build step. Upon completion of the build, volumes and their contents are
                  # discarded.
                  #
                  # Using a named volume in only one step is not valid as it is indicative
                  # of a build request with an incorrect configuration.
                { # Volume describes a Docker container volume which is mounted into build steps
                    # in order to persist files across build step execution.
                  "path": "A String", # Path at which to mount the volume.
                      #
                      # Paths must be absolute and cannot conflict with other volume paths on the
                      # same build step or with certain reserved volume paths.
                  "name": "A String", # Name of the volume to mount.
                      #
                      # Volume names must be unique per build step and must be valid names for
                      # Docker volumes. Each named volume must be used by at least two build steps.
                },
              ],
              "args": [ # A list of arguments that will be presented to the step when it is started.
                  #
                  # If the image used to run the step's container has an entrypoint, the `args`
                  # are used as arguments to that entrypoint. If the image does not define
                  # an entrypoint, the first element in args is used as the entrypoint,
                  # and the remainder will be used as arguments.
                "A String",
              ],
              "status": "A String", # Output only. Status of the build step. At this time, build step status is
                  # only updated on build completion; step status is not updated in real-time
                  # as the build progresses.
              "timeout": "A String", # Time limit for executing this build step. If not defined, the step has no
                  # time limit and will be allowed to continue to run until either it completes
                  # or the build itself times out.
              "pullTiming": { # Start and end times for a build execution phase. # Output only. Stores timing information for pulling this build step's
                  # builder image only.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "name": "A String", # Required. The name of the container image that will run this particular
                  # build step.
                  #
                  # If the image is available in the host's Docker daemon's cache, it
                  # will be run directly. If not, the host will attempt to pull the image
                  # first, using the builder service account's credentials if necessary.
                  #
                  # The Docker daemon's cache will already have the latest versions of all of
                  # the officially supported build steps
                  # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).
                  # The Docker daemon will also have cached many of the layers for some popular
                  # images, like "ubuntu", "debian", but they will be refreshed at the time you
                  # attempt to use them.
                  #
                  # If you built an image in a previous build step, it will be stored in the
                  # host's Docker daemon's cache and is available to use as the name for a
                  # later build step.
              "secretEnv": [ # A list of environment variables which are encrypted using a Cloud Key
                  # Management Service crypto key. These values must be specified in the
                  # build's `Secret`.
                "A String",
              ],
              "id": "A String", # Unique identifier for this build step, used in `wait_for` to
                  # reference this build step as a dependency.
              "dir": "A String", # Working directory to use when running this step's container.
                  #
                  # If this value is a relative path, it is relative to the build's working
                  # directory. If this value is absolute, it may be outside the build's working
                  # directory, in which case the contents of the path may not be persisted
                  # across build step executions, unless a `volume` for that path is specified.
                  #
                  # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
                  # which specifies an absolute path, the `RepoSource` `dir` is ignored for
                  # the step's execution.
              "timing": { # Start and end times for a build execution phase. # Output only. Stores timing information for executing this build step.
                "endTime": "A String", # End of time span.
                "startTime": "A String", # Start of time span.
              },
              "waitFor": [ # The ID(s) of the step(s) that this build step depends on.
                  # This build step will not start until all the build steps in `wait_for`
                  # have completed successfully. If `wait_for` is empty, this build step will
                  # start when all previous build steps in the `Build.Steps` list have
                  # completed successfully.
                "A String",
              ],
              "env": [ # A list of environment variable definitions to be used when running a step.
                  #
                  # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
                  # being given the value "VALUE".
                "A String",
              ],
            },
          ],
          "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
              # was triggered automatically.
          "id": "A String", # Output only. Unique identifier of the build.
          "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
            "A String",
          ],
        },
        "github": { # GitHubEventsConfig describes the configuration of a trigger that creates a # GitHubEventsConfig describes the configuration of a trigger that creates
            # a build whenever a GitHub event is received.
            #
            # Mutually exclusive with `trigger_template`.
            # build whenever a GitHub event is received.
            #
            # This message is experimental.
          "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
              # Requests.
            "commentControl": "A String", # Configure builds to run only when a repository owner or collaborator
                # comments `/gcbrun`.
            "branch": "A String", # Regex of branches to match.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
          },
          "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
            "branch": "A String", # Regexes matching branches to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
            "invertRegex": True or False, # When true, only trigger a build if the revision regex does NOT match the
                # git_ref regex.
            "tag": "A String", # Regexes matching tags to build.
                #
                # The syntax of the regular expressions accepted is the syntax accepted by
                # RE2 and described at https://github.com/google/re2/wiki/Syntax
          },
          "installationId": "A String", # The installationID that emits the GitHub event.
          "owner": "A String", # Owner of the repository. For example: The owner for
              # https://github.com/googlecloudplatform/cloud-builders is
              # "googlecloudplatform".
          "name": "A String", # Name of the repository. For example: The name for
              # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
        },
        "ignoredFiles": [ # ignored_files and included_files are file glob matches using
            # https://golang.org/pkg/path/filepath/#Match extended with support for "**".
            #
            # If ignored_files and changed files are both empty, then they are
            # not used to determine whether or not to trigger a build.
            #
            # If ignored_files is not empty, then we ignore any files that match
            # any of the ignored_file globs. If the change has no files that are
            # outside of the ignored_files globs, then we do not trigger a build.
          "A String",
        ],
        "substitutions": { # Substitutions for Build resource. The keys must match the following
            # regular expression: `^_[A-Z0-9_]+$`.The keys cannot conflict with the
            # keys in bindings.
          "a_key": "A String",
        },
        "includedFiles": [ # If any of the files altered in the commit pass the ignored_files
            # filter and included_files is empty, then as far as this filter is
            # concerned, we should trigger the build.
            #
            # If any of the files altered in the commit pass the ignored_files
            # filter and included_files is not empty, then we make sure that at
            # least one of those files matches a included_files glob. If not,
            # then we do not trigger a build.
          "A String",
        ],
        "disabled": True or False, # If true, the trigger will never result in a build.
        "createTime": "A String", # Output only. Time when the trigger was created.
        "triggerTemplate": { # Location of the source in a Google Cloud Source Repository. # Template describing the types of source changes to trigger a build.
            #
            # Branch and tag names in trigger templates are interpreted as regular
            # expressions. Any branch or tag change that matches that regular expression
            # will trigger a build.
            #
            # Mutually exclusive with `github`.
          "branchName": "A String", # Regex matching branches to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "dir": "A String", # Directory, relative to the source root, in which to run the build.
              #
              # This must be a relative path. If a step's `dir` is specified and is an
              # absolute path, this value is ignored for that step's execution.
          "tagName": "A String", # Regex matching tags to build.
              #
              # The syntax of the regular expressions accepted is the syntax accepted by
              # RE2 and described at https://github.com/google/re2/wiki/Syntax
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "commitSha": "A String", # Explicit commit SHA to build.
          "substitutions": { # Substitutions to use in a triggered build.
              # Should only be used with RunBuildTrigger
            "a_key": "A String",
          },
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
        },
      }

`run(projectId, triggerId, body=None, x__xgafv=None)`

    Runs a `BuildTrigger` at a particular source revision.

    Args:
      projectId: string, Required. ID of the project. (required)
      triggerId: string, Required. ID of the trigger. (required)
      body: object, The request body.
        The object takes the form of:

    { # Location of the source in a Google Cloud Source Repository.
      "branchName": "A String", # Regex matching branches to build.
          #
          # The syntax of the regular expressions accepted is the syntax accepted by
          # RE2 and described at https://github.com/google/re2/wiki/Syntax
      "dir": "A String", # Directory, relative to the source root, in which to run the build.
          #
          # This must be a relative path. If a step's `dir` is specified and is an
          # absolute path, this value is ignored for that step's execution.
      "tagName": "A String", # Regex matching tags to build.
          #
          # The syntax of the regular expressions accepted is the syntax accepted by
          # RE2 and described at https://github.com/google/re2/wiki/Syntax
      "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
          # project ID requesting the build is assumed.
      "repoName": "A String", # Required. Name of the Cloud Source Repository.
      "commitSha": "A String", # Explicit commit SHA to build.
      "substitutions": { # Substitutions to use in a triggered build.
          # Should only be used with RunBuildTrigger
        "a_key": "A String",
      },
      "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
          # regex.
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a
          # network API call.
        "name": "A String", # The server-assigned name, which is only unique within the same service that
            # originally returns it. If you use the default HTTP mapping, the
            # `name` should be a resource name ending with `operations/{unique_id}`.
        "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "metadata": { # Service-specific metadata associated with the operation.  It typically
            # contains progress information and common metadata such as create time.
            # Some services might not provide such metadata.  Any method that returns a
            # long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # If the value is `false`, it means the operation is still in progress.
            # If `true`, the operation is completed, and either `error` or `response` is
            # available.
        "response": { # The normal response of the operation in case of success.  If the original
            # method returns no data on success, such as `Delete`, the response is
            # `google.protobuf.Empty`.  If the original method is standard
            # `Get`/`Create`/`Update`, the response should be the resource.  For other
            # methods, the response should have the type `XxxResponse`, where `Xxx`
            # is the original method name.  For example, if the original method name
            # is `TakeSnapshot()`, the inferred response type is
            # `TakeSnapshotResponse`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }