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

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/servicemanagement_v1/classes.rb,
lib/google/apis/servicemanagement_v1/representations.rb,
lib/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

Constructor Details

#initialize(**args) ⇒ Rollout

Returns a new instance of Rollout.



3170
3171
3172
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3170

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)


3122
3123
3124
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3122

def create_time
  @create_time
end

#created_byString

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

Returns:

  • (String)


3127
3128
3129
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3127

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



3133
3134
3135
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3133

def delete_service_strategy
  @delete_service_strategy
end

#rollout_idString

Optional. Unique identifier of this Rollout. Must be no longer than 63 characters and 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)


3144
3145
3146
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3144

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)


3149
3150
3151
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3149

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)


3155
3156
3157
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3155

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



3168
3169
3170
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3168

def traffic_percent_strategy
  @traffic_percent_strategy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3175
3176
3177
3178
3179
3180
3181
3182
3183
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3175

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