NAME
    gcloud beta spanner instance-configs create - create a Cloud Spanner
        instance configuration

SYNOPSIS
    gcloud beta spanner instance-configs create INSTANCE_CONFIG
        (--base-config=BASE_CONFIG --replicas=location=LOCATION,type=TYPE:[...]
          | [--clone-config=INSTANCE_CONFIG
          : --add-replicas=location=LOCATION,type=TYPE:[...]
          --skip-replicas=location=LOCATION,type=TYPE:[...]]) [--async]
        [--display-name=DISPLAY_NAME] [--etag=ETAG] [--labels=[KEY=VALUE,...]]
        [--validate-only] [GCLOUD_WIDE_FLAG ...]

DESCRIPTION
    (BETA) Create a Cloud Spanner instance configuration.

EXAMPLES
    To create a custom Cloud Spanner instance configuration based on an
    existing Google-managed configuration (nam3) by adding a READ_ONLY type
    replica in location us-east4, run:

        $ gcloud beta spanner instance-configs create \
            custom-instance-config --clone-config=nam3 \
            --add-replicas=location=us-east4,type=READ_ONLY

    To create a custom Cloud Spanner instance configuration based on another
    custom configuration (custom-instance-config) by adding a READ_ONLY type
    replica in location us-east1 and removing a READ_ONLY type replica in
    location us-east4, run:

        $ gcloud beta spanner instance-configs create \
            custom-instance-config1 --clone-config=custom-instance-config \
            --add-replicas=location=us-east1,type=READ_ONLY \
            --skip-replicas=location=us-east4,type=READ_ONLY

POSITIONAL ARGUMENTS
     INSTANCE_CONFIG
        Cloud Spanner instance configuration. The 'custom-' prefix is required
        to avoid name conflicts with Google-managed configurations.

REQUIRED FLAGS
     Exactly one of these must be specified:

       Command-line flags to setup a custom instance configuration replicas:

       --base-config=BASE_CONFIG
          The name of the Google-managed instance configuration, based on which
          your custom configuration is created.

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

       --replicas=location=LOCATION,type=TYPE:[...]
          The geographic placement of nodes in this instance configuration and
          their replication types.

           location
              The location of the serving resources, e.g. "us-central1".

           type
              The type of replica.

              Items in the list are separated by ":". The allowed values and
              formats are as follows.

           READ_ONLY
              Read-only replicas only support reads (not writes). Read-only
              replicas:

              ▫ Maintain a full copy of your data.

              ▫ Serve reads.

              ▫ Do not participate in voting to commit writes.

              ▫ Are not eligible to become a leader.

           READ_WRITE
              Read-write replicas support both reads and writes. These
              replicas:

              ▫ Maintain a full copy of your data.

              ▫ Serve reads.

              ▫ Can vote whether to commit a write.

              ▫ Participate in leadership election.

              ▫ Are eligible to become a leader.

           WITNESS
              Witness replicas don't support reads but do participate in voting
              to commit writes. Witness replicas:

              ▫ Do not maintain a full copy of data.

              ▫ Do not serve reads.

              ▫ Vote whether to commit writes.

              ▫ Participate in leader election but are not eligible to become
                leader.

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

       Command-line flags to setup a custom instance configuration using clone
       options:

       --clone-config=INSTANCE_CONFIG
          The ID of the instance config, based on which this configuration is
          created. The clone is an independent copy of this config. Available
          configurations can be found by running "gcloud spanner
          instance-configs list"

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

       --add-replicas=location=LOCATION,type=TYPE:[...]
          Add new replicas while cloning from the source config.

       --skip-replicas=location=LOCATION,type=TYPE:[...]
          Skip replicas from the source config while cloning. Each replica in
          the list must exist in the source config replicas list.

OPTIONAL FLAGS
     --async
        Return immediately, without waiting for the operation in progress to
        complete.

     --display-name=DISPLAY_NAME
        The name of this instance configuration as it appears in UIs. Must
        specify this option if creating an instance-config with --replicas.

     --etag=ETAG
        Used for optimistic concurrency control.

     --labels=[KEY=VALUE,...]
        List of label KEY=VALUE pairs to add.

        Keys must start with a lowercase character and contain only hyphens
        (-), underscores (_), lowercase characters, and numbers. Values must
        contain only hyphens (-), underscores (_), lowercase characters, and
        numbers.

     --validate-only
        If specified, validate that the creation will succeed without creating
        the instance configuration.

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 beta and might change without notice. These
    variants are also available:

        $ gcloud spanner instance-configs create

        $ gcloud alpha spanner instance-configs create

