Cloud Build API . projects . triggers

Instance Methods

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

Creates a new `BuildTrigger`.

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

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

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

Returns information about a `BuildTrigger`.

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

Lists existing `BuildTrigger`s.

list_next(previous_request=*, previous_response=*)

Retrieves the next page of results.

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

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

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

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.
  "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.
    "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
      "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
      "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
    },
    "installationId": "A String", # The installationID that emits the GitHub event.
    "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
        # Requests.
      "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
      "commentControl": "A String", # Whether to block builds on a "/gcbrun" comment from a repository admin or
          # collaborator.
      "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
    },
    "name": "A String", # Name of the repository. For example: The name for
        # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
    "owner": "A String", # Owner of the repository. For example: The owner for
        # https://github.com/googlecloudplatform/cloud-builders is
        # "googlecloudplatform".
  },
  "description": "A String", # Human-readable description of this trigger.
  "tags": [ # Tags for annotation of a `BuildTrigger`
    "A String",
  ],
  "id": "A String", # Output only. Unique identifier of the trigger.
  "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",
  ],
  "filename": "A String", # Path, from the source root, to a file whose contents is used for the
      # template.
  "disabled": True or False, # If true, the trigger will never result in a build.
  "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",
  },
  "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.
    "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
      "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",
      ],
      "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.
      },
      "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
      "images": [ # Container images that were built as a part of the build.
        { # An image built by the pipeline.
          "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.
          },
          "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.
        },
      ],
      "buildStepImages": [ # List of build step digests, in the order corresponding to build step
          # indices.
        "A String",
      ],
      "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
    },
    "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.
      "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.
        "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
            # project ID requesting the build is assumed.
        "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
            # regex.
        "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",
        },
        "repoName": "A String", # Required. Name of the Cloud Source Repository.
        "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
        "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.
      },
      "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.
            },
          ],
        },
      },
      "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.
        "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
            # omitted, the latest generation will be used.
        "object": "A String", # Google Cloud Storage object containing the source.
            #
            # This object must be a gzipped archive file (`.tar.gz`) containing source to
            # build.
        "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",
    ],
    "id": "A String", # Output only. Unique identifier of the build.
    "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.
      "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",
      ],
      "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.
        },
        "paths": [ # Path globs used to match files in the build's workspace.
          "A String",
        ],
        "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.
      },
    },
    "projectId": "A String", # Output only. ID of the project.
    "substitutions": { # Substitutions data for `Build` resource.
      "a_key": "A String",
    },
    "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.
        "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
            # project ID requesting the build is assumed.
        "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
            # regex.
        "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",
        },
        "repoName": "A String", # Required. Name of the Cloud Source Repository.
        "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
        "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.
      },
      "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.
        "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
            # omitted, the latest generation will be used.
        "object": "A String", # Google Cloud Storage object containing the source.
            #
            # This object must be a gzipped archive file (`.tar.gz`) containing source to
            # build.
        "bucket": "A String", # Google Cloud Storage bucket containing the source (see
            # [Bucket Name
            # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
      },
    },
    "status": "A String", # Output only. Status of the build.
    "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
      "A String",
    ],
    "statusDetail": "A String", # Output only. Customer-readable message about the current status.
    "startTime": "A String", # Output only. Time at which execution of the build was started.
    "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.
      },
    },
    "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.
    "createTime": "A String", # Output only. Time at which the request to create the build was received.
    "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.
    "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
        # was triggered automatically.
    "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.
        "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",
        },
        "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
      },
    ],
    "steps": [ # Required. The operations to be performed on the workspace.
      { # A step in the build pipeline.
        "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.
        "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",
        ],
        "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",
        ],
        "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",
        ],
        "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.
        "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",
        ],
        "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.
          },
        ],
        "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.
        },
        "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.
        },
        "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.
        "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.
      },
    ],
    "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`.
        #
        # Default time is ten minutes.
    "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`.
    "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
      "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
          # checks.
      "machineType": "A String", # Compute Engine machine type on which to run the build.
      "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",
      ],
      "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
        "A String",
      ],
      "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
          # Storage.
      "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",
      ],
      "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.
      "logging": "A String", # Option to specify the logging mode, which determines where the logs are
          # stored.
      "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.
        },
      ],
      "requestedVerifyOption": "A String", # Requested verifiability options.
      "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
          # Format: projects/{project}/workerPools/{workerPool}
          #
          # This field is experimental.
    },
    "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
  },
  "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",
  ],
  "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`.
    "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
        # project ID requesting the build is assumed.
    "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
        # regex.
    "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",
    },
    "repoName": "A String", # Required. Name of the Cloud Source Repository.
    "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
    "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.
  },
  "createTime": "A String", # Output only. Time when the trigger was created.
  "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.
}

  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.
    "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.
      "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
        "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
        "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
      },
      "installationId": "A String", # The installationID that emits the GitHub event.
      "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
          # Requests.
        "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
        "commentControl": "A String", # Whether to block builds on a "/gcbrun" comment from a repository admin or
            # collaborator.
        "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
      },
      "name": "A String", # Name of the repository. For example: The name for
          # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
      "owner": "A String", # Owner of the repository. For example: The owner for
          # https://github.com/googlecloudplatform/cloud-builders is
          # "googlecloudplatform".
    },
    "description": "A String", # Human-readable description of this trigger.
    "tags": [ # Tags for annotation of a `BuildTrigger`
      "A String",
    ],
    "id": "A String", # Output only. Unique identifier of the trigger.
    "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",
    ],
    "filename": "A String", # Path, from the source root, to a file whose contents is used for the
        # template.
    "disabled": True or False, # If true, the trigger will never result in a build.
    "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",
    },
    "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.
      "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
        "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",
        ],
        "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.
        },
        "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
        "images": [ # Container images that were built as a part of the build.
          { # An image built by the pipeline.
            "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.
            },
            "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.
          },
        ],
        "buildStepImages": [ # List of build step digests, in the order corresponding to build step
            # indices.
          "A String",
        ],
        "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
      },
      "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.
        "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.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "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.
              },
            ],
          },
        },
        "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.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing the source.
              #
              # This object must be a gzipped archive file (`.tar.gz`) containing source to
              # build.
          "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",
      ],
      "id": "A String", # Output only. Unique identifier of the build.
      "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.
        "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",
        ],
        "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.
          },
          "paths": [ # Path globs used to match files in the build's workspace.
            "A String",
          ],
          "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.
        },
      },
      "projectId": "A String", # Output only. ID of the project.
      "substitutions": { # Substitutions data for `Build` resource.
        "a_key": "A String",
      },
      "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.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "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.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing the source.
              #
              # This object must be a gzipped archive file (`.tar.gz`) containing source to
              # build.
          "bucket": "A String", # Google Cloud Storage bucket containing the source (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
        },
      },
      "status": "A String", # Output only. Status of the build.
      "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
        "A String",
      ],
      "statusDetail": "A String", # Output only. Customer-readable message about the current status.
      "startTime": "A String", # Output only. Time at which execution of the build was started.
      "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.
        },
      },
      "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.
      "createTime": "A String", # Output only. Time at which the request to create the build was received.
      "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.
      "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
          # was triggered automatically.
      "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.
          "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",
          },
          "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
        },
      ],
      "steps": [ # Required. The operations to be performed on the workspace.
        { # A step in the build pipeline.
          "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.
          "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",
          ],
          "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",
          ],
          "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",
          ],
          "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.
          "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",
          ],
          "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.
            },
          ],
          "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.
          },
          "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.
          },
          "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.
          "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.
        },
      ],
      "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`.
          #
          # Default time is ten minutes.
      "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`.
      "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
        "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
            # checks.
        "machineType": "A String", # Compute Engine machine type on which to run the build.
        "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",
        ],
        "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
          "A String",
        ],
        "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
            # Storage.
        "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",
        ],
        "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.
        "logging": "A String", # Option to specify the logging mode, which determines where the logs are
            # stored.
        "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.
          },
        ],
        "requestedVerifyOption": "A String", # Requested verifiability options.
        "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
            # Format: projects/{project}/workerPools/{workerPool}
            #
            # This field is experimental.
      },
      "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
    },
    "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",
    ],
    "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`.
      "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
          # project ID requesting the build is assumed.
      "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
          # regex.
      "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",
      },
      "repoName": "A String", # Required. Name of the Cloud Source Repository.
      "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
      "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.
    },
    "createTime": "A String", # Output only. Time when the trigger was created.
    "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.
  }
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.
    "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.
      "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
        "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
        "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
      },
      "installationId": "A String", # The installationID that emits the GitHub event.
      "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
          # Requests.
        "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
        "commentControl": "A String", # Whether to block builds on a "/gcbrun" comment from a repository admin or
            # collaborator.
        "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
      },
      "name": "A String", # Name of the repository. For example: The name for
          # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
      "owner": "A String", # Owner of the repository. For example: The owner for
          # https://github.com/googlecloudplatform/cloud-builders is
          # "googlecloudplatform".
    },
    "description": "A String", # Human-readable description of this trigger.
    "tags": [ # Tags for annotation of a `BuildTrigger`
      "A String",
    ],
    "id": "A String", # Output only. Unique identifier of the trigger.
    "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",
    ],
    "filename": "A String", # Path, from the source root, to a file whose contents is used for the
        # template.
    "disabled": True or False, # If true, the trigger will never result in a build.
    "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",
    },
    "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.
      "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
        "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",
        ],
        "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.
        },
        "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
        "images": [ # Container images that were built as a part of the build.
          { # An image built by the pipeline.
            "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.
            },
            "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.
          },
        ],
        "buildStepImages": [ # List of build step digests, in the order corresponding to build step
            # indices.
          "A String",
        ],
        "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
      },
      "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.
        "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.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "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.
              },
            ],
          },
        },
        "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.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing the source.
              #
              # This object must be a gzipped archive file (`.tar.gz`) containing source to
              # build.
          "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",
      ],
      "id": "A String", # Output only. Unique identifier of the build.
      "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.
        "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",
        ],
        "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.
          },
          "paths": [ # Path globs used to match files in the build's workspace.
            "A String",
          ],
          "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.
        },
      },
      "projectId": "A String", # Output only. ID of the project.
      "substitutions": { # Substitutions data for `Build` resource.
        "a_key": "A String",
      },
      "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.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "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.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing the source.
              #
              # This object must be a gzipped archive file (`.tar.gz`) containing source to
              # build.
          "bucket": "A String", # Google Cloud Storage bucket containing the source (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
        },
      },
      "status": "A String", # Output only. Status of the build.
      "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
        "A String",
      ],
      "statusDetail": "A String", # Output only. Customer-readable message about the current status.
      "startTime": "A String", # Output only. Time at which execution of the build was started.
      "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.
        },
      },
      "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.
      "createTime": "A String", # Output only. Time at which the request to create the build was received.
      "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.
      "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
          # was triggered automatically.
      "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.
          "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",
          },
          "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
        },
      ],
      "steps": [ # Required. The operations to be performed on the workspace.
        { # A step in the build pipeline.
          "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.
          "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",
          ],
          "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",
          ],
          "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",
          ],
          "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.
          "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",
          ],
          "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.
            },
          ],
          "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.
          },
          "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.
          },
          "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.
          "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.
        },
      ],
      "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`.
          #
          # Default time is ten minutes.
      "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`.
      "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
        "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
            # checks.
        "machineType": "A String", # Compute Engine machine type on which to run the build.
        "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",
        ],
        "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
          "A String",
        ],
        "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
            # Storage.
        "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",
        ],
        "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.
        "logging": "A String", # Option to specify the logging mode, which determines where the logs are
            # stored.
        "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.
          },
        ],
        "requestedVerifyOption": "A String", # Requested verifiability options.
        "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
            # Format: projects/{project}/workerPools/{workerPool}
            #
            # This field is experimental.
      },
      "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
    },
    "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",
    ],
    "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`.
      "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
          # project ID requesting the build is assumed.
      "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
          # regex.
      "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",
      },
      "repoName": "A String", # Required. Name of the Cloud Source Repository.
      "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
      "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.
    },
    "createTime": "A String", # Output only. Time when the trigger was created.
    "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.
  }
