Class: Google::Cloud::Deploy::V1::DeployPolicy

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/deploy/v1/cloud_deploy.rb

Overview

A DeployPolicy resource in the Cloud Deploy API.

A DeployPolicy inhibits manual or automation-driven actions within a Delivery Pipeline or Target.

Defined Under Namespace

Modules: Invoker Classes: AnnotationsEntry, LabelsEntry

Instance Attribute Summary collapse

Instance Attribute Details

#annotations::Google::Protobuf::Map{::String => ::String}

Returns Optional. User annotations. These attributes can only be set and used by the user, and not by Cloud Deploy. Annotations must meet the following constraints:

  • Annotations are key/value pairs.
  • Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/).
  • The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between.
  • The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots(.), not longer than 253 characters in total, followed by a slash (/).

See https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/#syntax-and-character-set for more details.

Returns:

  • (::Google::Protobuf::Map{::String => ::String})

    Optional. User annotations. These attributes can only be set and used by the user, and not by Cloud Deploy. Annotations must meet the following constraints:

    • Annotations are key/value pairs.
    • Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/).
    • The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between.
    • The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots(.), not longer than 253 characters in total, followed by a slash (/).

    See https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/#syntax-and-character-set for more details.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#create_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. Time at which the deploy policy was created.

Returns:



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#description::String

Returns Optional. Description of the DeployPolicy. Max length is 255 characters.

Returns:

  • (::String)

    Optional. Description of the DeployPolicy. Max length is 255 characters.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#etag::String

Returns The weak etag of the Automation resource. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.

Returns:

  • (::String)

    The weak etag of the Automation resource. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#labels::Google::Protobuf::Map{::String => ::String}

Returns Labels are attributes that can be set and used by both the user and by Cloud Deploy. Labels must meet the following constraints:

  • Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes.
  • All characters must use UTF-8 encoding, and international characters are allowed.
  • Keys must start with a lowercase letter or international character.
  • Each resource is limited to a maximum of 64 labels.

Both keys and values are additionally constrained to be <= 128 bytes.

Returns:

  • (::Google::Protobuf::Map{::String => ::String})

    Labels are attributes that can be set and used by both the user and by Cloud Deploy. Labels must meet the following constraints:

    • Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes.
    • All characters must use UTF-8 encoding, and international characters are allowed.
    • Keys must start with a lowercase letter or international character.
    • Each resource is limited to a maximum of 64 labels.

    Both keys and values are additionally constrained to be <= 128 bytes.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#name::String (readonly)

Returns Output only. Name of the DeployPolicy. Format is projects/{project}/locations/{location}/deployPolicies/{deployPolicy}. The deployPolicy component must match [a-z]([a-z0-9-]{0,61}[a-z0-9])?.

Returns:

  • (::String)

    Output only. Name of the DeployPolicy. Format is projects/{project}/locations/{location}/deployPolicies/{deployPolicy}. The deployPolicy component must match [a-z]([a-z0-9-]{0,61}[a-z0-9])?



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#rules::Array<::Google::Cloud::Deploy::V1::PolicyRule>

Returns Required. Rules to apply. At least one rule must be present.

Returns:



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#selectors::Array<::Google::Cloud::Deploy::V1::DeployPolicyResourceSelector>

Returns Required. Selected resources to which the policy will be applied. At least one selector is required. If one selector matches the resource the policy applies. For example, if there are two selectors and the action being attempted matches one of them, the policy will apply to that action.

Returns:

  • (::Array<::Google::Cloud::Deploy::V1::DeployPolicyResourceSelector>)

    Required. Selected resources to which the policy will be applied. At least one selector is required. If one selector matches the resource the policy applies. For example, if there are two selectors and the action being attempted matches one of them, the policy will apply to that action.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#suspended::Boolean

Returns Optional. When suspended, the policy will not prevent actions from occurring, even if the action violates the policy.

Returns:

  • (::Boolean)

    Optional. When suspended, the policy will not prevent actions from occurring, even if the action violates the policy.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#uid::String (readonly)

Returns Output only. Unique identifier of the DeployPolicy.

Returns:

  • (::String)

    Output only. Unique identifier of the DeployPolicy.



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end

#update_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. Most recent time at which the deploy policy was updated.

Returns:



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1653

class DeployPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # What invoked the action. Filters enforcing the policy depending on what
  # invoked the action.
  module Invoker
    # Unspecified.
    INVOKER_UNSPECIFIED = 0

    # The action is user-driven. For example, creating a rollout manually via a
    # gcloud create command.
    USER = 1

    # Automated action by Cloud Deploy.
    DEPLOY_AUTOMATION = 2
  end
end