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.



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

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)


3097
3098
3099
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3097

def create_time
  @create_time
end

#created_byString

This field is deprecated and will be deleted. Please remove usage of this field. Corresponds to the JSON property createdBy

Returns:

  • (String)


3103
3104
3105
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3103

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



3109
3110
3111
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3109

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)


3120
3121
3122
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3120

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)


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

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)


3131
3132
3133
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3131

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



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

def traffic_percent_strategy
  @traffic_percent_strategy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3151
3152
3153
3154
3155
3156
3157
3158
3159
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3151

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