delowan.googlecloud.gcp_cloudbuild_trigger (1.0.2) — module

Creates a GCP Trigger

Authors: Google Inc. (@googlecloudplatform)

preview | supported by community

Install collection

Install with ansible-galaxy collection install delowan.googlecloud:==1.0.2


Add to requirements.yml

  collections:
    - name: delowan.googlecloud
      version: 1.0.2

Description

Configuration for an automated build in response to source repository changes.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a repository
  google.cloud.gcp_sourcerepo_repository:
    name: projects/{{ gcp_project }}/repos/{{ resource_name }}
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a trigger
  google.cloud.gcp_cloudbuild_trigger:
    trigger_template:
      branch_name: master
      project_id: test_project
      repo_name: test_object
    filename: cloudbuild.yaml
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Inputs

    
id:
    description:
    - The unique identifier for the trigger.
    required: false
    type: str

name:
    description:
    - Name of the trigger. Must be unique within the project.
    required: false
    type: str

tags:
    description:
    - Tags for annotation of a BuildTrigger .
    elements: str
    required: false
    type: list

build:
    description:
    - Contents of the build template. Either a filename or build template must be provided.
    required: false
    suboptions:
      artifacts:
        description:
        - Artifacts produced by the build that should be uploaded upon successful completion
          of all build steps.
        required: false
        suboptions:
          images:
            description:
            - 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.
            elements: str
            required: false
            type: list
          objects:
            description:
            - 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 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.
            required: false
            suboptions:
              location:
                description:
                - Cloud Storage bucket and optional object path, in the form "gs://bucket/path/to/somewhere/".
                - Files in the workspace matching any path pattern will be uploaded to
                  Cloud Storage with this location as a prefix.
                required: false
                type: str
              paths:
                description:
                - Path globs used to match files in the build's workspace.
                elements: str
                required: false
                type: list
            type: dict
        type: dict
      images:
        description:
        - 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.
        elements: str
        required: false
        type: list
      logs_bucket:
        description:
        - Google Cloud Storage bucket where logs should be written. Logs file names will
          be of the format ${logsBucket}/log-${build_id}.txt.
        required: false
        type: str
      options:
        description:
        - Special options for this build.
        required: false
        suboptions:
          disk_size_gb:
            description:
            - 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.
            required: false
            type: int
          dynamic_substitutions:
            description:
            - Option to specify whether or not to apply bash style string operations to
              the substitutions.
            - NOTE this is always enabled for triggered builds and cannot be overridden
              in the build configuration file.
            required: false
            type: bool
          env:
            description:
            - 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".
            elements: str
            required: false
            type: list
          log_streaming_option:
            description:
            - Option to define build log streaming behavior to Google Cloud Storage.
            - 'Some valid choices include: "STREAM_DEFAULT", "STREAM_ON", "STREAM_OFF"'
            required: false
            type: str
          logging:
            description:
            - Option to specify the logging mode, which determines if and where build
              logs are stored.
            - 'Some valid choices include: "LOGGING_UNSPECIFIED", "LEGACY", "GCS_ONLY",
              "STACKDRIVER_ONLY", "NONE"'
            required: false
            type: str
          machine_type:
            description:
            - Compute Engine machine type on which to run the build.
            - 'Some valid choices include: "UNSPECIFIED", "N1_HIGHCPU_8", "N1_HIGHCPU_32",
              "E2_HIGHCPU_8", "E2_HIGHCPU_32"'
            required: false
            type: str
          requested_verify_option:
            description:
            - Requested verifiability options.
            - 'Some valid choices include: "NOT_VERIFIED", "VERIFIED"'
            required: false
            type: str
          secret_env:
            description:
            - 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.
            elements: str
            required: false
            type: list
          source_provenance_hash:
            description:
            - Requested hash for SourceProvenance.
            elements: str
            required: false
            type: list
          substitution_option:
            description:
            - Option to specify behavior when there is an error in the substitution checks.
            - NOTE this is always set to ALLOW_LOOSE for triggered builds and cannot be
              overridden in the build configuration file.
            - 'Some valid choices include: "MUST_MATCH", "ALLOW_LOOSE"'
            required: false
            type: str
          volumes:
            description:
            - 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.
            elements: dict
            required: false
            suboptions:
              name:
                description:
                - 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.
                required: false
                type: str
              path:
                description:
                - 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.
                required: false
                type: str
            type: list
          worker_pool:
            description:
            - Option to specify a WorkerPool for the build. Format projects/{project}/workerPools/{workerPool}
              This field is experimental.
            required: false
            type: str
        type: dict
      queue_ttl:
        description:
        - 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 createTime.
        - 'A duration in seconds with up to nine fractional digits, terminated by ''s''.
          Example: "3.5s".'
        required: false
        type: str
      secrets:
        description:
        - Secrets to decrypt using Cloud Key Management Service.
        elements: dict
        required: false
        suboptions:
          kms_key_name:
            description:
            - Cloud KMS key name to use to decrypt these envs.
            required: true
            type: str
          secret_env:
            description:
            - 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.
            required: false
            type: dict
        type: list
      source:
        description:
        - The location of the source files to build.
        required: false
        suboptions:
          repo_source:
            description:
            - Location of the source in a Google Cloud Source Repository.
            required: false
            suboptions:
              branch_name:
                description:
                - Regex matching branches to build. Exactly one a of branch name, tag,
                  or commit SHA must be provided.
                - The syntax of the regular expressions accepted is the syntax accepted
                  by RE2 and described at U(https://github.com/google/re2/wiki/Syntax)
                  .
                required: false
                type: str
              commit_sha:
                description:
                - Explicit commit SHA to build. Exactly one a of branch name, tag, or
                  commit SHA must be provided.
                required: false
                type: str
              dir:
                description:
                - 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.
                required: false
                type: str
              invert_regex:
                description:
                - Only trigger a build if the revision regex does NOT match the revision
                  regex.
                required: false
                type: bool
              project_id:
                description:
                - ID of the project that owns the Cloud Source Repository. If omitted,
                  the project ID requesting the build is assumed.
                required: false
                type: str
              repo_name:
                description:
                - Name of the Cloud Source Repository.
                required: true
                type: str
              substitutions:
                description:
                - Substitutions to use in a triggered build. Should only be used with
                  triggers.run .
                required: false
                type: dict
              tag_name:
                description:
                - Regex matching tags to build. Exactly one a of branch name, tag, or
                  commit SHA must be provided.
                - The syntax of the regular expressions accepted is the syntax accepted
                  by RE2 and described at U(https://github.com/google/re2/wiki/Syntax)
                  .
                required: false
                type: str
            type: dict
          storage_source:
            description:
            - Location of the source in an archive file in Google Cloud Storage.
            required: false
            suboptions:
              bucket:
                description:
                - Google Cloud Storage bucket containing the source.
                required: true
                type: str
              generation:
                description:
                - Google Cloud Storage generation for the object. If the generation is
                  omitted, the latest generation will be used .
                required: false
                type: str
              object:
                description:
                - Google Cloud Storage object containing the source.
                - This object must be a gzipped archive file (.tar.gz) containing source
                  to build.
                required: true
                type: str
            type: dict
        type: dict
      steps:
        description:
        - The operations to be performed on the workspace.
        elements: dict
        required: true
        suboptions:
          args:
            description:
            - 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.
            elements: str
            required: false
            type: list
          dir:
            description:
            - 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.
            required: false
            type: str
          entrypoint:
            description:
            - Entrypoint to be used instead of the build step image's default entrypoint.
            - If unset, the image's default entrypoint is used .
            required: false
            type: str
          env:
            description:
            - 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".
            elements: str
            required: false
            type: list
          id:
            description:
            - Unique identifier for this build step, used in `wait_for` to reference this
              build step as a dependency.
            required: false
            type: str
          name:
            description:
            - 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 (see U(https://github.com/GoogleCloudPlatform/cloud-builders)
              for images and examples).
            - 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.
            required: true
            type: str
          secret_env:
            description:
            - 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`.
            elements: str
            required: false
            type: list
          timeout:
            description:
            - 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.
            required: false
            type: str
          timing:
            description:
            - Output only. Stores timing information for executing this build step.
            required: false
            type: str
          volumes:
            description:
            - 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.
            elements: dict
            required: false
            suboptions:
              name:
                description:
                - 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.
                required: true
                type: str
              path:
                description:
                - 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.
                required: true
                type: str
            type: list
          wait_for:
            description:
            - 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.
            elements: str
            required: false
            type: list
        type: list
      substitutions:
        description:
        - Substitutions data for Build resource.
        required: false
        type: dict
      tags:
        description:
        - Tags for annotation of a Build. These are not docker tags.
        elements: str
        required: false
        type: list
      timeout:
        default: 600s
        description:
        - 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.
        - This timeout must be equal to or greater than the sum of the timeouts for build
          steps within the build.
        - The expected format is the number of seconds followed by s.
        - Default time is ten minutes (600s).
        required: false
        type: str
    type: dict

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Whether the given object should exist in GCP
    type: str

github:
    description:
    - Describes the configuration of a trigger that creates a build whenever a GitHub
      event is received.
    required: false
    suboptions:
      name:
        description:
        - 'Name of the repository. For example: The name for U(https://github.com/googlecloudplatform/cloud-builders)
          is "cloud-builders".'
        required: false
        type: str
      owner:
        description:
        - 'Owner of the repository. For example: The owner for U(https://github.com/googlecloudplatform/cloud-builders)
          is "googlecloudplatform".'
        required: false
        type: str
      pull_request:
        description:
        - filter to match changes in pull requests. Specify only one of pullRequest or
          push.
        required: false
        suboptions:
          branch:
            description:
            - Regex of branches to match.
            required: true
            type: str
          comment_control:
            description:
            - Whether to block builds on a "/gcbrun" comment from a repository owner or
              collaborator.
            - 'Some valid choices include: "COMMENTS_DISABLED", "COMMENTS_ENABLED", "COMMENTS_ENABLED_FOR_EXTERNAL_CONTRIBUTORS_ONLY"'
            required: false
            type: str
          invert_regex:
            description:
            - If true, branches that do NOT match the git_ref will trigger a build.
            required: false
            type: bool
        type: dict
      push:
        description:
        - filter to match changes in refs, like branches or tags. Specify only one of
          pullRequest or push.
        required: false
        suboptions:
          branch:
            description:
            - Regex of branches to match. Specify only one of branch or tag.
            required: false
            type: str
          invert_regex:
            description:
            - When true, only trigger a build if the revision regex does NOT match the
              git_ref regex.
            required: false
            type: bool
          tag:
            description:
            - Regex of tags to match. Specify only one of branch or tag.
            required: false
            type: str
        type: dict
    type: dict

scopes:
    description:
    - Array of scopes to be used
    elements: str
    type: list

project:
    description:
    - The Google Cloud Platform project to use.
    type: str

disabled:
    description:
    - Whether the trigger is disabled or not. If true, the trigger will never result in
      a build.
    required: false
    type: bool

env_type:
    description:
    - Specifies which Ansible environment you're running this module within.
    - This should not be set unless you know what you're doing.
    - This only alters the User Agent string for any API requests.
    type: str

filename:
    description:
    - Path, from the source root, to a file whose contents is used for the template. Either
      a filename or build template must be provided.
    required: false
    type: str

auth_kind:
    choices:
    - application
    - machineaccount
    - serviceaccount
    description:
    - The type of credential used.
    required: true
    type: str

description:
    description:
    - Human-readable description of the trigger.
    required: false
    type: str

ignored_files:
    description:
    - ignoredFiles and includedFiles are file glob matches using U(https://golang.org/pkg/path/filepath/#Match)
      extended with support for `**`.
    - If ignoredFiles and changed files are both empty, then they are not used to determine
      whether or not to trigger a build.
    - If ignoredFiles 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 ignoredFiles globs, then
      we do not trigger a build.
    elements: str
    required: false
    type: list

substitutions:
    description:
    - Substitutions data for Build resource.
    required: false
    type: dict

included_files:
    description:
    - ignoredFiles and includedFiles are file glob matches using U(https://golang.org/pkg/path/filepath/#Match)
      extended with support for `**`.
    - If any of the files altered in the commit pass the ignoredFiles filter and includedFiles
      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 ignoredFiles filter and includedFiles
      is not empty, then we make sure that at least one of those files matches a includedFiles
      glob. If not, then we do not trigger a build.
    elements: str
    required: false
    type: list

trigger_template:
    description:
    - 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.
    required: false
    suboptions:
      branch_name:
        description:
        - Name of the branch to build. Exactly one a of branch name, tag, or commit SHA
          must be provided.
        - This field is a regular expression.
        required: false
        type: str
      commit_sha:
        description:
        - Explicit commit SHA to build. Exactly one of a branch name, tag, or commit SHA
          must be provided.
        required: false
        type: str
      dir:
        description:
        - 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.
        required: false
        type: str
      invert_regex:
        description:
        - Only trigger a build if the revision regex does NOT match the revision regex.
        required: false
        type: bool
      project_id:
        description:
        - ID of the project that owns the Cloud Source Repository. If omitted, the project
          ID requesting the build is assumed.
        required: false
        type: str
      repo_name:
        default: default
        description:
        - Name of the Cloud Source Repository. If omitted, the name "default" is assumed.
        required: false
        type: str
      tag_name:
        description:
        - Name of the tag to build. Exactly one of a branch name, tag, or commit SHA must
          be provided.
        - This field is a regular expression.
        required: false
        type: str
    type: dict

service_account_file:
    description:
    - The path of a Service Account JSON file if serviceaccount is selected as type.
    type: path

service_account_email:
    description:
    - An optional service account email address if machineaccount is selected and the
      user does not wish to use the default email.
    type: str

service_account_contents:
    description:
    - The contents of a Service Account JSON file, either in a dictionary or as a JSON
      string that represents it.
    type: jsonarg

Outputs

build:
  contains:
    artifacts:
      contains:
        images:
          description:
          - 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.
          returned: success
          type: list
        objects:
          contains:
            location:
              description:
              - Cloud Storage bucket and optional object path, in the form "gs://bucket/path/to/somewhere/".
              - Files in the workspace matching any path pattern will be uploaded
                to Cloud Storage with this location as a prefix.
              returned: success
              type: str
            paths:
              description:
              - Path globs used to match files in the build's workspace.
              returned: success
              type: list
            timing:
              contains:
                endTime:
                  description:
                  - End of time span.
                  - 'A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution
                    and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z"
                    and "2014-10-02T15:01:23.045123456Z".'
                  returned: success
                  type: str
                startTime:
                  description:
                  - Start of time span.
                  - 'A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution
                    and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z"
                    and "2014-10-02T15:01:23.045123456Z".'
                  returned: success
                  type: str
              description:
              - Output only. Stores timing information for pushing all artifact objects.
              returned: success
              type: complex
          description:
          - 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 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.
          returned: success
          type: complex
      description:
      - Artifacts produced by the build that should be uploaded upon successful completion
        of all build steps.
      returned: success
      type: complex
    images:
      description:
      - 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.
      returned: success
      type: list
    logsBucket:
      description:
      - Google Cloud Storage bucket where logs should be written. Logs file names
        will be of the format ${logsBucket}/log-${build_id}.txt.
      returned: success
      type: str
    options:
      contains:
        diskSizeGb:
          description:
          - 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.
          returned: success
          type: int
        dynamicSubstitutions:
          description:
          - Option to specify whether or not to apply bash style string operations
            to the substitutions.
          - NOTE this is always enabled for triggered builds and cannot be overridden
            in the build configuration file.
          returned: success
          type: bool
        env:
          description:
          - 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".
          returned: success
          type: list
        logStreamingOption:
          description:
          - Option to define build log streaming behavior to Google Cloud Storage.
          returned: success
          type: str
        logging:
          description:
          - Option to specify the logging mode, which determines if and where build
            logs are stored.
          returned: success
          type: str
        machineType:
          description:
          - Compute Engine machine type on which to run the build.
          returned: success
          type: str
        requestedVerifyOption:
          description:
          - Requested verifiability options.
          returned: success
          type: str
        secretEnv:
          description:
          - 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.
          returned: success
          type: list
        sourceProvenanceHash:
          description:
          - Requested hash for SourceProvenance.
          returned: success
          type: list
        substitutionOption:
          description:
          - Option to specify behavior when there is an error in the substitution
            checks.
          - NOTE this is always set to ALLOW_LOOSE for triggered builds and cannot
            be overridden in the build configuration file.
          returned: success
          type: str
        volumes:
          contains:
            name:
              description:
              - 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.
              returned: success
              type: str
            path:
              description:
              - 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.
              returned: success
              type: str
          description:
          - 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.
          returned: success
          type: complex
        workerPool:
          description:
          - Option to specify a WorkerPool for the build. Format projects/{project}/workerPools/{workerPool}
            This field is experimental.
          returned: success
          type: str
      description:
      - Special options for this build.
      returned: success
      type: complex
    queueTtl:
      description:
      - 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 createTime.
      - 'A duration in seconds with up to nine fractional digits, terminated by ''s''.
        Example: "3.5s".'
      returned: success
      type: str
    secrets:
      contains:
        kmsKeyName:
          description:
          - Cloud KMS key name to use to decrypt these envs.
          returned: success
          type: str
        secretEnv:
          description:
          - 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.
          returned: success
          type: dict
      description:
      - Secrets to decrypt using Cloud Key Management Service.
      returned: success
      type: complex
    source:
      contains:
        repoSource:
          contains:
            branchName:
              description:
              - Regex matching branches to build. Exactly one a of branch name, tag,
                or commit SHA must be provided.
              - The syntax of the regular expressions accepted is the syntax accepted
                by RE2 and described at U(https://github.com/google/re2/wiki/Syntax)
                .
              returned: success
              type: str
            commitSha:
              description:
              - Explicit commit SHA to build. Exactly one a of branch name, tag, or
                commit SHA must be provided.
              returned: success
              type: str
            dir:
              description:
              - 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.
              returned: success
              type: str
            invertRegex:
              description:
              - Only trigger a build if the revision regex does NOT match the revision
                regex.
              returned: success
              type: bool
            projectId:
              description:
              - ID of the project that owns the Cloud Source Repository. If omitted,
                the project ID requesting the build is assumed.
              returned: success
              type: str
            repoName:
              description:
              - Name of the Cloud Source Repository.
              returned: success
              type: str
            substitutions:
              description:
              - Substitutions to use in a triggered build. Should only be used with
                triggers.run .
              returned: success
              type: dict
            tagName:
              description:
              - Regex matching tags to build. Exactly one a of branch name, tag, or
                commit SHA must be provided.
              - The syntax of the regular expressions accepted is the syntax accepted
                by RE2 and described at U(https://github.com/google/re2/wiki/Syntax)
                .
              returned: success
              type: str
          description:
          - Location of the source in a Google Cloud Source Repository.
          returned: success
          type: complex
        storageSource:
          contains:
            bucket:
              description:
              - Google Cloud Storage bucket containing the source.
              returned: success
              type: str
            generation:
              description:
              - Google Cloud Storage generation for the object. If the generation
                is omitted, the latest generation will be used .
              returned: success
              type: str
            object:
              description:
              - Google Cloud Storage object containing the source.
              - This object must be a gzipped archive file (.tar.gz) containing source
                to build.
              returned: success
              type: str
          description:
          - Location of the source in an archive file in Google Cloud Storage.
          returned: success
          type: complex
      description:
      - The location of the source files to build.
      returned: success
      type: complex
    steps:
      contains:
        args:
          description:
          - 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.
          returned: success
          type: list
        dir:
          description:
          - 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.
          returned: success
          type: str
        entrypoint:
          description:
          - Entrypoint to be used instead of the build step image's default entrypoint.
          - If unset, the image's default entrypoint is used .
          returned: success
          type: str
        env:
          description:
          - 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".
          returned: success
          type: list
        id:
          description:
          - Unique identifier for this build step, used in `wait_for` to reference
            this build step as a dependency.
          returned: success
          type: str
        name:
          description:
          - 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 (see U(https://github.com/GoogleCloudPlatform/cloud-builders)
            for images and examples).
          - 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.
          returned: success
          type: str
        secretEnv:
          description:
          - 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`.
          returned: success
          type: list
        timeout:
          description:
          - 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.
          returned: success
          type: str
        timing:
          description:
          - Output only. Stores timing information for executing this build step.
          returned: success
          type: str
        volumes:
          contains:
            name:
              description:
              - 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.
              returned: success
              type: str
            path:
              description:
              - 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.
              returned: success
              type: str
          description:
          - 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.
          returned: success
          type: complex
        waitFor:
          description:
          - 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.
          returned: success
          type: list
      description:
      - The operations to be performed on the workspace.
      returned: success
      type: complex
    substitutions:
      description:
      - Substitutions data for Build resource.
      returned: success
      type: dict
    tags:
      description:
      - Tags for annotation of a Build. These are not docker tags.
      returned: success
      type: list
    timeout:
      description:
      - 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.
      - This timeout must be equal to or greater than the sum of the timeouts for
        build steps within the build.
      - The expected format is the number of seconds followed by s.
      - Default time is ten minutes (600s).
      returned: success
      type: str
  description:
  - Contents of the build template. Either a filename or build template must be provided.
  returned: success
  type: complex
createTime:
  description:
  - Time when the trigger was created.
  returned: success
  type: str
description:
  description:
  - Human-readable description of the trigger.
  returned: success
  type: str
disabled:
  description:
  - Whether the trigger is disabled or not. If true, the trigger will never result
    in a build.
  returned: success
  type: bool
filename:
  description:
  - Path, from the source root, to a file whose contents is used for the template.
    Either a filename or build template must be provided.
  returned: success
  type: str
github:
  contains:
    name:
      description:
      - 'Name of the repository. For example: The name for U(https://github.com/googlecloudplatform/cloud-builders)
        is "cloud-builders".'
      returned: success
      type: str
    owner:
      description:
      - 'Owner of the repository. For example: The owner for U(https://github.com/googlecloudplatform/cloud-builders)
        is "googlecloudplatform".'
      returned: success
      type: str
    pullRequest:
      contains:
        branch:
          description:
          - Regex of branches to match.
          returned: success
          type: str
        commentControl:
          description:
          - Whether to block builds on a "/gcbrun" comment from a repository owner
            or collaborator.
          returned: success
          type: str
        invertRegex:
          description:
          - If true, branches that do NOT match the git_ref will trigger a build.
          returned: success
          type: bool
      description:
      - filter to match changes in pull requests. Specify only one of pullRequest
        or push.
      returned: success
      type: complex
    push:
      contains:
        branch:
          description:
          - Regex of branches to match. Specify only one of branch or tag.
          returned: success
          type: str
        invertRegex:
          description:
          - When true, only trigger a build if the revision regex does NOT match the
            git_ref regex.
          returned: success
          type: bool
        tag:
          description:
          - Regex of tags to match. Specify only one of branch or tag.
          returned: success
          type: str
      description:
      - filter to match changes in refs, like branches or tags. Specify only one of
        pullRequest or push.
      returned: success
      type: complex
  description:
  - Describes the configuration of a trigger that creates a build whenever a GitHub
    event is received.
  returned: success
  type: complex
id:
  description:
  - The unique identifier for the trigger.
  returned: success
  type: str
ignoredFiles:
  description:
  - ignoredFiles and includedFiles are file glob matches using U(https://golang.org/pkg/path/filepath/#Match)
    extended with support for `**`.
  - If ignoredFiles and changed files are both empty, then they are not used to determine
    whether or not to trigger a build.
  - If ignoredFiles 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 ignoredFiles globs,
    then we do not trigger a build.
  returned: success
  type: list
includedFiles:
  description:
  - ignoredFiles and includedFiles are file glob matches using U(https://golang.org/pkg/path/filepath/#Match)
    extended with support for `**`.
  - If any of the files altered in the commit pass the ignoredFiles filter and includedFiles
    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 ignoredFiles filter and includedFiles
    is not empty, then we make sure that at least one of those files matches a includedFiles
    glob. If not, then we do not trigger a build.
  returned: success
  type: list
name:
  description:
  - Name of the trigger. Must be unique within the project.
  returned: success
  type: str
substitutions:
  description:
  - Substitutions data for Build resource.
  returned: success
  type: dict
tags:
  description:
  - Tags for annotation of a BuildTrigger .
  returned: success
  type: list
triggerTemplate:
  contains:
    branchName:
      description:
      - Name of the branch to build. Exactly one a of branch name, tag, or commit
        SHA must be provided.
      - This field is a regular expression.
      returned: success
      type: str
    commitSha:
      description:
      - Explicit commit SHA to build. Exactly one of a branch name, tag, or commit
        SHA must be provided.
      returned: success
      type: str
    dir:
      description:
      - 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.
      returned: success
      type: str
    invertRegex:
      description:
      - Only trigger a build if the revision regex does NOT match the revision regex.
      returned: success
      type: bool
    projectId:
      description:
      - ID of the project that owns the Cloud Source Repository. If omitted, the project
        ID requesting the build is assumed.
      returned: success
      type: str
    repoName:
      description:
      - Name of the Cloud Source Repository. If omitted, the name "default" is assumed.
      returned: success
      type: str
    tagName:
      description:
      - Name of the tag to build. Exactly one of a branch name, tag, or commit SHA
        must be provided.
      - This field is a regular expression.
      returned: success
      type: str
  description:
  - 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.
  returned: success
  type: complex