Enum value maps for VariableState.
var ( VariableState_name = map[int32]string{ 0: "VARIABLE_STATE_UNSPECIFIED", 1: "UPDATED", 2: "DELETED", } VariableState_value = map[string]int32{ "VARIABLE_STATE_UNSPECIFIED": 0, "UPDATED": 1, "DELETED": 2, } )
var File_google_cloud_runtimeconfig_v1beta1_resources_proto protoreflect.FileDescriptor
var File_google_cloud_runtimeconfig_v1beta1_runtimeconfig_proto protoreflect.FileDescriptor
func RegisterRuntimeConfigManagerServer(s *grpc.Server, srv RuntimeConfigManagerServer)
Creates a RuntimeConfig resource.
type CreateConfigRequest struct { // The [project // ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848) // for this request, in the format `projects/[PROJECT_ID]`. Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` // The RuntimeConfig to create. Config *RuntimeConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"` // 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. RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` // contains filtered or unexported fields }
func (*CreateConfigRequest) Descriptor() ([]byte, []int)
Deprecated: Use CreateConfigRequest.ProtoReflect.Descriptor instead.
func (x *CreateConfigRequest) GetConfig() *RuntimeConfig
func (x *CreateConfigRequest) GetParent() string
func (x *CreateConfigRequest) GetRequestId() string
func (*CreateConfigRequest) ProtoMessage()
func (x *CreateConfigRequest) ProtoReflect() protoreflect.Message
func (x *CreateConfigRequest) Reset()
func (x *CreateConfigRequest) String() string
Request for the `CreateVariable()` method.
type CreateVariableRequest struct { // 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]` Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` // The variable to create. Variable *Variable `protobuf:"bytes,2,opt,name=variable,proto3" json:"variable,omitempty"` // 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. RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` // contains filtered or unexported fields }
func (*CreateVariableRequest) Descriptor() ([]byte, []int)
Deprecated: Use CreateVariableRequest.ProtoReflect.Descriptor instead.
func (x *CreateVariableRequest) GetParent() string
func (x *CreateVariableRequest) GetRequestId() string
func (x *CreateVariableRequest) GetVariable() *Variable
func (*CreateVariableRequest) ProtoMessage()
func (x *CreateVariableRequest) ProtoReflect() protoreflect.Message
func (x *CreateVariableRequest) Reset()
func (x *CreateVariableRequest) String() string
Request message for `CreateWaiter()` method.
type CreateWaiterRequest struct { // 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]`. Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` // The Waiter resource to create. Waiter *Waiter `protobuf:"bytes,2,opt,name=waiter,proto3" json:"waiter,omitempty"` // 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. RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` // contains filtered or unexported fields }
func (*CreateWaiterRequest) Descriptor() ([]byte, []int)
Deprecated: Use CreateWaiterRequest.ProtoReflect.Descriptor instead.
func (x *CreateWaiterRequest) GetParent() string
func (x *CreateWaiterRequest) GetRequestId() string
func (x *CreateWaiterRequest) GetWaiter() *Waiter
func (*CreateWaiterRequest) ProtoMessage()
func (x *CreateWaiterRequest) ProtoReflect() protoreflect.Message
func (x *CreateWaiterRequest) Reset()
func (x *CreateWaiterRequest) String() string
Request for the `DeleteConfig()` method.
type DeleteConfigRequest struct { // The RuntimeConfig resource to delete, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
func (*DeleteConfigRequest) Descriptor() ([]byte, []int)
Deprecated: Use DeleteConfigRequest.ProtoReflect.Descriptor instead.
func (x *DeleteConfigRequest) GetName() string
func (*DeleteConfigRequest) ProtoMessage()
func (x *DeleteConfigRequest) ProtoReflect() protoreflect.Message
func (x *DeleteConfigRequest) Reset()
func (x *DeleteConfigRequest) String() string
Request for the `DeleteVariable()` method.
type DeleteVariableRequest struct { // The name of the variable to delete, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Set to `true` to recursively delete multiple variables with the same // prefix. Recursive bool `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"` // contains filtered or unexported fields }
func (*DeleteVariableRequest) Descriptor() ([]byte, []int)
Deprecated: Use DeleteVariableRequest.ProtoReflect.Descriptor instead.
func (x *DeleteVariableRequest) GetName() string
func (x *DeleteVariableRequest) GetRecursive() bool
func (*DeleteVariableRequest) ProtoMessage()
func (x *DeleteVariableRequest) ProtoReflect() protoreflect.Message
func (x *DeleteVariableRequest) Reset()
func (x *DeleteVariableRequest) String() string
Request for the `DeleteWaiter()` method.
type DeleteWaiterRequest struct { // The Waiter resource to delete, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
func (*DeleteWaiterRequest) Descriptor() ([]byte, []int)
Deprecated: Use DeleteWaiterRequest.ProtoReflect.Descriptor instead.
func (x *DeleteWaiterRequest) GetName() string
func (*DeleteWaiterRequest) ProtoMessage()
func (x *DeleteWaiterRequest) ProtoReflect() protoreflect.Message
func (x *DeleteWaiterRequest) Reset()
func (x *DeleteWaiterRequest) String() string
The condition that a Waiter resource is waiting for.
type EndCondition struct { // The condition oneof holds the available condition types for this // EndCondition. Currently, the only available type is Cardinality. // // Types that are assignable to Condition: // *EndCondition_Cardinality_ Condition isEndCondition_Condition `protobuf_oneof:"condition"` // contains filtered or unexported fields }
func (*EndCondition) Descriptor() ([]byte, []int)
Deprecated: Use EndCondition.ProtoReflect.Descriptor instead.
func (x *EndCondition) GetCardinality() *EndCondition_Cardinality
func (m *EndCondition) GetCondition() isEndCondition_Condition
func (*EndCondition) ProtoMessage()
func (x *EndCondition) ProtoReflect() protoreflect.Message
func (x *EndCondition) Reset()
func (x *EndCondition) String() string
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.
type EndCondition_Cardinality struct { // The root of the variable subtree to monitor. For example, `/foo`. Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` // The number variables under the `path` that must exist to meet this // condition. Defaults to 1 if not specified. Number int32 `protobuf:"varint,2,opt,name=number,proto3" json:"number,omitempty"` // contains filtered or unexported fields }
func (*EndCondition_Cardinality) Descriptor() ([]byte, []int)
Deprecated: Use EndCondition_Cardinality.ProtoReflect.Descriptor instead.
func (x *EndCondition_Cardinality) GetNumber() int32
func (x *EndCondition_Cardinality) GetPath() string
func (*EndCondition_Cardinality) ProtoMessage()
func (x *EndCondition_Cardinality) ProtoReflect() protoreflect.Message
func (x *EndCondition_Cardinality) Reset()
func (x *EndCondition_Cardinality) String() string
type EndCondition_Cardinality_ struct { // The cardinality of the `EndCondition`. Cardinality *EndCondition_Cardinality `protobuf:"bytes,1,opt,name=cardinality,proto3,oneof"` }
Gets a RuntimeConfig resource.
type GetConfigRequest struct { // The name of the RuntimeConfig resource to retrieve, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
func (*GetConfigRequest) Descriptor() ([]byte, []int)
Deprecated: Use GetConfigRequest.ProtoReflect.Descriptor instead.
func (x *GetConfigRequest) GetName() string
func (*GetConfigRequest) ProtoMessage()
func (x *GetConfigRequest) ProtoReflect() protoreflect.Message
func (x *GetConfigRequest) Reset()
func (x *GetConfigRequest) String() string
Request for the `GetVariable()` method.
type GetVariableRequest struct { // The name of the variable to return, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
func (*GetVariableRequest) Descriptor() ([]byte, []int)
Deprecated: Use GetVariableRequest.ProtoReflect.Descriptor instead.
func (x *GetVariableRequest) GetName() string
func (*GetVariableRequest) ProtoMessage()
func (x *GetVariableRequest) ProtoReflect() protoreflect.Message
func (x *GetVariableRequest) Reset()
func (x *GetVariableRequest) String() string
Request for the `GetWaiter()` method.
type GetWaiterRequest struct { // The fully-qualified name of the Waiter resource object to retrieve, in the // format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
func (*GetWaiterRequest) Descriptor() ([]byte, []int)
Deprecated: Use GetWaiterRequest.ProtoReflect.Descriptor instead.
func (x *GetWaiterRequest) GetName() string
func (*GetWaiterRequest) ProtoMessage()
func (x *GetWaiterRequest) ProtoReflect() protoreflect.Message
func (x *GetWaiterRequest) Reset()
func (x *GetWaiterRequest) String() string
Request for the `ListConfigs()` method.
type ListConfigsRequest struct { // The [project // ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848) // for this request, in the format `projects/[PROJECT_ID]`. Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` // Specifies the number of results to return per page. If there are fewer // elements than the specified number, returns all elements. PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` // Specifies a page token to use. Set `pageToken` to a `nextPageToken` // returned by a previous list request to get the next page of results. PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` // contains filtered or unexported fields }
func (*ListConfigsRequest) Descriptor() ([]byte, []int)
Deprecated: Use ListConfigsRequest.ProtoReflect.Descriptor instead.
func (x *ListConfigsRequest) GetPageSize() int32
func (x *ListConfigsRequest) GetPageToken() string
func (x *ListConfigsRequest) GetParent() string
func (*ListConfigsRequest) ProtoMessage()
func (x *ListConfigsRequest) ProtoReflect() protoreflect.Message
func (x *ListConfigsRequest) Reset()
func (x *ListConfigsRequest) String() string
`ListConfigs()` returns the following response. The order of returned objects is arbitrary; that is, it is not ordered in any particular way.
type ListConfigsResponse struct { // 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. Configs []*RuntimeConfig `protobuf:"bytes,1,rep,name=configs,proto3" json:"configs,omitempty"` // 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 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` // contains filtered or unexported fields }
func (*ListConfigsResponse) Descriptor() ([]byte, []int)
Deprecated: Use ListConfigsResponse.ProtoReflect.Descriptor instead.
func (x *ListConfigsResponse) GetConfigs() []*RuntimeConfig
func (x *ListConfigsResponse) GetNextPageToken() string
func (*ListConfigsResponse) ProtoMessage()
func (x *ListConfigsResponse) ProtoReflect() protoreflect.Message
func (x *ListConfigsResponse) Reset()
func (x *ListConfigsResponse) String() string
Request for the `ListVariables()` method.
type ListVariablesRequest struct { // 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]` Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` // Filters variables by matching the specified filter. For example: // // `projects/example-project/config/[CONFIG_NAME]/variables/example-variable`. Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` // Specifies the number of results to return per page. If there are fewer // elements than the specified number, returns all elements. PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` // Specifies a page token to use. Set `pageToken` to a `nextPageToken` // returned by a previous list request to get the next page of results. PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` // 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. ReturnValues bool `protobuf:"varint,5,opt,name=return_values,json=returnValues,proto3" json:"return_values,omitempty"` // contains filtered or unexported fields }
func (*ListVariablesRequest) Descriptor() ([]byte, []int)
Deprecated: Use ListVariablesRequest.ProtoReflect.Descriptor instead.
func (x *ListVariablesRequest) GetFilter() string
func (x *ListVariablesRequest) GetPageSize() int32
func (x *ListVariablesRequest) GetPageToken() string
func (x *ListVariablesRequest) GetParent() string
func (x *ListVariablesRequest) GetReturnValues() bool
func (*ListVariablesRequest) ProtoMessage()
func (x *ListVariablesRequest) ProtoReflect() protoreflect.Message
func (x *ListVariablesRequest) Reset()
func (x *ListVariablesRequest) String() string
Response for the `ListVariables()` method.
type ListVariablesResponse struct { // A list of variables and their values. The order of returned variable // objects is arbitrary. Variables []*Variable `protobuf:"bytes,1,rep,name=variables,proto3" json:"variables,omitempty"` // 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 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` // contains filtered or unexported fields }
func (*ListVariablesResponse) Descriptor() ([]byte, []int)
Deprecated: Use ListVariablesResponse.ProtoReflect.Descriptor instead.
func (x *ListVariablesResponse) GetNextPageToken() string
func (x *ListVariablesResponse) GetVariables() []*Variable
func (*ListVariablesResponse) ProtoMessage()
func (x *ListVariablesResponse) ProtoReflect() protoreflect.Message
func (x *ListVariablesResponse) Reset()
func (x *ListVariablesResponse) String() string
Request for the `ListWaiters()` method.
type ListWaitersRequest struct { // 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]` Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` // Specifies the number of results to return per page. If there are fewer // elements than the specified number, returns all elements. PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` // Specifies a page token to use. Set `pageToken` to a `nextPageToken` // returned by a previous list request to get the next page of results. PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` // contains filtered or unexported fields }
func (*ListWaitersRequest) Descriptor() ([]byte, []int)
Deprecated: Use ListWaitersRequest.ProtoReflect.Descriptor instead.
func (x *ListWaitersRequest) GetPageSize() int32
func (x *ListWaitersRequest) GetPageToken() string
func (x *ListWaitersRequest) GetParent() string
func (*ListWaitersRequest) ProtoMessage()
func (x *ListWaitersRequest) ProtoReflect() protoreflect.Message
func (x *ListWaitersRequest) Reset()
func (x *ListWaitersRequest) String() string
Response for the `ListWaiters()` method. Order of returned waiter objects is arbitrary.
type ListWaitersResponse struct { // Found waiters in the project. Waiters []*Waiter `protobuf:"bytes,1,rep,name=waiters,proto3" json:"waiters,omitempty"` // 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 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` // contains filtered or unexported fields }
func (*ListWaitersResponse) Descriptor() ([]byte, []int)
Deprecated: Use ListWaitersResponse.ProtoReflect.Descriptor instead.
func (x *ListWaitersResponse) GetNextPageToken() string
func (x *ListWaitersResponse) GetWaiters() []*Waiter
func (*ListWaitersResponse) ProtoMessage()
func (x *ListWaitersResponse) ProtoReflect() protoreflect.Message
func (x *ListWaitersResponse) Reset()
func (x *ListWaitersResponse) String() string
A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig service. A RuntimeConfig resource consists of metadata and a hierarchy of variables.
type RuntimeConfig struct { // 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. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // An optional description of the RuntimeConfig object. Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` // contains filtered or unexported fields }
func (*RuntimeConfig) Descriptor() ([]byte, []int)
Deprecated: Use RuntimeConfig.ProtoReflect.Descriptor instead.
func (x *RuntimeConfig) GetDescription() string
func (x *RuntimeConfig) GetName() string
func (*RuntimeConfig) ProtoMessage()
func (x *RuntimeConfig) ProtoReflect() protoreflect.Message
func (x *RuntimeConfig) Reset()
func (x *RuntimeConfig) String() string
RuntimeConfigManagerClient is the client API for RuntimeConfigManager service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type RuntimeConfigManagerClient interface { // Lists all the RuntimeConfig resources within project. ListConfigs(ctx context.Context, in *ListConfigsRequest, opts ...grpc.CallOption) (*ListConfigsResponse, error) // Gets information about a RuntimeConfig resource. GetConfig(ctx context.Context, in *GetConfigRequest, opts ...grpc.CallOption) (*RuntimeConfig, error) // Creates a new RuntimeConfig resource. The configuration name must be // unique within project. CreateConfig(ctx context.Context, in *CreateConfigRequest, opts ...grpc.CallOption) (*RuntimeConfig, error) // Updates a RuntimeConfig resource. The configuration must exist beforehand. UpdateConfig(ctx context.Context, in *UpdateConfigRequest, opts ...grpc.CallOption) (*RuntimeConfig, error) // Deletes a RuntimeConfig resource. DeleteConfig(ctx context.Context, in *DeleteConfigRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) // 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. ListVariables(ctx context.Context, in *ListVariablesRequest, opts ...grpc.CallOption) (*ListVariablesResponse, error) // Gets information about a single variable. GetVariable(ctx context.Context, in *GetVariableRequest, opts ...grpc.CallOption) (*Variable, error) // 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. WatchVariable(ctx context.Context, in *WatchVariableRequest, opts ...grpc.CallOption) (*Variable, error) // 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. CreateVariable(ctx context.Context, in *CreateVariableRequest, opts ...grpc.CallOption) (*Variable, error) // Updates an existing variable with a new value. UpdateVariable(ctx context.Context, in *UpdateVariableRequest, opts ...grpc.CallOption) (*Variable, error) // 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. DeleteVariable(ctx context.Context, in *DeleteVariableRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) // List waiters within the given configuration. ListWaiters(ctx context.Context, in *ListWaitersRequest, opts ...grpc.CallOption) (*ListWaitersResponse, error) // Gets information about a single waiter. GetWaiter(ctx context.Context, in *GetWaiterRequest, opts ...grpc.CallOption) (*Waiter, error) // 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. CreateWaiter(ctx context.Context, in *CreateWaiterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) // Deletes the waiter with the specified name. DeleteWaiter(ctx context.Context, in *DeleteWaiterRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) }
func NewRuntimeConfigManagerClient(cc grpc.ClientConnInterface) RuntimeConfigManagerClient
RuntimeConfigManagerServer is the server API for RuntimeConfigManager service.
type RuntimeConfigManagerServer interface { // Lists all the RuntimeConfig resources within project. ListConfigs(context.Context, *ListConfigsRequest) (*ListConfigsResponse, error) // Gets information about a RuntimeConfig resource. GetConfig(context.Context, *GetConfigRequest) (*RuntimeConfig, error) // Creates a new RuntimeConfig resource. The configuration name must be // unique within project. CreateConfig(context.Context, *CreateConfigRequest) (*RuntimeConfig, error) // Updates a RuntimeConfig resource. The configuration must exist beforehand. UpdateConfig(context.Context, *UpdateConfigRequest) (*RuntimeConfig, error) // Deletes a RuntimeConfig resource. DeleteConfig(context.Context, *DeleteConfigRequest) (*emptypb.Empty, error) // 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. ListVariables(context.Context, *ListVariablesRequest) (*ListVariablesResponse, error) // Gets information about a single variable. GetVariable(context.Context, *GetVariableRequest) (*Variable, error) // 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. WatchVariable(context.Context, *WatchVariableRequest) (*Variable, error) // 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. CreateVariable(context.Context, *CreateVariableRequest) (*Variable, error) // Updates an existing variable with a new value. UpdateVariable(context.Context, *UpdateVariableRequest) (*Variable, error) // 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. DeleteVariable(context.Context, *DeleteVariableRequest) (*emptypb.Empty, error) // List waiters within the given configuration. ListWaiters(context.Context, *ListWaitersRequest) (*ListWaitersResponse, error) // Gets information about a single waiter. GetWaiter(context.Context, *GetWaiterRequest) (*Waiter, error) // 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. CreateWaiter(context.Context, *CreateWaiterRequest) (*longrunning.Operation, error) // Deletes the waiter with the specified name. DeleteWaiter(context.Context, *DeleteWaiterRequest) (*emptypb.Empty, error) }
UnimplementedRuntimeConfigManagerServer can be embedded to have forward compatible implementations.
type UnimplementedRuntimeConfigManagerServer struct { }
func (*UnimplementedRuntimeConfigManagerServer) CreateConfig(context.Context, *CreateConfigRequest) (*RuntimeConfig, error)
func (*UnimplementedRuntimeConfigManagerServer) CreateVariable(context.Context, *CreateVariableRequest) (*Variable, error)
func (*UnimplementedRuntimeConfigManagerServer) CreateWaiter(context.Context, *CreateWaiterRequest) (*longrunning.Operation, error)
func (*UnimplementedRuntimeConfigManagerServer) DeleteConfig(context.Context, *DeleteConfigRequest) (*emptypb.Empty, error)
func (*UnimplementedRuntimeConfigManagerServer) DeleteVariable(context.Context, *DeleteVariableRequest) (*emptypb.Empty, error)
func (*UnimplementedRuntimeConfigManagerServer) DeleteWaiter(context.Context, *DeleteWaiterRequest) (*emptypb.Empty, error)
func (*UnimplementedRuntimeConfigManagerServer) GetConfig(context.Context, *GetConfigRequest) (*RuntimeConfig, error)
func (*UnimplementedRuntimeConfigManagerServer) GetVariable(context.Context, *GetVariableRequest) (*Variable, error)
func (*UnimplementedRuntimeConfigManagerServer) GetWaiter(context.Context, *GetWaiterRequest) (*Waiter, error)
func (*UnimplementedRuntimeConfigManagerServer) ListConfigs(context.Context, *ListConfigsRequest) (*ListConfigsResponse, error)
func (*UnimplementedRuntimeConfigManagerServer) ListVariables(context.Context, *ListVariablesRequest) (*ListVariablesResponse, error)
func (*UnimplementedRuntimeConfigManagerServer) ListWaiters(context.Context, *ListWaitersRequest) (*ListWaitersResponse, error)
func (*UnimplementedRuntimeConfigManagerServer) UpdateConfig(context.Context, *UpdateConfigRequest) (*RuntimeConfig, error)
func (*UnimplementedRuntimeConfigManagerServer) UpdateVariable(context.Context, *UpdateVariableRequest) (*Variable, error)
func (*UnimplementedRuntimeConfigManagerServer) WatchVariable(context.Context, *WatchVariableRequest) (*Variable, error)
Request message for `UpdateConfig()` method.
type UpdateConfigRequest struct { // The name of the RuntimeConfig resource to update, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // The config resource to update. Config *RuntimeConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"` // contains filtered or unexported fields }
func (*UpdateConfigRequest) Descriptor() ([]byte, []int)
Deprecated: Use UpdateConfigRequest.ProtoReflect.Descriptor instead.
func (x *UpdateConfigRequest) GetConfig() *RuntimeConfig
func (x *UpdateConfigRequest) GetName() string
func (*UpdateConfigRequest) ProtoMessage()
func (x *UpdateConfigRequest) ProtoReflect() protoreflect.Message
func (x *UpdateConfigRequest) Reset()
func (x *UpdateConfigRequest) String() string
Request for the `UpdateVariable()` method.
type UpdateVariableRequest struct { // The name of the variable to update, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // The variable to update. Variable *Variable `protobuf:"bytes,2,opt,name=variable,proto3" json:"variable,omitempty"` // contains filtered or unexported fields }
func (*UpdateVariableRequest) Descriptor() ([]byte, []int)
Deprecated: Use UpdateVariableRequest.ProtoReflect.Descriptor instead.
func (x *UpdateVariableRequest) GetName() string
func (x *UpdateVariableRequest) GetVariable() *Variable
func (*UpdateVariableRequest) ProtoMessage()
func (x *UpdateVariableRequest) ProtoReflect() protoreflect.Message
func (x *UpdateVariableRequest) Reset()
func (x *UpdateVariableRequest) String() string
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).
type Variable struct { // 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. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // 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. // // Types that are assignable to Contents: // *Variable_Value // *Variable_Text Contents isVariable_Contents `protobuf_oneof:"contents"` // [Output Only] The time of the last variable update. UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` // [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. State VariableState `protobuf:"varint,4,opt,name=state,proto3,enum=google.cloud.runtimeconfig.v1beta1.VariableState" json:"state,omitempty"` // contains filtered or unexported fields }
func (*Variable) Descriptor() ([]byte, []int)
Deprecated: Use Variable.ProtoReflect.Descriptor instead.
func (m *Variable) GetContents() isVariable_Contents
func (x *Variable) GetName() string
func (x *Variable) GetState() VariableState
func (x *Variable) GetText() string
func (x *Variable) GetUpdateTime() *timestamppb.Timestamp
func (x *Variable) GetValue() []byte
func (*Variable) ProtoMessage()
func (x *Variable) ProtoReflect() protoreflect.Message
func (x *Variable) Reset()
func (x *Variable) String() string
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.
type VariableState int32
const ( // Default variable state. VariableState_VARIABLE_STATE_UNSPECIFIED VariableState = 0 // The variable was updated, while `variables().watch` was executing. VariableState_UPDATED VariableState = 1 // The variable was deleted, while `variables().watch` was executing. VariableState_DELETED VariableState = 2 )
func (VariableState) Descriptor() protoreflect.EnumDescriptor
func (x VariableState) Enum() *VariableState
func (VariableState) EnumDescriptor() ([]byte, []int)
Deprecated: Use VariableState.Descriptor instead.
func (x VariableState) Number() protoreflect.EnumNumber
func (x VariableState) String() string
func (VariableState) Type() protoreflect.EnumType
type Variable_Text struct { // 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. Text string `protobuf:"bytes,5,opt,name=text,proto3,oneof"` }
type Variable_Value struct { // 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. Value []byte `protobuf:"bytes,2,opt,name=value,proto3,oneof"` }
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.
type Waiter struct { // 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. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // [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`. Timeout *durationpb.Duration `protobuf:"bytes,2,opt,name=timeout,proto3" json:"timeout,omitempty"` // [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. Failure *EndCondition `protobuf:"bytes,3,opt,name=failure,proto3" json:"failure,omitempty"` // [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. Success *EndCondition `protobuf:"bytes,4,opt,name=success,proto3" json:"success,omitempty"` // [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. CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` // [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. Done bool `protobuf:"varint,6,opt,name=done,proto3" json:"done,omitempty"` // [Output Only] If the waiter ended due to a failure or timeout, this value // will be set. Error *status.Status `protobuf:"bytes,7,opt,name=error,proto3" json:"error,omitempty"` // contains filtered or unexported fields }
func (*Waiter) Descriptor() ([]byte, []int)
Deprecated: Use Waiter.ProtoReflect.Descriptor instead.
func (x *Waiter) GetCreateTime() *timestamppb.Timestamp
func (x *Waiter) GetDone() bool
func (x *Waiter) GetError() *status.Status
func (x *Waiter) GetFailure() *EndCondition
func (x *Waiter) GetName() string
func (x *Waiter) GetSuccess() *EndCondition
func (x *Waiter) GetTimeout() *durationpb.Duration
func (*Waiter) ProtoMessage()
func (x *Waiter) ProtoReflect() protoreflect.Message
func (x *Waiter) Reset()
func (x *Waiter) String() string
Request for the `WatchVariable()` method.
type WatchVariableRequest struct { // The name of the variable to watch, in the format: // // `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // 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. NewerThan *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=newer_than,json=newerThan,proto3" json:"newer_than,omitempty"` // contains filtered or unexported fields }
func (*WatchVariableRequest) Descriptor() ([]byte, []int)
Deprecated: Use WatchVariableRequest.ProtoReflect.Descriptor instead.
func (x *WatchVariableRequest) GetName() string
func (x *WatchVariableRequest) GetNewerThan() *timestamppb.Timestamp
func (*WatchVariableRequest) ProtoMessage()
func (x *WatchVariableRequest) ProtoReflect() protoreflect.Message
func (x *WatchVariableRequest) Reset()
func (x *WatchVariableRequest) String() string