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.



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

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)


3060
3061
3062
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3060

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)


3066
3067
3068
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3066

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



3072
3073
3074
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3072

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)


3083
3084
3085
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3083

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)


3088
3089
3090
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3088

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)


3094
3095
3096
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3094

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



3107
3108
3109
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3107

def traffic_percent_strategy
  @traffic_percent_strategy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3114
3115
3116
3117
3118
3119
3120
3121
3122
# File 'lib/google/apis/servicemanagement_v1/classes.rb', line 3114

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