class Google::Apis::RuntimeconfigV1beta1::Waiter

A Waiter resource waits for some end condition within a RuntimeConfig resource to be met before it returns. For example, assume you have a distributed system where each node writes to a Variable resource indicating the node's readiness as part of the startup process. You then configure a Waiter resource with the success condition set to wait until some number of nodes have checked in. Afterwards, your application runs some arbitrary code after the condition has been met and the waiter returns successfully. Once created, a Waiter resource is immutable. To learn more about using waiters, read the [Creating a Waiter](/ deployment-manager/runtime-configurator/creating-a-waiter) documentation.

Attributes

create_time[RW]

Output only. The instant at which this Waiter resource was created. Adding the value of `timeout` to this instant yields the timeout deadline for the waiter. Corresponds to the JSON property `createTime` @return [String]

done[RW]

Output only. If the value is `false`, it means the waiter is still waiting for one of its conditions to be met. If true, the waiter has finished. If the waiter finished due to a timeout or failure, `error` will be set. Corresponds to the JSON property `done` @return [Boolean]

done?[RW]

Output only. If the value is `false`, it means the waiter is still waiting for one of its conditions to be met. If true, the waiter has finished. If the waiter finished due to a timeout or failure, `error` will be set. Corresponds to the JSON property `done` @return [Boolean]

error[RW]

The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [ gRPC](github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https: //cloud.google.com/apis/design/errors). Corresponds to the JSON property `error` @return [Google::Apis::RuntimeconfigV1beta1::Status]

failure[RW]

The condition that a Waiter resource is waiting for. Corresponds to the JSON property `failure` @return [Google::Apis::RuntimeconfigV1beta1::EndCondition]

name[RW]

The name of the Waiter resource, in the format: projects//configs/[ CONFIG_NAME]/waiters/ The `[PROJECT_ID]` must be a valid Google Cloud project ID, the `[CONFIG_NAME]` must be a valid RuntimeConfig resource, the `[WAITER_NAME]` must match RFC 1035 segment specification, and the length of `[WAITER_NAME]` must be less than 64 bytes. After you create a Waiter resource, you cannot change the resource name. Corresponds to the JSON property `name` @return [String]

success[RW]

The condition that a Waiter resource is waiting for. Corresponds to the JSON property `success` @return [Google::Apis::RuntimeconfigV1beta1::EndCondition]

timeout[RW]
Required

Specifies the timeout of the waiter in seconds, beginning from the

instant that `waiters().create` method is called. If this time elapses before the success or failure conditions are met, the waiter fails and sets the ` error` code to `DEADLINE_EXCEEDED`. Corresponds to the JSON property `timeout` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/runtimeconfig_v1beta1/classes.rb, line 753
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/runtimeconfig_v1beta1/classes.rb, line 758
def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @done = args[:done] if args.key?(:done)
  @error = args[:error] if args.key?(:error)
  @failure = args[:failure] if args.key?(:failure)
  @name = args[:name] if args.key?(:name)
  @success = args[:success] if args.key?(:success)
  @timeout = args[:timeout] if args.key?(:timeout)
end