683 lines
27 KiB
Ruby
683 lines
27 KiB
Ruby
|
# Copyright 2015 Google Inc.
|
||
|
#
|
||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
# you may not use this file except in compliance with the License.
|
||
|
# You may obtain a copy of the License at
|
||
|
#
|
||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||
|
#
|
||
|
# Unless required by applicable law or agreed to in writing, software
|
||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
# See the License for the specific language governing permissions and
|
||
|
# limitations under the License.
|
||
|
|
||
|
require 'date'
|
||
|
require 'google/apis/core/base_service'
|
||
|
require 'google/apis/core/json_representation'
|
||
|
require 'google/apis/core/hashable'
|
||
|
require 'google/apis/errors'
|
||
|
|
||
|
module Google
|
||
|
module Apis
|
||
|
module ReplicapoolupdaterV1beta1
|
||
|
|
||
|
# Update of a single instance.
|
||
|
class InstanceUpdate
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# Errors that occurred during the instance update.
|
||
|
# Corresponds to the JSON property `error`
|
||
|
# @return [Google::Apis::ReplicapoolupdaterV1beta1::InstanceUpdate::Error]
|
||
|
attr_accessor :error
|
||
|
|
||
|
# URL of the instance being updated.
|
||
|
# Corresponds to the JSON property `instance`
|
||
|
# @return [String]
|
||
|
attr_accessor :instance
|
||
|
|
||
|
# Status of the instance update. Possible values are:
|
||
|
# - "PENDING": The instance update is pending execution.
|
||
|
# - "ROLLING_FORWARD": The instance update is going forward.
|
||
|
# - "ROLLING_BACK": The instance update is being rolled back.
|
||
|
# - "PAUSED": The instance update is temporarily paused (inactive).
|
||
|
# - "ROLLED_OUT": The instance update is finished, the instance is running the
|
||
|
# new template.
|
||
|
# - "ROLLED_BACK": The instance update is finished, the instance has been
|
||
|
# reverted to the previous template.
|
||
|
# - "CANCELLED": The instance update is paused and no longer can be resumed,
|
||
|
# undefined in which template the instance is running.
|
||
|
# Corresponds to the JSON property `status`
|
||
|
# @return [String]
|
||
|
attr_accessor :status
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@error = args[:error] unless args[:error].nil?
|
||
|
@instance = args[:instance] unless args[:instance].nil?
|
||
|
@status = args[:status] unless args[:status].nil?
|
||
|
end
|
||
|
|
||
|
# Errors that occurred during the instance update.
|
||
|
class Error
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] The array of errors encountered while processing this operation.
|
||
|
# Corresponds to the JSON property `errors`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::InstanceUpdate::Error::Error>]
|
||
|
attr_accessor :errors
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@errors = args[:errors] unless args[:errors].nil?
|
||
|
end
|
||
|
|
||
|
#
|
||
|
class Error
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] The error type identifier for this error.
|
||
|
# Corresponds to the JSON property `code`
|
||
|
# @return [String]
|
||
|
attr_accessor :code
|
||
|
|
||
|
# [Output Only] Indicates the field in the request that caused the error. This
|
||
|
# property is optional.
|
||
|
# Corresponds to the JSON property `location`
|
||
|
# @return [String]
|
||
|
attr_accessor :location
|
||
|
|
||
|
# [Output Only] An optional, human-readable error message.
|
||
|
# Corresponds to the JSON property `message`
|
||
|
# @return [String]
|
||
|
attr_accessor :message
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@code = args[:code] unless args[:code].nil?
|
||
|
@location = args[:location] unless args[:location].nil?
|
||
|
@message = args[:message] unless args[:message].nil?
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
# Response returned by ListInstanceUpdates method.
|
||
|
class InstanceUpdateList
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# Collection of requested instance updates.
|
||
|
# Corresponds to the JSON property `items`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::InstanceUpdate>]
|
||
|
attr_accessor :items
|
||
|
|
||
|
# [Output Only] Type of the resource.
|
||
|
# Corresponds to the JSON property `kind`
|
||
|
# @return [String]
|
||
|
attr_accessor :kind
|
||
|
|
||
|
# A token used to continue a truncated list request.
|
||
|
# Corresponds to the JSON property `nextPageToken`
|
||
|
# @return [String]
|
||
|
attr_accessor :next_page_token
|
||
|
|
||
|
# [Output Only] The fully qualified URL for the resource.
|
||
|
# Corresponds to the JSON property `selfLink`
|
||
|
# @return [String]
|
||
|
attr_accessor :self_link
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@items = args[:items] unless args[:items].nil?
|
||
|
@kind = args[:kind] unless args[:kind].nil?
|
||
|
@next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
|
||
|
@self_link = args[:self_link] unless args[:self_link].nil?
|
||
|
end
|
||
|
end
|
||
|
|
||
|
# An operation resource, used to manage asynchronous API requests.
|
||
|
class Operation
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `clientOperationId`
|
||
|
# @return [String]
|
||
|
attr_accessor :client_operation_id
|
||
|
|
||
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
||
|
# Corresponds to the JSON property `creationTimestamp`
|
||
|
# @return [String]
|
||
|
attr_accessor :creation_timestamp
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `endTime`
|
||
|
# @return [String]
|
||
|
attr_accessor :end_time
|
||
|
|
||
|
# [Output Only] If errors occurred during processing of this operation, this
|
||
|
# field will be populated.
|
||
|
# Corresponds to the JSON property `error`
|
||
|
# @return [Google::Apis::ReplicapoolupdaterV1beta1::Operation::Error]
|
||
|
attr_accessor :error
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `httpErrorMessage`
|
||
|
# @return [String]
|
||
|
attr_accessor :http_error_message
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `httpErrorStatusCode`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :http_error_status_code
|
||
|
|
||
|
# [Output Only] Unique identifier for the resource; defined by the server.
|
||
|
# Corresponds to the JSON property `id`
|
||
|
# @return [String]
|
||
|
attr_accessor :id
|
||
|
|
||
|
# [Output Only] The time that this operation was requested. This is in RFC 3339
|
||
|
# format.
|
||
|
# Corresponds to the JSON property `insertTime`
|
||
|
# @return [String]
|
||
|
attr_accessor :insert_time
|
||
|
|
||
|
# [Output Only] Type of the resource. Always kind#operation for Operation
|
||
|
# resources.
|
||
|
# Corresponds to the JSON property `kind`
|
||
|
# @return [String]
|
||
|
attr_accessor :kind
|
||
|
|
||
|
# [Output Only] Name of the resource.
|
||
|
# Corresponds to the JSON property `name`
|
||
|
# @return [String]
|
||
|
attr_accessor :name
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `operationType`
|
||
|
# @return [String]
|
||
|
attr_accessor :operation_type
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `progress`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :progress
|
||
|
|
||
|
# [Output Only] URL of the region where the operation resides.
|
||
|
# Corresponds to the JSON property `region`
|
||
|
# @return [String]
|
||
|
attr_accessor :region
|
||
|
|
||
|
# [Output Only] Server defined URL for the resource.
|
||
|
# Corresponds to the JSON property `selfLink`
|
||
|
# @return [String]
|
||
|
attr_accessor :self_link
|
||
|
|
||
|
# [Output Only] The time that this operation was started by the server. This is
|
||
|
# in RFC 3339 format.
|
||
|
# Corresponds to the JSON property `startTime`
|
||
|
# @return [String]
|
||
|
attr_accessor :start_time
|
||
|
|
||
|
# [Output Only] Status of the operation. Can be one of the following: "PENDING",
|
||
|
# "RUNNING", or "DONE".
|
||
|
# Corresponds to the JSON property `status`
|
||
|
# @return [String]
|
||
|
attr_accessor :status
|
||
|
|
||
|
# [Output Only] An optional textual description of the current status of the
|
||
|
# operation.
|
||
|
# Corresponds to the JSON property `statusMessage`
|
||
|
# @return [String]
|
||
|
attr_accessor :status_message
|
||
|
|
||
|
# [Output Only] Unique target id which identifies a particular incarnation of
|
||
|
# the target.
|
||
|
# Corresponds to the JSON property `targetId`
|
||
|
# @return [String]
|
||
|
attr_accessor :target_id
|
||
|
|
||
|
# [Output Only] URL of the resource the operation is mutating.
|
||
|
# Corresponds to the JSON property `targetLink`
|
||
|
# @return [String]
|
||
|
attr_accessor :target_link
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `user`
|
||
|
# @return [String]
|
||
|
attr_accessor :user
|
||
|
|
||
|
#
|
||
|
# Corresponds to the JSON property `warnings`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::Operation::Warning>]
|
||
|
attr_accessor :warnings
|
||
|
|
||
|
# [Output Only] URL of the zone where the operation resides.
|
||
|
# Corresponds to the JSON property `zone`
|
||
|
# @return [String]
|
||
|
attr_accessor :zone
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@client_operation_id = args[:client_operation_id] unless args[:client_operation_id].nil?
|
||
|
@creation_timestamp = args[:creation_timestamp] unless args[:creation_timestamp].nil?
|
||
|
@end_time = args[:end_time] unless args[:end_time].nil?
|
||
|
@error = args[:error] unless args[:error].nil?
|
||
|
@http_error_message = args[:http_error_message] unless args[:http_error_message].nil?
|
||
|
@http_error_status_code = args[:http_error_status_code] unless args[:http_error_status_code].nil?
|
||
|
@id = args[:id] unless args[:id].nil?
|
||
|
@insert_time = args[:insert_time] unless args[:insert_time].nil?
|
||
|
@kind = args[:kind] unless args[:kind].nil?
|
||
|
@name = args[:name] unless args[:name].nil?
|
||
|
@operation_type = args[:operation_type] unless args[:operation_type].nil?
|
||
|
@progress = args[:progress] unless args[:progress].nil?
|
||
|
@region = args[:region] unless args[:region].nil?
|
||
|
@self_link = args[:self_link] unless args[:self_link].nil?
|
||
|
@start_time = args[:start_time] unless args[:start_time].nil?
|
||
|
@status = args[:status] unless args[:status].nil?
|
||
|
@status_message = args[:status_message] unless args[:status_message].nil?
|
||
|
@target_id = args[:target_id] unless args[:target_id].nil?
|
||
|
@target_link = args[:target_link] unless args[:target_link].nil?
|
||
|
@user = args[:user] unless args[:user].nil?
|
||
|
@warnings = args[:warnings] unless args[:warnings].nil?
|
||
|
@zone = args[:zone] unless args[:zone].nil?
|
||
|
end
|
||
|
|
||
|
# [Output Only] If errors occurred during processing of this operation, this
|
||
|
# field will be populated.
|
||
|
class Error
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] The array of errors encountered while processing this operation.
|
||
|
# Corresponds to the JSON property `errors`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::Operation::Error::Error>]
|
||
|
attr_accessor :errors
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@errors = args[:errors] unless args[:errors].nil?
|
||
|
end
|
||
|
|
||
|
#
|
||
|
class Error
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] The error type identifier for this error.
|
||
|
# Corresponds to the JSON property `code`
|
||
|
# @return [String]
|
||
|
attr_accessor :code
|
||
|
|
||
|
# [Output Only] Indicates the field in the request that caused the error. This
|
||
|
# property is optional.
|
||
|
# Corresponds to the JSON property `location`
|
||
|
# @return [String]
|
||
|
attr_accessor :location
|
||
|
|
||
|
# [Output Only] An optional, human-readable error message.
|
||
|
# Corresponds to the JSON property `message`
|
||
|
# @return [String]
|
||
|
attr_accessor :message
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@code = args[:code] unless args[:code].nil?
|
||
|
@location = args[:location] unless args[:location].nil?
|
||
|
@message = args[:message] unless args[:message].nil?
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
#
|
||
|
class Warning
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output only] The warning type identifier for this warning.
|
||
|
# Corresponds to the JSON property `code`
|
||
|
# @return [String]
|
||
|
attr_accessor :code
|
||
|
|
||
|
# [Output only] Metadata for this warning in key:value format.
|
||
|
# Corresponds to the JSON property `data`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::Operation::Warning::Datum>]
|
||
|
attr_accessor :data
|
||
|
|
||
|
# [Output only] Optional human-readable details for this warning.
|
||
|
# Corresponds to the JSON property `message`
|
||
|
# @return [String]
|
||
|
attr_accessor :message
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@code = args[:code] unless args[:code].nil?
|
||
|
@data = args[:data] unless args[:data].nil?
|
||
|
@message = args[:message] unless args[:message].nil?
|
||
|
end
|
||
|
|
||
|
#
|
||
|
class Datum
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] Metadata key for this warning.
|
||
|
# Corresponds to the JSON property `key`
|
||
|
# @return [String]
|
||
|
attr_accessor :key
|
||
|
|
||
|
# [Output Only] Metadata value for this warning.
|
||
|
# Corresponds to the JSON property `value`
|
||
|
# @return [String]
|
||
|
attr_accessor :value
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@key = args[:key] unless args[:key].nil?
|
||
|
@value = args[:value] unless args[:value].nil?
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
# The following represents a resource describing a single update (rollout) of a
|
||
|
# group of instances to the given template.
|
||
|
class RollingUpdate
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# Specifies the action to take for each instance within the instance group. This
|
||
|
# can be RECREATE which will recreate each instance and is only available for
|
||
|
# managed instance groups. It can also be REBOOT which performs a soft reboot
|
||
|
# for each instance and is only available for regular (non-managed) instance
|
||
|
# groups.
|
||
|
# Corresponds to the JSON property `actionType`
|
||
|
# @return [String]
|
||
|
attr_accessor :action_type
|
||
|
|
||
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
||
|
# Corresponds to the JSON property `creationTimestamp`
|
||
|
# @return [String]
|
||
|
attr_accessor :creation_timestamp
|
||
|
|
||
|
# An optional textual description of the resource; provided by the client when
|
||
|
# the resource is created.
|
||
|
# Corresponds to the JSON property `description`
|
||
|
# @return [String]
|
||
|
attr_accessor :description
|
||
|
|
||
|
# [Output Only] Errors that occurred during the rolling update.
|
||
|
# Corresponds to the JSON property `error`
|
||
|
# @return [Google::Apis::ReplicapoolupdaterV1beta1::RollingUpdate::Error]
|
||
|
attr_accessor :error
|
||
|
|
||
|
# [Output Only] Unique identifier for the resource; defined by the server.
|
||
|
# Corresponds to the JSON property `id`
|
||
|
# @return [String]
|
||
|
attr_accessor :id
|
||
|
|
||
|
# Fully-qualified URL of an instance group being updated. Exactly one of
|
||
|
# instanceGroupManager and instanceGroup must be set.
|
||
|
# Corresponds to the JSON property `instanceGroup`
|
||
|
# @return [String]
|
||
|
attr_accessor :instance_group
|
||
|
|
||
|
# Fully-qualified URL of an instance group manager being updated. Exactly one of
|
||
|
# instanceGroupManager and instanceGroup must be set.
|
||
|
# Corresponds to the JSON property `instanceGroupManager`
|
||
|
# @return [String]
|
||
|
attr_accessor :instance_group_manager
|
||
|
|
||
|
# Fully-qualified URL of an instance template to apply.
|
||
|
# Corresponds to the JSON property `instanceTemplate`
|
||
|
# @return [String]
|
||
|
attr_accessor :instance_template
|
||
|
|
||
|
# [Output Only] Type of the resource.
|
||
|
# Corresponds to the JSON property `kind`
|
||
|
# @return [String]
|
||
|
attr_accessor :kind
|
||
|
|
||
|
# Parameters of the update process.
|
||
|
# Corresponds to the JSON property `policy`
|
||
|
# @return [Google::Apis::ReplicapoolupdaterV1beta1::RollingUpdate::Policy]
|
||
|
attr_accessor :policy
|
||
|
|
||
|
# [Output Only] An optional progress indicator that ranges from 0 to 100. There
|
||
|
# is no requirement that this be linear or support any granularity of operations.
|
||
|
# This should not be used to guess at when the update will be complete. This
|
||
|
# number should be monotonically increasing as the update progresses.
|
||
|
# Corresponds to the JSON property `progress`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :progress
|
||
|
|
||
|
# [Output Only] The fully qualified URL for the resource.
|
||
|
# Corresponds to the JSON property `selfLink`
|
||
|
# @return [String]
|
||
|
attr_accessor :self_link
|
||
|
|
||
|
# [Output Only] Status of the update. Possible values are:
|
||
|
# - "ROLLING_FORWARD": The update is going forward.
|
||
|
# - "ROLLING_BACK": The update is being rolled back.
|
||
|
# - "PAUSED": The update is temporarily paused (inactive).
|
||
|
# - "ROLLED_OUT": The update is finished, all instances have been updated
|
||
|
# successfully.
|
||
|
# - "ROLLED_BACK": The update is finished, all instances have been reverted to
|
||
|
# the previous template.
|
||
|
# - "CANCELLED": The update is paused and no longer can be resumed, undefined
|
||
|
# how many instances are running in which template.
|
||
|
# Corresponds to the JSON property `status`
|
||
|
# @return [String]
|
||
|
attr_accessor :status
|
||
|
|
||
|
# [Output Only] An optional textual description of the current status of the
|
||
|
# update.
|
||
|
# Corresponds to the JSON property `statusMessage`
|
||
|
# @return [String]
|
||
|
attr_accessor :status_message
|
||
|
|
||
|
# [Output Only] User who requested the update, for example: user@example.com.
|
||
|
# Corresponds to the JSON property `user`
|
||
|
# @return [String]
|
||
|
attr_accessor :user
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@action_type = args[:action_type] unless args[:action_type].nil?
|
||
|
@creation_timestamp = args[:creation_timestamp] unless args[:creation_timestamp].nil?
|
||
|
@description = args[:description] unless args[:description].nil?
|
||
|
@error = args[:error] unless args[:error].nil?
|
||
|
@id = args[:id] unless args[:id].nil?
|
||
|
@instance_group = args[:instance_group] unless args[:instance_group].nil?
|
||
|
@instance_group_manager = args[:instance_group_manager] unless args[:instance_group_manager].nil?
|
||
|
@instance_template = args[:instance_template] unless args[:instance_template].nil?
|
||
|
@kind = args[:kind] unless args[:kind].nil?
|
||
|
@policy = args[:policy] unless args[:policy].nil?
|
||
|
@progress = args[:progress] unless args[:progress].nil?
|
||
|
@self_link = args[:self_link] unless args[:self_link].nil?
|
||
|
@status = args[:status] unless args[:status].nil?
|
||
|
@status_message = args[:status_message] unless args[:status_message].nil?
|
||
|
@user = args[:user] unless args[:user].nil?
|
||
|
end
|
||
|
|
||
|
# [Output Only] Errors that occurred during the rolling update.
|
||
|
class Error
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] The array of errors encountered while processing this operation.
|
||
|
# Corresponds to the JSON property `errors`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::RollingUpdate::Error::Error>]
|
||
|
attr_accessor :errors
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@errors = args[:errors] unless args[:errors].nil?
|
||
|
end
|
||
|
|
||
|
#
|
||
|
class Error
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# [Output Only] The error type identifier for this error.
|
||
|
# Corresponds to the JSON property `code`
|
||
|
# @return [String]
|
||
|
attr_accessor :code
|
||
|
|
||
|
# [Output Only] Indicates the field in the request that caused the error. This
|
||
|
# property is optional.
|
||
|
# Corresponds to the JSON property `location`
|
||
|
# @return [String]
|
||
|
attr_accessor :location
|
||
|
|
||
|
# [Output Only] An optional, human-readable error message.
|
||
|
# Corresponds to the JSON property `message`
|
||
|
# @return [String]
|
||
|
attr_accessor :message
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@code = args[:code] unless args[:code].nil?
|
||
|
@location = args[:location] unless args[:location].nil?
|
||
|
@message = args[:message] unless args[:message].nil?
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
# Parameters of the update process.
|
||
|
class Policy
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# Number of instances to update before the updater pauses the rolling update.
|
||
|
# Corresponds to the JSON property `autoPauseAfterInstances`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :auto_pause_after_instances
|
||
|
|
||
|
# The maximum amount of time that the updater waits for a HEALTHY state after
|
||
|
# all of the update steps are complete. If the HEALTHY state is not received
|
||
|
# before the deadline, the instance update is considered a failure.
|
||
|
# Corresponds to the JSON property `instanceStartupTimeoutSec`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :instance_startup_timeout_sec
|
||
|
|
||
|
# The maximum number of instances that can be updated simultaneously. An
|
||
|
# instance update is considered complete only after the instance is restarted
|
||
|
# and initialized.
|
||
|
# Corresponds to the JSON property `maxNumConcurrentInstances`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :max_num_concurrent_instances
|
||
|
|
||
|
# The maximum number of instance updates that can fail before the group update
|
||
|
# is considered a failure. An instance update is considered failed if any of its
|
||
|
# update actions (e.g. Stop call on Instance resource in Rolling Reboot) failed
|
||
|
# with permanent failure, or if the instance is in an UNHEALTHY state after it
|
||
|
# finishes all of the update actions.
|
||
|
# Corresponds to the JSON property `maxNumFailedInstances`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :max_num_failed_instances
|
||
|
|
||
|
# The minimum amount of time that the updater spends to update each instance.
|
||
|
# Update time is the time it takes to complete all update actions (e.g. Stop
|
||
|
# call on Instance resource in Rolling Reboot), reboot, and initialize. If the
|
||
|
# instance update finishes early, the updater pauses for the remainder of the
|
||
|
# time before it starts the next instance update.
|
||
|
# Corresponds to the JSON property `minInstanceUpdateTimeSec`
|
||
|
# @return [Fixnum]
|
||
|
attr_accessor :min_instance_update_time_sec
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@auto_pause_after_instances = args[:auto_pause_after_instances] unless args[:auto_pause_after_instances].nil?
|
||
|
@instance_startup_timeout_sec = args[:instance_startup_timeout_sec] unless args[:instance_startup_timeout_sec].nil?
|
||
|
@max_num_concurrent_instances = args[:max_num_concurrent_instances] unless args[:max_num_concurrent_instances].nil?
|
||
|
@max_num_failed_instances = args[:max_num_failed_instances] unless args[:max_num_failed_instances].nil?
|
||
|
@min_instance_update_time_sec = args[:min_instance_update_time_sec] unless args[:min_instance_update_time_sec].nil?
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
# Response returned by List method.
|
||
|
class RollingUpdateList
|
||
|
include Google::Apis::Core::Hashable
|
||
|
|
||
|
# Collection of requested updates.
|
||
|
# Corresponds to the JSON property `items`
|
||
|
# @return [Array<Google::Apis::ReplicapoolupdaterV1beta1::RollingUpdate>]
|
||
|
attr_accessor :items
|
||
|
|
||
|
# [Output Only] Type of the resource.
|
||
|
# Corresponds to the JSON property `kind`
|
||
|
# @return [String]
|
||
|
attr_accessor :kind
|
||
|
|
||
|
# A token used to continue a truncated list request.
|
||
|
# Corresponds to the JSON property `nextPageToken`
|
||
|
# @return [String]
|
||
|
attr_accessor :next_page_token
|
||
|
|
||
|
# [Output Only] The fully qualified URL for the resource.
|
||
|
# Corresponds to the JSON property `selfLink`
|
||
|
# @return [String]
|
||
|
attr_accessor :self_link
|
||
|
|
||
|
def initialize(**args)
|
||
|
update!(**args)
|
||
|
end
|
||
|
|
||
|
# Update properties of this object
|
||
|
def update!(**args)
|
||
|
@items = args[:items] unless args[:items].nil?
|
||
|
@kind = args[:kind] unless args[:kind].nil?
|
||
|
@next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
|
||
|
@self_link = args[:self_link] unless args[:self_link].nil?
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|