Class: Google::Apis::SaasservicemgmtV1beta1::RolloutKind
- Inherits:
-
Object
- Object
- Google::Apis::SaasservicemgmtV1beta1::RolloutKind
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/saasservicemgmt_v1beta1/classes.rb,
lib/google/apis/saasservicemgmt_v1beta1/representations.rb,
lib/google/apis/saasservicemgmt_v1beta1/representations.rb
Overview
An object that describes various settings of Rollout execution. Includes built- in policies across GCP and GDC, and customizable policies.
Instance Attribute Summary collapse
-
#annotations ⇒ Hash<String,String>
Optional.
-
#create_time ⇒ String
Output only.
-
#error_budget ⇒ Google::Apis::SaasservicemgmtV1beta1::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.
-
#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.
1215 1216 1217 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1215 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
1135 1136 1137 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1135 def annotations @annotations end |
#create_time ⇒ String
Output only. The timestamp when the resource was created.
Corresponds to the JSON property createTime
1140 1141 1142 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1140 def create_time @create_time end |
#error_budget ⇒ Google::Apis::SaasservicemgmtV1beta1::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
1146 1147 1148 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1146 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
1153 1154 1155 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1153 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
1159 1160 1161 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1159 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
1166 1167 1168 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1166 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
1175 1176 1177 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1175 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
1184 1185 1186 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1184 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
1192 1193 1194 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1192 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
1200 1201 1202 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1200 def unit_kind @unit_kind 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
1207 1208 1209 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1207 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
1213 1214 1215 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1213 def update_unit_kind_strategy @update_unit_kind_strategy end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 |
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 1220 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) @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 |