Files
threshold/internal/proto/controller/api/resources/hostsets/v1/host_set.proto
T

71 lines
3.5 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
package controller.api.resources.hostsets.v1;
option go_package = "github.com/hashicorp/boundary/sdk/pbs/controller/api/resources/hostsets;hostsets";
2020-08-21 10:57:30 -07:00
import "google/protobuf/struct.proto";
import "google/protobuf/timestamp.proto";
import "google/protobuf/wrappers.proto";
2020-07-22 00:14:28 -04:00
import "controller/api/resources/scopes/v1/scope.proto";
import "controller/api/resources/plugins/v1/plugin.proto";
2020-08-07 12:55:02 -04:00
import "controller/custom_options/v1/options.proto";
2020-09-26 08:30:27 -04:00
// HostSet is a collection of Hosts created and managed by a Host Catalog
message HostSet {
// Output only. The ID of the Host Set.
string id = 10;
// The Host Catalog of which this Host Set is a part.
2020-09-26 08:30:27 -04:00
string host_catalog_id = 20 [json_name="host_catalog_id"];
2020-09-26 08:30:27 -04:00
// Output only. Scope information for this resource.
resources.scopes.v1.ScopeInfo scope = 30;
2020-05-05 11:19:42 -04:00
// Output only. Plugin information for this resource.
resources.plugins.v1.PluginInfo plugin = 35;
2020-09-26 08:30:27 -04:00
// Optional name for identification purposes.
google.protobuf.StringValue name = 40 [(custom_options.v1.generate_sdk_option) = true, (custom_options.v1.mask_mapping) = {this:"name" that: "name"}];
2020-09-26 08:30:27 -04:00
// Optional user-set description for identification purposes.
google.protobuf.StringValue description = 50 [(custom_options.v1.generate_sdk_option) = true, (custom_options.v1.mask_mapping) = {this:"description" that: "description"}];
2020-09-26 08:30:27 -04:00
// Output only. The time this resource was created.
google.protobuf.Timestamp created_time = 60 [json_name="created_time"];
2020-09-26 08:30:27 -04:00
// Output only. The time this resource was last updated.
google.protobuf.Timestamp updated_time = 70 [json_name="updated_time"];
// Version is used in mutation requests, after the initial creation, to ensure this resource has not changed.
// The mutation will fail if the version does not match the latest known good version.
2020-09-26 08:30:27 -04:00
uint32 version = 80;
2020-09-26 08:30:27 -04:00
// The type of the Host Set.
string type = 90;
2020-09-26 08:30:27 -04:00
// Output only. A list of Hosts in this Host Set.
repeated string host_ids = 100 [json_name="host_ids"];
2020-08-21 10:57:30 -07:00
2021-11-11 11:28:08 -05:00
// multiple possible endpoints for a host. Preferences are specified by
// "cidr:<valid IPv4/6 CIDR>" or "dns:<globbed name>", specifying which IP
// address or DNS name out of a host's available possibilities should be
// preferred. If no preferences are specified, a value will be chosen from
// among all avialable values using a built-in priority order. May not be
// valid for all plugin types.
repeated string preferred_endpoints = 101 [json_name="preferred_endpoints", (custom_options.v1.generate_sdk_option) = true, (custom_options.v1.mask_mapping) = {this:"preferred_endpoints" that: "PreferredEndpoints"}];
2021-11-11 11:28:08 -05:00
// An interger number of seconds indicating the amount of time that should
// elapse between syncs of the host set. The interval will be applied to the
// end of the previous sync operation, not the start. Setting to -1 will
// disable syncing for that host set; setting to zero will cause the set to
// use Boundary's default. The default may change between releases. May not
// be valid for all plugin types.
2021-11-11 11:28:08 -05:00
google.protobuf.Int32Value sync_interval_seconds = 102 [json_name="sync_interval_seconds", (custom_options.v1.generate_sdk_option) = true, (custom_options.v1.mask_mapping) = {this:"sync_interval_seconds" that: "SyncIntervalSeconds"}];
2020-09-26 08:30:27 -04:00
// The attributes that are applicable for the specific Host Set type.
google.protobuf.Struct attributes = 110 [(custom_options.v1.generate_sdk_option) = true];
// Output only. The available actions on this resource for this user.
repeated string authorized_actions = 300 [json_name="authorized_actions"];
}