NAME
    gcloud alpha builds triggers create pubsub - create a build trigger with a
        Pub/Sub trigger event

SYNOPSIS
    gcloud alpha builds triggers create pubsub
        (--trigger-config=PATH | [--topic=TOPIC (--build-config=PATH
          | --inline-config=PATH | [--dockerfile=DOCKERFILE
          : --dockerfile-dir=DOCKERFILE_DIR;
          default="/" --dockerfile-image=DOCKERFILE_IMAGE])
          : --description=DESCRIPTION --name=NAME --region=REGION
          --[no-]require-approval --service-account=SERVICE_ACCOUNT
          --subscription-filter=SUBSCRIPTION_FILTER
          --substitutions=[KEY=VALUE,...] --branch=BRANCH
          | --tag=TAG --repository=REPOSITORY
          | [--repo=REPO --repo-type=REPO_TYPE
          : --github-enterprise-config=GITHUB_ENTERPRISE_CONFIG]])
        [GCLOUD_WIDE_FLAG ...]

DESCRIPTION
    (ALPHA) Create a build trigger with a Pub/Sub trigger event.

EXAMPLES
    To create a Pub/Sub trigger that listens to topic my-topic and builds off
    branch my-branch in a GitHub repository named my-repo:

        $ gcloud alpha builds triggers create pubsub \
            --name=my-pubsub-trigger \
            --service-account="projects/my-project/serviceAccounts/my-byosa@\
        my-project.iam.gserviceaccount.com" \
            --topic=projects/my-project/topics/my-topic \
            --repo=https://www.github.com/owner/repo --repo-type=GITHUB \
            --branch=my-branch

    To create a Pub/Sub trigger that listens to topic my-topic and builds off
    branch my-branch in a 2nd-gen GitHub repository resource:

        $ gcloud alpha builds triggers create pubsub \
            --name=my-pubsub-trigger \
            --service-account="projects/my-project/serviceAccounts/my-byosa@\
        my-project.iam.gserviceaccount.com" \
            --repository=projects/my-proj/locations/us-west1/connections/\
        my-conn/repositories/my-repo --branch=my-branch

REQUIRED FLAGS
     Exactly one of these must be specified:

       --trigger-config=PATH
          Path to Build Trigger config file (JSON or YAML format). For more
          details, see
          https://cloud.google.com/cloud-build/docs/api/reference/rest/v1/projects.triggers#BuildTrigger

       Or at least one of these can be specified:

         Flag based trigger configuration

         --topic=TOPIC
            The topic to which this trigger should subscribe.

            This flag argument must be specified if any of the other arguments
            in this group are specified.

         --description=DESCRIPTION
            Build trigger description.

         --name=NAME
            Build trigger name.

         --region=REGION
            The region of the Cloud Build Service to use. Must be set to a
            supported region name (e.g. us-central1). If unset, builds/region,
            which is the default region to use when working with Cloud Build
            resources, is used. If builds/region is unset, region is set to
            global. Note: Region must be specified in 2nd gen repo; global is
            not supported.

         --[no-]require-approval
            Require manual approval for triggered builds. Use
            --require-approval to enable and --no-require-approval to disable.

         --service-account=SERVICE_ACCOUNT
            The service account used for all user-controlled operations
            including UpdateBuildTrigger, RunBuildTrigger, CreateBuild, and
            CancelBuild. If no service account is set, then the standard Cloud
            Build service account ([PROJECT_NUM]@system.gserviceaccount.com) is
            used instead. Format:
            projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT_ID_OR_EMAIL}.

         --subscription-filter=SUBSCRIPTION_FILTER
            CEL filter expression for the trigger. See
            https://cloud.google.com/build/docs/filter-build-events-using-cel
            for more details.

         --substitutions=[KEY=VALUE,...]
            Parameters to be substituted in the build specification. For
            example:

                $ gcloud alpha builds triggers create pubsub ... \
                    --substitutions _FAVORITE_COLOR=blue,_NUM_CANDIES=10

            This will result in a build where every occurrence of
            ${_FAVORITE_COLOR} in certain fields is replaced by "blue", and
            similarly for ${_NUM_CANDIES} and "10".

            Substitutions can be applied to user-defined variables (starting
            with an underscore) and to the following built-in variables:
            REPO_NAME, BRANCH_NAME, TAG_NAME, REVISION_ID, COMMIT_SHA,
            SHORT_SHA.

            For more details, see:
            https://cloud.google.com/build/docs/configuring-builds/substitute-variable-values

         Exactly one of these must be specified:

           --build-config=PATH
              Path to a YAML or JSON file containing the build configuration in
              the repository.

              For more details, see:
              https://cloud.google.com/cloud-build/docs/build-config

           --inline-config=PATH
              Local path to a YAML or JSON file containing a build
              configuration.

           Or at least one of these can be specified:

             Dockerfile build configuration flags

             --dockerfile=DOCKERFILE
                Path of Dockerfile to use for builds in the repository.

                If specified, a build config will be generated to run docker
                build using the specified file.

                The filename is relative to the Dockerfile directory.

                This flag argument must be specified if any of the other
                arguments in this group are specified.

             --dockerfile-dir=DOCKERFILE_DIR; default="/"
                Location of the directory containing the Dockerfile in the
                repository.

                The directory will also be used as the Docker build context.

             --dockerfile-image=DOCKERFILE_IMAGE
                Docker image name to build.

                If not specified,
                gcr.io/PROJECT/github.com/REPO_OWNER/REPO_NAME:$COMMIT_SHA will
                be used.

                Use a build configuration (cloudbuild.yaml) file for building
                multiple images in a single trigger.

         Flags for repository and branch information

         At most one of these can be specified:

           --branch=BRANCH
              Branch to build.

           --tag=TAG
              Tag to build.

         Flags for repository information

         At most one of these can be specified:

           --repository=REPOSITORY
              Repository resource (2nd gen) to use, in the format
              "projects/*/locations/*/connections/*/repositories/".

           Or at least one of these can be specified:

             1st-gen repository settings.

             --repo=REPO
                URI of the repository (1st gen). Currently only HTTP URIs for
                GitHub and Cloud Source Repositories are supported.

                This flag argument must be specified if any of the other
                arguments in this group are specified.

             --repo-type=REPO_TYPE
                Type of the repository (1st gen). Currently only GitHub and
                Cloud Source Repository types are supported.

                This flag argument must be specified if any of the other
                arguments in this group are specified.

             --github-enterprise-config=GITHUB_ENTERPRISE_CONFIG
                The resource name of the GitHub Enterprise config that should
                be applied to this source (1st gen). Format:
                projects/{project}/locations/{location}/githubEnterpriseConfigs/{id}
                or projects/{project}/githubEnterpriseConfigs/{id}

GCLOUD WIDE FLAGS
    These flags are available to all commands: --access-token-file, --account,
    --billing-project, --configuration, --flags-file, --flatten, --format,
    --help, --impersonate-service-account, --log-http, --project, --quiet,
    --trace-token, --user-output-enabled, --verbosity.

    Run $ gcloud help for details.

NOTES
    This command is currently in alpha and might change without notice. If this
    command fails with API permission errors despite specifying the correct
    project, you might be trying to access an API with an invitation-only early
    access allowlist. These variants are also available:

        $ gcloud builds triggers create pubsub

        $ gcloud beta builds triggers create pubsub

