NAME
    gcloud beta saas-runtime unit-kinds update - update a Unit Kind

SYNOPSIS
    gcloud beta saas-runtime unit-kinds update UNIT_KIND [--location=LOCATION]
        [--saas=SAAS]
        [--clear-default-release | --default-release=DEFAULT_RELEASE]
        [--dependencies=[alias=ALIAS],[unitKind=UNITKIND]
          | --add-dependencies=[alias=ALIAS],[unitKind=UNITKIND]
          --clear-dependencies
          | --remove-dependencies=[alias=ALIAS],[unitKind=UNITKIND]]
        [--input-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
          | --add-input-variable-mappings=[from=FROM],
          [to=TO],[variable=VARIABLE] --clear-input-variable-mappings
          | --remove-input-variable-mappings=[from=FROM],
          [to=TO],[variable=VARIABLE]]
        [--labels=[LABELS,...]
          | --update-labels=[UPDATE_LABELS,...] --clear-labels
          | --remove-labels=REMOVE_LABELS]
        [--output-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
          | --add-output-variable-mappings=[from=FROM],
          [to=TO],[variable=VARIABLE] --clear-output-variable-mappings
          | --remove-output-variable-mappings=[from=FROM],
          [to=TO],[variable=VARIABLE]] [GCLOUD_WIDE_FLAG ...]

DESCRIPTION
    (BETA) Update a Unit Kind

EXAMPLES
    To update the Unit Kind, run:

        $ gcloud beta saas-runtime unit-kinds update

POSITIONAL ARGUMENTS
     UnitKind resource - Identifier. The resource name (full URI of the
     resource) following the standard naming scheme:

         "projects/{project}/locations/{location}/unitKinds/{unitKind}" This represents a Cloud resource. (NOTE) Some attributes are not given arguments in this group but can be set in other ways.

     To set the project attribute:
      ◆ provide the argument unit_kind on the command line with a fully
        specified name;
      ◆ provide the argument --project on the command line;
      ◆ set the property core/project.

     To set the location attribute:
      ◆ provide the argument unit_kind on the command line with a fully
        specified name;
      ◆ provide the argument --location on the command line.

     This must be specified.

       UNIT_KIND
          ID of the unitKind or fully qualified identifier for the unitKind.

          To set the unit_kind attribute:
          ▸ provide the argument unit_kind on the command line.

