Class: Google::Apis::SaasservicemgmtV1beta1::UnitOperation

Inherits:
Object
  • Object
show all
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

UnitOperation encapsulates the intent of changing/interacting with the service component represented by the specific Unit. Multiple UnitOperations can be created (requested) and scheduled in the future, however only one will be allowed to execute at a time (that can change in the future for non-mutating operations). UnitOperations allow different actors interacting with the same unit to focus only on the change they have requested. This is a base object that contains the common fields in all unit operations. Next: 22

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ UnitOperation

Returns a new instance of UnitOperation.



2999
3000
3001
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2999

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#annotationsHash<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

Returns:

  • (Hash<String,String>)


2869
2870
2871
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2869

def annotations
  @annotations
end

#cancelBoolean Also known as: cancel?

Optional. When true, attempt to cancel the operation. Cancellation may fail if the operation is already executing. (Optional) Corresponds to the JSON property cancel

Returns:

  • (Boolean)


2875
2876
2877
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2875

def cancel
  @cancel
end

#conditionsArray<Google::Apis::SaasservicemgmtV1beta1::UnitOperationCondition>

Optional. Output only. A set of conditions which indicate the various conditions this resource can have. Corresponds to the JSON property conditions



2882
2883
2884
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2882

def conditions
  @conditions
end

#create_timeString

Output only. The timestamp when the resource was created. Corresponds to the JSON property createTime

Returns:

  • (String)


2887
2888
2889
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2887

def create_time
  @create_time
end

#delete_timeString

Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). Corresponds to the JSON property deleteTime

Returns:

  • (String)


2893
2894
2895
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2893

def delete_time
  @delete_time
end

#deprovisionGoogle::Apis::SaasservicemgmtV1beta1::Deprovision

Deprovision is the unit operation that deprovision the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned. Corresponds to the JSON property deprovision



2899
2900
2901
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2899

def deprovision
  @deprovision
end

#engine_stateString

Optional. Output only. The engine state for on-going deployment engine operation(s). This field is opaque for external usage. Corresponds to the JSON property engineState

Returns:

  • (String)


2905
2906
2907
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2905

def engine_state
  @engine_state
end

#error_categoryString

Optional. Output only. UnitOperationErrorCategory describe the error category. Corresponds to the JSON property errorCategory

Returns:

  • (String)


2910
2911
2912
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2910

def error_category
  @error_category
end

#etagString

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

Returns:

  • (String)


2917
2918
2919
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2917

def etag
  @etag
end

#flag_updateGoogle::Apis::SaasservicemgmtV1beta1::FlagUpdate

FlagUpdate is a UnitOperation that pushes new flag values to Units. Corresponds to the JSON property flagUpdate



2922
2923
2924
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2922

def flag_update
  @flag_update
end

#labelsHash<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

Returns:

  • (Hash<String,String>)


2928
2929
2930
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2928

def labels
  @labels
end

#nameString

Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/project/locations/location/ unitOperations/unitOperation" Corresponds to the JSON property name

Returns:

  • (String)


2935
2936
2937
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2935

def name
  @name
end

#parent_unit_operationString

Optional. Reference to parent resource: UnitOperation. If an operation needs to create other operations as part of its workflow, each of the child operations should have this field set to the parent. This can be used for tracing. (Optional) Corresponds to the JSON property parentUnitOperation

Returns:

  • (String)


2943
2944
2945
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2943

def parent_unit_operation
  @parent_unit_operation
end

#provisionGoogle::Apis::SaasservicemgmtV1beta1::Provision

Provision is the unit operation that provision the underlying resources represented by a Unit. Can only execute if the Unit is not currently provisioned. Corresponds to the JSON property provision



2950
2951
2952
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2950

def provision
  @provision
end

#rolloutString

Optional. Specifies which rollout created this Unit Operation. This cannot be modified and is used for filtering purposes only. If a dependent unit and unit operation are created as part of another unit operation, they will use the same rolloutId. Corresponds to the JSON property rollout

Returns:

  • (String)


2958
2959
2960
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2958

def rollout
  @rollout
end

#scheduleGoogle::Apis::SaasservicemgmtV1beta1::Schedule

A time specification to schedule the maintenance. Corresponds to the JSON property schedule



2963
2964
2965
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2963

def schedule
  @schedule
end

#stateString

Optional. Output only. UnitOperationState describes the current state of the unit operation. Corresponds to the JSON property state

Returns:

  • (String)


2969
2970
2971
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2969

def state
  @state
end

#uidString

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

Returns:

  • (String)


2978
2979
2980
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2978

def uid
  @uid
end

#unitString

Required. Immutable. The Unit a given UnitOperation will act upon. Corresponds to the JSON property unit

Returns:

  • (String)


2983
2984
2985
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2983

def unit
  @unit
end

#update_timeString

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

Returns:

  • (String)


2990
2991
2992
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2990

def update_time
  @update_time
end

#upgradeGoogle::Apis::SaasservicemgmtV1beta1::Upgrade

Upgrade is the unit operation that upgrades a provisioned unit, which may also include the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned. Corresponds to the JSON property upgrade



2997
2998
2999
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2997

def upgrade
  @upgrade
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 3004

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @cancel = args[:cancel] if args.key?(:cancel)
  @conditions = args[:conditions] if args.key?(:conditions)
  @create_time = args[:create_time] if args.key?(:create_time)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @deprovision = args[:deprovision] if args.key?(:deprovision)
  @engine_state = args[:engine_state] if args.key?(:engine_state)
  @error_category = args[:error_category] if args.key?(:error_category)
  @etag = args[:etag] if args.key?(:etag)
  @flag_update = args[:flag_update] if args.key?(:flag_update)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @parent_unit_operation = args[:parent_unit_operation] if args.key?(:parent_unit_operation)
  @provision = args[:provision] if args.key?(:provision)
  @rollout = args[:rollout] if args.key?(:rollout)
  @schedule = args[:schedule] if args.key?(:schedule)
  @state = args[:state] if args.key?(:state)
  @uid = args[:uid] if args.key?(:uid)
  @unit = args[:unit] if args.key?(:unit)
  @update_time = args[:update_time] if args.key?(:update_time)
  @upgrade = args[:upgrade] if args.key?(:upgrade)
end