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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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:



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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:



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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.



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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:



1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 1553

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