FLAGS
     --location=LOCATION
        For resources [default-release, saas, unit_kind], provides fallback
        value for resource location attribute. When the resource's full URI
        path is not provided, location will fallback to this flag value.

     Saas resource - A reference to the Saas that defines the product (managed
     service) that the producer wants to manage with Saas Runtime. Immutable
     once set. This represents a Cloud resource. (NOTE) Some attributes are not
     given arguments in this group but can be set in other ways.

     To set the project attribute:
      ◆ provide the argument --saas on the command line with a fully
        specified name;
      ◆ provide the argument --project on the command line;
      ◆ set the property core/project.

     To set the location attribute:
      ◆ provide the argument --saas on the command line with a fully
        specified name;
      ◆ provide the argument --location on the command line.

       --saas=SAAS
          ID of the saas or fully qualified identifier for the saas.

          To set the saas attribute:
          ▸ provide the argument --saas on the command line.

     Update default_release.

     At most one of these can be specified:

       --clear-default-release
          Clear default_release value and set to null.

       Release resource - Set default_release to new value.

       A reference to the Release object to use as default for creating new
       units of this Unit Kind.

       If not specified, a new unit must explicitly reference which release to
       use for its creation. This represents a Cloud resource. (NOTE) Some
       attributes are not given arguments in this group but can be set in other
       ways.

       To set the project attribute:
        ▸ provide the argument --default-release on the command line with a
          fully specified name;
        ▸ provide the argument --project on the command line;
        ▸ set the property core/project.

       To set the location attribute:
        ▸ provide the argument --default-release on the command line with a
          fully specified name;
        ▸ provide the argument --location on the command line.

         --default-release=DEFAULT_RELEASE
            ID of the release or fully qualified identifier for the release.

            To set the release attribute:
            ▫ provide the argument --default-release on the command line.

     Update dependencies.

     At most one of these can be specified:

       --dependencies=[alias=ALIAS],[unitKind=UNITKIND]
          Set dependencies to new value. List of other unit kinds that this
          release will depend on. Dependencies will be automatically
          provisioned if not found. Maximum 10.

           alias
              An alias for the dependency. Used for input variable mapping.

           unitKind
              The unit kind of the dependency.

          Shorthand Example:

              --dependencies=alias=string,unitKind=string --dependencies=alias=string,unitKind=string

          JSON Example:

              --dependencies='[{"alias": "string", "unitKind": "string"}]'

          File Example:

              --dependencies=path_to_file.(yaml|json)

       --add-dependencies=[alias=ALIAS],[unitKind=UNITKIND]
          Add new value to dependencies list. List of other unit kinds that
          this release will depend on. Dependencies will be automatically
          provisioned if not found. Maximum 10.

           alias
              An alias for the dependency. Used for input variable mapping.

           unitKind
              The unit kind of the dependency.

          Shorthand Example:

              --add-dependencies=alias=string,unitKind=string --add-dependencies=alias=string,unitKind=string

          JSON Example:

              --add-dependencies='[{"alias": "string", "unitKind": "string"}]'

          File Example:

              --add-dependencies=path_to_file.(yaml|json)

       At most one of these can be specified:

         --clear-dependencies
            Clear dependencies value and set to empty list.

         --remove-dependencies=[alias=ALIAS],[unitKind=UNITKIND]
            Remove existing value from dependencies list. List of other unit
            kinds that this release will depend on. Dependencies will be
            automatically provisioned if not found. Maximum 10.

             alias
                An alias for the dependency. Used for input variable mapping.

             unitKind
                The unit kind of the dependency.

            Shorthand Example:

                --remove-dependencies=alias=string,unitKind=string --remove-dependencies=alias=string,unitKind=string

            JSON Example:

                --remove-dependencies='[{"alias": "string", "unitKind": "string"}]'

            File Example:

                --remove-dependencies=path_to_file.(yaml|json)

     Update input_variable_mappings.

     At most one of these can be specified:

       --input-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
          Set input_variable_mappings to new value. List of inputVariables for
          this release that will either be retrieved from a dependency's
          outputVariables, or will be passed on to a dependency's
          inputVariables. Maximum 100.

           from
              Output variables which will get their values from dependencies.

               dependency
                  Alias of the dependency that the outputVariable will pass its
                  value to.

               outputVariable
                  Name of the outputVariable on the dependency.

           to
              Input variables whose values will be passed on to dependencies.

               dependency
                  Alias of the dependency that the inputVariable will pass its
                  value to.

               ignoreForLookup
                  Tells SaaS Runtime if this mapping should be used during
                  lookup or not.

               inputVariable
                  Name of the inputVariable on the dependency.

           variable
              name of the variable.

          Shorthand Example:

              --input-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string --input-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string

          JSON Example:

              --input-variable-mappings='[{"from": {"dependency": "string", "outputVariable": "string"}, "to": {"dependency": "string", "ignoreForLookup": boolean, "inputVariable": "string"}, "variable": "string"}]'

          File Example:

              --input-variable-mappings=path_to_file.(yaml|json)

       --add-input-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
          Add new value to input_variable_mappings list. List of inputVariables
          for this release that will either be retrieved from a dependency's
          outputVariables, or will be passed on to a dependency's
          inputVariables. Maximum 100.

           from
              Output variables which will get their values from dependencies.

               dependency
                  Alias of the dependency that the outputVariable will pass its
                  value to.

               outputVariable
                  Name of the outputVariable on the dependency.

           to
              Input variables whose values will be passed on to dependencies.

               dependency
                  Alias of the dependency that the inputVariable will pass its
                  value to.

               ignoreForLookup
                  Tells SaaS Runtime if this mapping should be used during
                  lookup or not.

               inputVariable
                  Name of the inputVariable on the dependency.

           variable
              name of the variable.

          Shorthand Example:

              --add-input-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string --add-input-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string

          JSON Example:

              --add-input-variable-mappings='[{"from": {"dependency": "string", "outputVariable": "string"}, "to": {"dependency": "string", "ignoreForLookup": boolean, "inputVariable": "string"}, "variable": "string"}]'

          File Example:

              --add-input-variable-mappings=path_to_file.(yaml|json)

       At most one of these can be specified:

         --clear-input-variable-mappings
            Clear input_variable_mappings value and set to empty list.

         --remove-input-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
            Remove existing value from input_variable_mappings list. List of
            inputVariables for this release that will either be retrieved from
            a dependency's outputVariables, or will be passed on to a
            dependency's inputVariables. Maximum 100.

             from
                Output variables which will get their values from dependencies.

                 dependency
                    Alias of the dependency that the outputVariable will pass
                    its value to.

                 outputVariable
                    Name of the outputVariable on the dependency.

             to
                Input variables whose values will be passed on to dependencies.

                 dependency
                    Alias of the dependency that the inputVariable will pass
                    its value to.

                 ignoreForLookup
                    Tells SaaS Runtime if this mapping should be used during
                    lookup or not.

                 inputVariable
                    Name of the inputVariable on the dependency.

             variable
                name of the variable.

            Shorthand Example:

                --remove-input-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string --remove-input-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string

            JSON Example:

                --remove-input-variable-mappings='[{"from": {"dependency": "string", "outputVariable": "string"}, "to": {"dependency": "string", "ignoreForLookup": boolean, "inputVariable": "string"}, "variable": "string"}]'

            File Example:

                --remove-input-variable-mappings=path_to_file.(yaml|json)

     Update labels.

     At most one of these can be specified:

       --labels=[LABELS,...]
          Set labels to new value. The labels on the resource, which can be
          used for categorization. similar to Kubernetes resource labels.

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

           VALUE
              Values must contain only hyphens (-), underscores (_), lowercase
              characters, and numbers.

          Shorthand Example:

              --labels=string=string

          JSON Example:

              --labels='{"string": "string"}'

          File Example:

              --labels=path_to_file.(yaml|json)

       --update-labels=[UPDATE_LABELS,...]
          Update labels value or add key value pair. The labels on the
          resource, which can be used for categorization. similar to Kubernetes
          resource labels.

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

           VALUE
              Values must contain only hyphens (-), underscores (_), lowercase
              characters, and numbers.

          Shorthand Example:

              --update-labels=string=string

          JSON Example:

              --update-labels='{"string": "string"}'

          File Example:

              --update-labels=path_to_file.(yaml|json)

       At most one of these can be specified:

         --clear-labels
            Clear labels value and set to empty map.

         --remove-labels=REMOVE_LABELS
            Remove existing value from map labels. Sets remove_labels value.

            Shorthand Example:

                --remove-labels=string,string

            JSON Example:

                --remove-labels=["string"]

            File Example:

                --remove-labels=path_to_file.(yaml|json)

     Update output_variable_mappings.

     At most one of these can be specified:

       --output-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
          Set output_variable_mappings to new value. List of outputVariables
          for this unit kind will be passed to this unit's outputVariables.
          Maximum 100.

           from
              Output variables which will get their values from dependencies.

               dependency
                  Alias of the dependency that the outputVariable will pass its
                  value to.

               outputVariable
                  Name of the outputVariable on the dependency.

           to
              Input variables whose values will be passed on to dependencies.

               dependency
                  Alias of the dependency that the inputVariable will pass its
                  value to.

               ignoreForLookup
                  Tells SaaS Runtime if this mapping should be used during
                  lookup or not.

               inputVariable
                  Name of the inputVariable on the dependency.

           variable
              name of the variable.

          Shorthand Example:

              --output-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string --output-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string

          JSON Example:

              --output-variable-mappings='[{"from": {"dependency": "string", "outputVariable": "string"}, "to": {"dependency": "string", "ignoreForLookup": boolean, "inputVariable": "string"}, "variable": "string"}]'

          File Example:

              --output-variable-mappings=path_to_file.(yaml|json)

       --add-output-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
          Add new value to output_variable_mappings list. List of
          outputVariables for this unit kind will be passed to this unit's
          outputVariables. Maximum 100.

           from
              Output variables which will get their values from dependencies.

               dependency
                  Alias of the dependency that the outputVariable will pass its
                  value to.

               outputVariable
                  Name of the outputVariable on the dependency.

           to
              Input variables whose values will be passed on to dependencies.

               dependency
                  Alias of the dependency that the inputVariable will pass its
                  value to.

               ignoreForLookup
                  Tells SaaS Runtime if this mapping should be used during
                  lookup or not.

               inputVariable
                  Name of the inputVariable on the dependency.

           variable
              name of the variable.

          Shorthand Example:

              --add-output-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string --add-output-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string

          JSON Example:

              --add-output-variable-mappings='[{"from": {"dependency": "string", "outputVariable": "string"}, "to": {"dependency": "string", "ignoreForLookup": boolean, "inputVariable": "string"}, "variable": "string"}]'

          File Example:

              --add-output-variable-mappings=path_to_file.(yaml|json)

       At most one of these can be specified:

         --clear-output-variable-mappings
            Clear output_variable_mappings value and set to empty list.

         --remove-output-variable-mappings=[from=FROM],[to=TO],[variable=VARIABLE]
            Remove existing value from output_variable_mappings list. List of
            outputVariables for this unit kind will be passed to this unit's
            outputVariables. Maximum 100.

             from
                Output variables which will get their values from dependencies.

                 dependency
                    Alias of the dependency that the outputVariable will pass
                    its value to.

                 outputVariable
                    Name of the outputVariable on the dependency.

             to
                Input variables whose values will be passed on to dependencies.

                 dependency
                    Alias of the dependency that the inputVariable will pass
                    its value to.

                 ignoreForLookup
                    Tells SaaS Runtime if this mapping should be used during
                    lookup or not.

                 inputVariable
                    Name of the inputVariable on the dependency.

             variable
                name of the variable.

            Shorthand Example:

                --remove-output-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string --remove-output-variable-mappings=from={dependency=string,outputVariable=string},to={dependency=string,ignoreForLookup=boolean,inputVariable=string},variable=string

            JSON Example:

                --remove-output-variable-mappings='[{"from": {"dependency": "string", "outputVariable": "string"}, "to": {"dependency": "string", "ignoreForLookup": boolean, "inputVariable": "string"}, "variable": "string"}]'

            File Example:

                --remove-output-variable-mappings=path_to_file.(yaml|json)

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.

API REFERENCE
    This command uses the saasservicemgmt/v1beta1 API. The full documentation
    for this API can be found at: https://cloud.google.com/saas-runtime/docs

NOTES
    This command is currently in beta and might change without notice.