list(projectId=*, pageSize=None, pageToken=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)
  pageSize: integer, Number of results to return in the list.
  pageToken: string, Token to provide to skip to a particular spot 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`.
    "nextPageToken": "A String", # Token to receive the next page of results.
    "triggers": [ # `BuildTriggers` for the project, sorted by `create_time` descending.
      { # Configuration for an automated build in response to source repository
          # changes.
        "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.
          "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
            "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
            "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
          },
          "installationId": "A String", # The installationID that emits the GitHub event.
          "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
              # Requests.
            "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
            "commentControl": "A String", # Whether to block builds on a "/gcbrun" comment from a repository admin or
                # collaborator.
            "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
          },
          "name": "A String", # Name of the repository. For example: The name for
              # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
          "owner": "A String", # Owner of the repository. For example: The owner for
              # https://github.com/googlecloudplatform/cloud-builders is
              # "googlecloudplatform".
        },
        "description": "A String", # Human-readable description of this trigger.
        "tags": [ # Tags for annotation of a `BuildTrigger`
          "A String",
        ],
        "id": "A String", # Output only. Unique identifier of the trigger.
        "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",
        ],
        "filename": "A String", # Path, from the source root, to a file whose contents is used for the
            # template.
        "disabled": True or False, # If true, the trigger will never result in a build.
        "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",
        },
        "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.
          "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
            "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",
            ],
            "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.
            },
            "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
            "images": [ # Container images that were built as a part of the build.
              { # An image built by the pipeline.
                "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.
                },
                "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.
              },
            ],
            "buildStepImages": [ # List of build step digests, in the order corresponding to build step
                # indices.
              "A String",
            ],
            "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
          },
          "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.
            "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.
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
              "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",
              },
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "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
              "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.
            },
            "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.
                  },
                ],
              },
            },
            "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.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "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",
          ],
          "id": "A String", # Output only. Unique identifier of the build.
          "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.
            "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",
            ],
            "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.
              },
              "paths": [ # Path globs used to match files in the build's workspace.
                "A String",
              ],
              "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.
            },
          },
          "projectId": "A String", # Output only. ID of the project.
          "substitutions": { # Substitutions data for `Build` resource.
            "a_key": "A String",
          },
          "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.
              "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
                  # project ID requesting the build is assumed.
              "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
                  # regex.
              "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",
              },
              "repoName": "A String", # Required. Name of the Cloud Source Repository.
              "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
              "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.
            },
            "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.
              "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                  # omitted, the latest generation will be used.
              "object": "A String", # Google Cloud Storage object containing the source.
                  #
                  # This object must be a gzipped archive file (`.tar.gz`) containing source to
                  # build.
              "bucket": "A String", # Google Cloud Storage bucket containing the source (see
                  # [Bucket Name
                  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            },
          },
          "status": "A String", # Output only. Status of the build.
          "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
            "A String",
          ],
          "statusDetail": "A String", # Output only. Customer-readable message about the current status.
          "startTime": "A String", # Output only. Time at which execution of the build was started.
          "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.
            },
          },
          "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.
          "createTime": "A String", # Output only. Time at which the request to create the build was received.
          "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.
          "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
              # was triggered automatically.
          "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.
              "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",
              },
              "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
            },
          ],
          "steps": [ # Required. The operations to be performed on the workspace.
            { # A step in the build pipeline.
              "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.
              "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",
              ],
              "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",
              ],
              "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",
              ],
              "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.
              "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",
              ],
              "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.
                },
              ],
              "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.
              },
              "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.
              },
              "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.
              "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.
            },
          ],
          "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`.
              #
              # Default time is ten minutes.
          "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`.
          "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
            "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
                # checks.
            "machineType": "A String", # Compute Engine machine type on which to run the build.
            "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",
            ],
            "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
              "A String",
            ],
            "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
                # Storage.
            "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",
            ],
            "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.
            "logging": "A String", # Option to specify the logging mode, which determines where the logs are
                # stored.
            "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.
              },
            ],
            "requestedVerifyOption": "A String", # Requested verifiability options.
            "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
                # Format: projects/{project}/workerPools/{workerPool}
                #
                # This field is experimental.
          },
          "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
        },
        "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",
        ],
        "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`.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "createTime": "A String", # Output only. Time when the trigger was created.
        "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.
      },
    ],
  }
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.
  "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.
    "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
      "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
      "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
    },
    "installationId": "A String", # The installationID that emits the GitHub event.
    "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
        # Requests.
      "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
      "commentControl": "A String", # Whether to block builds on a "/gcbrun" comment from a repository admin or
          # collaborator.
      "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
    },
    "name": "A String", # Name of the repository. For example: The name for
        # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
    "owner": "A String", # Owner of the repository. For example: The owner for
        # https://github.com/googlecloudplatform/cloud-builders is
        # "googlecloudplatform".
  },
  "description": "A String", # Human-readable description of this trigger.
  "tags": [ # Tags for annotation of a `BuildTrigger`
    "A String",
  ],
  "id": "A String", # Output only. Unique identifier of the trigger.
  "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",
  ],
  "filename": "A String", # Path, from the source root, to a file whose contents is used for the
      # template.
  "disabled": True or False, # If true, the trigger will never result in a build.
  "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",
  },
  "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.
    "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
      "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",
      ],
      "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.
      },
      "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
      "images": [ # Container images that were built as a part of the build.
        { # An image built by the pipeline.
          "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.
          },
          "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.
        },
      ],
      "buildStepImages": [ # List of build step digests, in the order corresponding to build step
          # indices.
        "A String",
      ],
      "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
    },
    "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.
      "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.
        "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
            # project ID requesting the build is assumed.
        "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
            # regex.
        "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",
        },
        "repoName": "A String", # Required. Name of the Cloud Source Repository.
        "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
        "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.
      },
      "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.
            },
          ],
        },
      },
      "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.
        "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
            # omitted, the latest generation will be used.
        "object": "A String", # Google Cloud Storage object containing the source.
            #
            # This object must be a gzipped archive file (`.tar.gz`) containing source to
            # build.
        "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",
    ],
    "id": "A String", # Output only. Unique identifier of the build.
    "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.
      "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",
      ],
      "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.
        },
        "paths": [ # Path globs used to match files in the build's workspace.
          "A String",
        ],
        "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.
      },
    },
    "projectId": "A String", # Output only. ID of the project.
    "substitutions": { # Substitutions data for `Build` resource.
      "a_key": "A String",
    },
    "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.
        "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
            # project ID requesting the build is assumed.
        "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
            # regex.
        "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",
        },
        "repoName": "A String", # Required. Name of the Cloud Source Repository.
        "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
        "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.
      },
      "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.
        "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
            # omitted, the latest generation will be used.
        "object": "A String", # Google Cloud Storage object containing the source.
            #
            # This object must be a gzipped archive file (`.tar.gz`) containing source to
            # build.
        "bucket": "A String", # Google Cloud Storage bucket containing the source (see
            # [Bucket Name
            # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
      },
    },
    "status": "A String", # Output only. Status of the build.
    "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
      "A String",
    ],
    "statusDetail": "A String", # Output only. Customer-readable message about the current status.
    "startTime": "A String", # Output only. Time at which execution of the build was started.
    "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.
      },
    },
    "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.
    "createTime": "A String", # Output only. Time at which the request to create the build was received.
    "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.
    "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
        # was triggered automatically.
    "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.
        "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",
        },
        "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
      },
    ],
    "steps": [ # Required. The operations to be performed on the workspace.
      { # A step in the build pipeline.
        "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.
        "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",
        ],
        "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",
        ],
        "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",
        ],
        "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.
        "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",
        ],
        "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.
          },
        ],
        "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.
        },
        "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.
        },
        "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.
        "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.
      },
    ],
    "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`.
        #
        # Default time is ten minutes.
    "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`.
    "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
      "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
          # checks.
      "machineType": "A String", # Compute Engine machine type on which to run the build.
      "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",
      ],
      "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
        "A String",
      ],
      "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
          # Storage.
      "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",
      ],
      "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.
      "logging": "A String", # Option to specify the logging mode, which determines where the logs are
          # stored.
      "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.
        },
      ],
      "requestedVerifyOption": "A String", # Requested verifiability options.
      "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
          # Format: projects/{project}/workerPools/{workerPool}
          #
          # This field is experimental.
    },
    "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
  },
  "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",
  ],
  "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`.
    "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
        # project ID requesting the build is assumed.
    "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
        # regex.
    "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",
    },
    "repoName": "A String", # Required. Name of the Cloud Source Repository.
    "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
    "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.
  },
  "createTime": "A String", # Output only. Time when the trigger was created.
  "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.
}

  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.
    "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.
      "push": { # Push contains filter properties for matching GitHub git pushes. # filter to match changes in refs like branches, tags.
        "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
        "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
      },
      "installationId": "A String", # The installationID that emits the GitHub event.
      "pullRequest": { # PullRequestFilter contains filter properties for matching GitHub Pull # filter to match changes in pull requests.
          # Requests.
        "invertRegex": True or False, # If true, branches that do NOT match the git_ref will trigger a build.
        "commentControl": "A String", # Whether to block builds on a "/gcbrun" comment from a repository admin or
            # collaborator.
        "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
      },
      "name": "A String", # Name of the repository. For example: The name for
          # https://github.com/googlecloudplatform/cloud-builders is "cloud-builders".
      "owner": "A String", # Owner of the repository. For example: The owner for
          # https://github.com/googlecloudplatform/cloud-builders is
          # "googlecloudplatform".
    },
    "description": "A String", # Human-readable description of this trigger.
    "tags": [ # Tags for annotation of a `BuildTrigger`
      "A String",
    ],
    "id": "A String", # Output only. Unique identifier of the trigger.
    "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",
    ],
    "filename": "A String", # Path, from the source root, to a file whose contents is used for the
        # template.
    "disabled": True or False, # If true, the trigger will never result in a build.
    "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",
    },
    "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.
      "results": { # Artifacts created by the build pipeline. # Output only. Results of the build.
        "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",
        ],
        "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.
        },
        "artifactManifest": "A String", # Path to the artifact manifest. Only populated when artifacts are uploaded.
        "images": [ # Container images that were built as a part of the build.
          { # An image built by the pipeline.
            "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.
            },
            "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.
          },
        ],
        "buildStepImages": [ # List of build step digests, in the order corresponding to build step
            # indices.
          "A String",
        ],
        "numArtifacts": "A String", # Number of artifacts uploaded. Only populated when artifacts are uploaded.
      },
      "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.
        "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.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "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.
              },
            ],
          },
        },
        "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.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing the source.
              #
              # This object must be a gzipped archive file (`.tar.gz`) containing source to
              # build.
          "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",
      ],
      "id": "A String", # Output only. Unique identifier of the build.
      "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.
        "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",
        ],
        "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.
          },
          "paths": [ # Path globs used to match files in the build's workspace.
            "A String",
          ],
          "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.
        },
      },
      "projectId": "A String", # Output only. ID of the project.
      "substitutions": { # Substitutions data for `Build` resource.
        "a_key": "A String",
      },
      "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.
          "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
              # project ID requesting the build is assumed.
          "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
              # regex.
          "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",
          },
          "repoName": "A String", # Required. Name of the Cloud Source Repository.
          "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
          "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.
        },
        "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.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing the source.
              #
              # This object must be a gzipped archive file (`.tar.gz`) containing source to
              # build.
          "bucket": "A String", # Google Cloud Storage bucket containing the source (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
        },
      },
      "status": "A String", # Output only. Status of the build.
      "tags": [ # Tags for annotation of a `Build`. These are not docker tags.
        "A String",
      ],
      "statusDetail": "A String", # Output only. Customer-readable message about the current status.
      "startTime": "A String", # Output only. Time at which execution of the build was started.
      "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.
        },
      },
      "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.
      "createTime": "A String", # Output only. Time at which the request to create the build was received.
      "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.
      "buildTriggerId": "A String", # Output only. The ID of the `BuildTrigger` that triggered this build, if it
          # was triggered automatically.
      "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.
          "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",
          },
          "kmsKeyName": "A String", # Cloud KMS key name to use to decrypt these envs.
        },
      ],
      "steps": [ # Required. The operations to be performed on the workspace.
        { # A step in the build pipeline.
          "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.
          "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",
          ],
          "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",
          ],
          "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",
          ],
          "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.
          "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",
          ],
          "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.
            },
          ],
          "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.
          },
          "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.
          },
          "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.
          "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.
        },
      ],
      "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`.
          #
          # Default time is ten minutes.
      "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`.
      "options": { # Optional arguments to enable specific features of builds. # Special options for this build.
        "substitutionOption": "A String", # Option to specify behavior when there is an error in the substitution
            # checks.
        "machineType": "A String", # Compute Engine machine type on which to run the build.
        "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",
        ],
        "sourceProvenanceHash": [ # Requested hash for SourceProvenance.
          "A String",
        ],
        "logStreamingOption": "A String", # Option to define build log streaming behavior to Google Cloud
            # Storage.
        "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",
        ],
        "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.
        "logging": "A String", # Option to specify the logging mode, which determines where the logs are
            # stored.
        "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.
          },
        ],
        "requestedVerifyOption": "A String", # Requested verifiability options.
        "workerPool": "A String", # Option to specify a `WorkerPool` for the build.
            # Format: projects/{project}/workerPools/{workerPool}
            #
            # This field is experimental.
      },
      "logUrl": "A String", # Output only. URL to logs for this build in Google Cloud Console.
    },
    "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",
    ],
    "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`.
      "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
          # project ID requesting the build is assumed.
      "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
          # regex.
      "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",
      },
      "repoName": "A String", # Required. Name of the Cloud Source Repository.
      "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
      "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.
    },
    "createTime": "A String", # Output only. Time when the trigger was created.
    "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.
  }
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.
  "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the
      # project ID requesting the build is assumed.
  "invertRegex": True or False, # Only trigger a build if the revision regex does NOT match the revision
      # regex.
  "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",
  },
  "repoName": "A String", # Required. Name of the Cloud Source Repository.
  "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
  "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.
}

  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.
    "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.
    },
    "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.
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "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.
        },
      ],
    },
    "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.
    },
    "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}`.
  }