Class: Google::Apis::ServicemanagementV1::Rollout

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/servicemanagement_v1/classes.rb,
generated/google/apis/servicemanagement_v1/representations.rb,
generated/google/apis/servicemanagement_v1/representations.rb

Overview

A rollout resource that defines how service configuration versions are pushed to control plane systems. Typically, you create a new version of the service config, and then create a Rollout to push the service config.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Rollout

Returns a new instance of Rollout



202
203
204
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 202

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

Instance Attribute Details

#create_timeString

Creation time of the rollout. Readonly. Corresponds to the JSON property createTime

Returns:

  • (String)


200
201
202
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 200

def create_time
  @create_time
end

#created_byString

The user who created the Rollout. Readonly. Corresponds to the JSON property createdBy

Returns:

  • (String)


148
149
150
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 148

def created_by
  @created_by
end

#delete_service_strategyGoogle::Apis::ServicemanagementV1::DeleteServiceStrategy

Strategy used to delete a service. This strategy is a placeholder only used by the system generated rollout to delete a service. Corresponds to the JSON property deleteServiceStrategy



195
196
197
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 195

def delete_service_strategy
  @delete_service_strategy
end

#rollout_idString

Optional unique identifier of this Rollout. Only lower case letters, digits and '-' are allowed. If not specified by client, the server will generate one. The generated id will have the form of , where "date" is the create date in ISO 8601 format. "revision number" is a monotonically increasing positive number that is reset every day for each service. An example of the generated rollout_id is '2016-02-16r1' Corresponds to the JSON property rolloutId

Returns:

  • (String)


189
190
191
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 189

def rollout_id
  @rollout_id
end

#service_nameString

The name of the service associated with this Rollout. Corresponds to the JSON property serviceName

Returns:

  • (String)


143
144
145
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 143

def service_name
  @service_name
end

#statusString

The status of this rollout. Readonly. In case of a failed rollout, the system will automatically rollback to the current Rollout version. Readonly. Corresponds to the JSON property status

Returns:

  • (String)


138
139
140
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 138

def status
  @status
end

#traffic_percent_strategyGoogle::Apis::ServicemanagementV1::TrafficPercentStrategy

Strategy that specifies how clients of Google Service Controller want to send traffic to use different config versions. This is generally used by API proxy to split traffic based on your configured precentage for each config version. One example of how to gradually rollout a new service configuration using this strategy: Day 1 Rollout id: "example.googleapis.com/rollout_20160206" traffic_percent_strategy percentages: "example.googleapis.com/20160201": 70.00 "example.googleapis.com/20160206": 30.00 Day 2 Rollout id: "example.googleapis.com/rollout_20160207" traffic_percent_strategy: percentages: "example.googleapis.com/20160206": 100.00 Corresponds to the JSON property trafficPercentStrategy



178
179
180
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 178

def traffic_percent_strategy
  @traffic_percent_strategy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



207
208
209
210
211
212
213
214
215
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 207

def update!(**args)
  @status = args[:status] if args.key?(:status)
  @service_name = args[:service_name] if args.key?(:service_name)
  @created_by = args[:created_by] if args.key?(:created_by)
  @traffic_percent_strategy = args[:traffic_percent_strategy] if args.key?(:traffic_percent_strategy)
  @rollout_id = args[:rollout_id] if args.key?(:rollout_id)
  @delete_service_strategy = args[:delete_service_strategy] if args.key?(:delete_service_strategy)
  @create_time = args[:create_time] if args.key?(:create_time)
end