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.



2973
2974
2975
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2973

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


2843
2844
2845
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2843

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)


2849
2850
2851
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2849

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



2856
2857
2858
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2856

def conditions
  @conditions
end

#create_timeString

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

Returns:

  • (String)


2861
2862
2863
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2861

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)


2867
2868
2869
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2867

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



2873
2874
2875
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2873

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)


2879
2880
2881
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2879

def engine_state
  @engine_state
end

#error_categoryString

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

Returns:

  • (String)


2884
2885
2886
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2884

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)


2891
2892
2893
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2891

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



2896
2897
2898
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2896

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


2902
2903
2904
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2902

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)


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

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)


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

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



2924
2925
2926
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2924

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)


2932
2933
2934
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2932

def rollout
  @rollout
end

#scheduleGoogle::Apis::SaasservicemgmtV1beta1::Schedule

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



2937
2938
2939
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2937

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)


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

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)


2952
2953
2954
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2952

def uid
  @uid
end

#unitString

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

Returns:

  • (String)


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

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)


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

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



2971
2972
2973
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2971

def upgrade
  @upgrade
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
# File 'lib/google/apis/saasservicemgmt_v1beta1/classes.rb', line 2978

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