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 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})

    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.



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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:



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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 Description of the DeployPolicy. Max length is 255 characters.

Returns:

  • (::String)

    Description of the DeployPolicy. Max length is 255 characters.



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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.



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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.



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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])?



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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:



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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.



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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 When suspended, the policy will not prevent actions from occurring, even if the action violates the policy.

Returns:

  • (::Boolean)

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



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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.



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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:



1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1615

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