Get desktop application:
View/edit binary Protocol Buffers messages
RuntimeConfig API represents configuration objects and operations on those configuration objects. RuntimeConfig objects consist of Variables logically grouped in the those objects. Variables are simple key-value pairs. Variables can be watched for changes or deletions. Variable key can be hieararchical, e.g. ports/serving_port, ports/monitoring_port, etc. Variable names can be hierarchical. No variable name can be prefix of another. Config objects represent logical containers for variables, e.g. flags, passwords, etc.
Lists all the RuntimeConfig resources within project.
Request for the `ListConfigs()` method.
The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848) for this request, in the format `projects/[PROJECT_ID]`.
Specifies the number of results to return per page. If there are fewer elements than the specified number, returns all elements.
Specifies a page token to use. Set `pageToken` to a `nextPageToken` returned by a previous list request to get the next page of results.
`ListConfigs()` returns the following response. The order of returned objects is arbitrary; that is, it is not ordered in any particular way.
A list of the configurations in the project. The order of returned objects is arbitrary; that is, it is not ordered in any particular way.
This token allows you to get the next page of results for list requests. If the number of results is larger than `pageSize`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results
Gets information about a RuntimeConfig resource.
Gets a RuntimeConfig resource.
The name of the RuntimeConfig resource to retrieve, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
Creates a new RuntimeConfig resource. The configuration name must be unique within project.
Creates a RuntimeConfig resource.
The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848) for this request, in the format `projects/[PROJECT_ID]`.
The RuntimeConfig to create.
An optional but recommended unique `request_id`. If the server receives two `create()` requests with the same `request_id`, then the second request will be ignored and the first resource created and stored in the backend is returned. Empty `request_id` fields are ignored. It is responsibility of the client to ensure uniqueness of the `request_id` strings. `request_id` strings are limited to 64 characters.
Updates a RuntimeConfig resource. The configuration must exist beforehand.
Request message for `UpdateConfig()` method.
The name of the RuntimeConfig resource to update, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
The config resource to update.
Deletes a RuntimeConfig resource.
Request for the `DeleteConfig()` method.
The RuntimeConfig resource to delete, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
Lists variables within given a configuration, matching any provided filters. This only lists variable names, not the values, unless `return_values` is true, in which case only variables that user has IAM permission to GetVariable will be returned.
Request for the `ListVariables()` method.
The path to the RuntimeConfig resource for which you want to list variables. The configuration must exist beforehand; the path must by in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
Filters variables by matching the specified filter. For example: `projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.
Specifies the number of results to return per page. If there are fewer elements than the specified number, returns all elements.
Specifies a page token to use. Set `pageToken` to a `nextPageToken` returned by a previous list request to get the next page of results.
The flag indicates whether the user wants to return values of variables. If true, then only those variables that user has IAM GetVariable permission will be returned along with their values.
Response for the `ListVariables()` method.
A list of variables and their values. The order of returned variable objects is arbitrary.
This token allows you to get the next page of results for list requests. If the number of results is larger than `pageSize`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results
Gets information about a single variable.
Request for the `GetVariable()` method.
The name of the variable to return, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]`
Watches a specific variable and waits for a change in the variable's value. When there is a change, this method returns the new value or times out. If a variable is deleted while being watched, the `variableState` state is set to `DELETED` and the method returns the last known variable `value`. If you set the deadline for watching to a larger value than internal timeout (60 seconds), the current variable value is returned and the `variableState` will be `VARIABLE_STATE_UNSPECIFIED`. To learn more about creating a watcher, read the [Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable) documentation.
Request for the `WatchVariable()` method.
The name of the variable to watch, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
If specified, checks the current timestamp of the variable and if the current timestamp is newer than `newerThan` timestamp, the method returns immediately. If not specified or the variable has an older timestamp, the watcher waits for a the value to change before returning.
Creates a variable within the given configuration. You cannot create a variable with a name that is a prefix of an existing variable name, or a name that has an existing variable name as a prefix. To learn more about creating a variable, read the [Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables) documentation.
Request for the `CreateVariable()` method.
The path to the RutimeConfig resource that this variable should belong to. The configuration must exist beforehand; the path must by in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
The variable to create.
An optional but recommended unique `request_id`. If the server receives two `create()` requests with the same `request_id`, then the second request will be ignored and the first resource created and stored in the backend is returned. Empty `request_id` fields are ignored. It is responsibility of the client to ensure uniqueness of the `request_id` strings. `request_id` strings are limited to 64 characters.
Updates an existing variable with a new value.
Request for the `UpdateVariable()` method.
The name of the variable to update, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`
The variable to update.
Deletes a variable or multiple variables. If you specify a variable name, then that variable is deleted. If you specify a prefix and `recursive` is true, then all variables with that prefix are deleted. You must set a `recursive` to true if you delete variables by prefix.
Request for the `DeleteVariable()` method.
The name of the variable to delete, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`
Set to `true` to recursively delete multiple variables with the same prefix.
List waiters within the given configuration.
Request for the `ListWaiters()` method.
The path to the configuration for which you want to get a list of waiters. The configuration must exist beforehand; the path must by in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`
Specifies the number of results to return per page. If there are fewer elements than the specified number, returns all elements.
Specifies a page token to use. Set `pageToken` to a `nextPageToken` returned by a previous list request to get the next page of results.
Response for the `ListWaiters()` method. Order of returned waiter objects is arbitrary.
Found waiters in the project.
This token allows you to get the next page of results for list requests. If the number of results is larger than `pageSize`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results
Gets information about a single waiter.
Request for the `GetWaiter()` method.
The fully-qualified name of the Waiter resource object to retrieve, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`
Creates a Waiter resource. This operation returns a long-running Operation resource which can be polled for completion. However, a waiter with the given name will exist (and can be retrieved) prior to the operation completing. If the operation fails, the failed Waiter resource will still exist and must be deleted prior to subsequent creation attempts.
Request message for `CreateWaiter()` method.
The path to the configuration that will own the waiter. The configuration must exist beforehand; the path must by in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.
The Waiter resource to create.
An optional but recommended unique `request_id`. If the server receives two `create()` requests with the same `request_id`, then the second request will be ignored and the first resource created and stored in the backend is returned. Empty `request_id` fields are ignored. It is responsibility of the client to ensure uniqueness of the `request_id` strings. `request_id` strings are limited to 64 characters.
Deletes the waiter with the specified name.
Request for the `DeleteWaiter()` method.
The Waiter resource to delete, in the format: `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`
The condition that a Waiter resource is waiting for.
Used in:
The condition oneof holds the available condition types for this EndCondition. Currently, the only available type is Cardinality.
The cardinality of the `EndCondition`.
A Cardinality condition for the Waiter resource. A cardinality condition is met when the number of variables under a specified path prefix reaches a predefined number. For example, if you set a Cardinality condition where the `path` is set to `/foo` and the number of paths is set to 2, the following variables would meet the condition in a RuntimeConfig resource: + `/foo/variable1 = "value1"` + `/foo/variable2 = "value2"` + `/bar/variable3 = "value3"` It would not would not satisify the same condition with the `number` set to 3, however, because there is only 2 paths that start with `/foo`. Cardinality conditions are recursive; all subtrees under the specific path prefix are counted.
Used in:
The root of the variable subtree to monitor. For example, `/foo`.
The number variables under the `path` that must exist to meet this condition. Defaults to 1 if not specified.
A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig service. A RuntimeConfig resource consists of metadata and a hierarchy of variables.
Used as response type in: RuntimeConfigManager.CreateConfig, RuntimeConfigManager.GetConfig, RuntimeConfigManager.UpdateConfig
Used as field type in:
, ,The resource name of a runtime config. The name must have the format: projects/[PROJECT_ID]/configs/[CONFIG_NAME] The `[PROJECT_ID]` must be a valid project ID, and `[CONFIG_NAME]` is an arbitrary name that matches RFC 1035 segment specification. The length of `[CONFIG_NAME]` must be less than 64 bytes. You pick the RuntimeConfig resource name, but the server will validate that the name adheres to this format. After you create the resource, you cannot change the resource's name.
An optional description of the RuntimeConfig object.
Describes a single variable within a RuntimeConfig resource. The name denotes the hierarchical variable name. For example, `ports/serving_port` is a valid variable name. The variable value is an opaque string and only leaf variables can have values (that is, variables that do not have any child variables).
Used as response type in: RuntimeConfigManager.CreateVariable, RuntimeConfigManager.GetVariable, RuntimeConfigManager.UpdateVariable, RuntimeConfigManager.WatchVariable
Used as field type in:
, ,The name of the variable resource, in the format: projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME] The `[PROJECT_ID]` must be a valid project ID, `[CONFIG_NAME]` must be a valid RuntimeConfig reource and `[VARIABLE_NAME]` follows Unix file system file path naming. The `[VARIABLE_NAME]` can contain ASCII letters, numbers, slashes and dashes. Slashes are used as path element separators and are not part of the `[VARIABLE_NAME]` itself, so `[VARIABLE_NAME]` must contain at least one non-slash character. Multiple slashes are coalesced into single slash character. Each path segment should follow RFC 1035 segment specification. The length of a `[VARIABLE_NAME]` must be less than 256 bytes. Once you create a variable, you cannot change the variable name.
The value of the variable. It can be either a binary or a string value. You must specify one of either `value` or `text`. Specifying both will cause the server to return an error.
The binary value of the variable. The length of the value must be less than 4096 bytes. Empty values are also accepted. The value must be base64 encoded. Only one of `value` or `text` can be set.
The string value of the variable. The length of the value must be less than 4096 bytes. Empty values are also accepted. For example, `text: "my text value"`. The string must be valid UTF-8.
[Output Only] The time of the last variable update.
[Ouput only] The current state of the variable. The variable state indicates the outcome of the `variables().watch` call and is visible through the `get` and `list` calls.
The `VariableState` describes the last known state of the variable and is used during a `variables().watch` call to distinguish the state of the variable.
Used in:
Default variable state.
The variable was updated, while `variables().watch` was executing.
The variable was deleted, while `variables().watch` was executing.
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 indidicating 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.
Used as response type in: RuntimeConfigManager.GetWaiter
Used as field type in:
,The name of the Waiter resource, in the format: projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME] 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.
[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`.
[Optional] The failure condition of this waiter. If this condition is met, `done` will be set to `true` and the `error` code will be set to `ABORTED`. The failure condition takes precedence over the success condition. If both conditions are met, a failure will be indicated. This value is optional; if no failure condition is set, the only failure scenario will be a timeout.
[Required] The success condition. If this condition is met, `done` will be set to `true` and the `error` value will remain unset. The failure condition takes precedence over the success condition. If both conditions are met, a failure will be indicated.
[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.
[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.
[Output Only] If the waiter ended due to a failure or timeout, this value will be set.