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.



3172
3173
3174
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3172

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)


3124
3125
3126
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3124

def create_time
  @create_time
end

#created_byString

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

Returns:

  • (String)


3129
3130
3131
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3129

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



3135
3136
3137
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3135

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)


3146
3147
3148
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3146

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)


3151
3152
3153
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3151

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)


3157
3158
3159
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3157

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



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

def traffic_percent_strategy
  @traffic_percent_strategy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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