Class: Google::Apis::SaasservicemgmtV1::RolloutKind
- Inherits:
-
Object
- Object
- Google::Apis::SaasservicemgmtV1::RolloutKind
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/saasservicemgmt_v1/classes.rb,
lib/google/apis/saasservicemgmt_v1/representations.rb,
lib/google/apis/saasservicemgmt_v1/representations.rb
Overview
An object that describes various settings of Rollout execution. Includes built- in and customizable policies.
Instance Attribute Summary collapse
-
#annotations ⇒ Hash<String,String>
Optional.
-
#create_time ⇒ String
Output only.
-
#error_budget ⇒ Google::Apis::SaasservicemgmtV1::ErrorBudget
The configuration for error budget.
-
#etag ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
Optional.
-
#name ⇒ String
Identifier.
-
#rollout_orchestration_strategy ⇒ String
Optional.
-
#uid ⇒ String
Output only.
-
#unit_filter ⇒ String
Optional.
-
#unit_kind ⇒ String
Required.
-
#unit_update_pacing ⇒ Google::Apis::SaasservicemgmtV1::UnitUpdatePacing
UnitUpdatePacing defines the policy for the maximum number of unit operations that can run for a rollout in parallel in a single region.
-
#update_time ⇒ String
Output only.
-
#update_unit_kind_strategy ⇒ String
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RolloutKind
constructor
A new instance of RolloutKind.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ RolloutKind
Returns a new instance of RolloutKind.
1128 1129 1130 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1128 def initialize(**args) update!(**args) end |
Instance Attribute Details
#annotations ⇒ Hash<String,String>
Optional. Annotations is an unstructured key-value map stored with a resource
that may be set by external tools to store and retrieve arbitrary metadata.
They are not queryable and should be preserved when modifying objects. More
info: https://kubernetes.io/docs/user-guide/annotations
Corresponds to the JSON property annotations
1042 1043 1044 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1042 def annotations @annotations end |
#create_time ⇒ String
Output only. The timestamp when the resource was created.
Corresponds to the JSON property createTime
1047 1048 1049 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1047 def create_time @create_time end |
#error_budget ⇒ Google::Apis::SaasservicemgmtV1::ErrorBudget
The configuration for error budget. If the number of failed units exceeds max(
allowed_count, allowed_ratio * total_units), the rollout will be paused.
Corresponds to the JSON property errorBudget
1053 1054 1055 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1053 def error_budget @error_budget end |
#etag ⇒ String
Output only. An opaque value that uniquely identifies a version or generation
of a resource. It can be used to confirm that the client and server agree on
the ordering of a resource being written.
Corresponds to the JSON property etag
1060 1061 1062 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1060 def etag @etag end |
#labels ⇒ Hash<String,String>
Optional. The labels on the resource, which can be used for categorization.
similar to Kubernetes resource labels.
Corresponds to the JSON property labels
1066 1067 1068 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1066 def labels @labels end |
#name ⇒ String
Identifier. The resource name (full URI of the resource) following the
standard naming scheme: "projects/project/locations/location/rolloutKinds/
rollout_kind_id"
Corresponds to the JSON property name
1073 1074 1075 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1073 def name @name end |
#rollout_orchestration_strategy ⇒ String
Optional. The strategy used for executing a Rollout. This is a required field.
There are two supported values strategies which are used to control - "Google.
Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout
with one of these simple strategies will rollout across all locations defined
in the associated UnitKind's Saas Locations.
Corresponds to the JSON property rolloutOrchestrationStrategy
1082 1083 1084 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1082 def rollout_orchestration_strategy @rollout_orchestration_strategy end |
#uid ⇒ String
Output only. The unique identifier of the resource. UID is unique in the time
and space for this resource within the scope of the service. It is typically
generated by the server on successful creation of a resource and must not be
changed. UID is used to uniquely identify resources with resource name reuses.
This should be a UUID4.
Corresponds to the JSON property uid
1091 1092 1093 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1091 def uid @uid end |
#unit_filter ⇒ String
Optional. CEL(https://github.com/google/cel-spec) formatted filter string
against Unit. The filter will be applied to determine the eligible unit
population. This filter can only reduce, but not expand the scope of the
rollout.
Corresponds to the JSON property unitFilter
1099 1100 1101 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1099 def unit_filter @unit_filter end |
#unit_kind ⇒ String
Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts
stemming from this rollout kind will target the units of this unit kind. In
other words, this defines the population of target units to be upgraded by
rollouts.
Corresponds to the JSON property unitKind
1107 1108 1109 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1107 def unit_kind @unit_kind end |
#unit_update_pacing ⇒ Google::Apis::SaasservicemgmtV1::UnitUpdatePacing
UnitUpdatePacing defines the policy for the maximum number of unit operations
that can run for a rollout in parallel in a single region.
Corresponds to the JSON property unitUpdatePacing
1113 1114 1115 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1113 def unit_update_pacing @unit_update_pacing end |
#update_time ⇒ String
Output only. The timestamp when the resource was last updated. Any change to
the resource made by users must refresh this value. Changes to a resource made
by the service should refresh this value.
Corresponds to the JSON property updateTime
1120 1121 1122 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1120 def update_time @update_time end |
#update_unit_kind_strategy ⇒ String
Optional. The config for updating the unit kind. By default, the unit kind
will be updated on the rollout start.
Corresponds to the JSON property updateUnitKindStrategy
1126 1127 1128 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1126 def update_unit_kind_strategy @update_unit_kind_strategy end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 |
# File 'lib/google/apis/saasservicemgmt_v1/classes.rb', line 1133 def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @create_time = args[:create_time] if args.key?(:create_time) @error_budget = args[:error_budget] if args.key?(:error_budget) @etag = args[:etag] if args.key?(:etag) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @rollout_orchestration_strategy = args[:rollout_orchestration_strategy] if args.key?(:rollout_orchestration_strategy) @uid = args[:uid] if args.key?(:uid) @unit_filter = args[:unit_filter] if args.key?(:unit_filter) @unit_kind = args[:unit_kind] if args.key?(:unit_kind) @unit_update_pacing = args[:unit_update_pacing] if args.key?(:unit_update_pacing) @update_time = args[:update_time] if args.key?(:update_time) @update_unit_kind_strategy = args[:update_unit_kind_strategy] if args.key?(:update_unit_kind_strategy) end |