guildhouse-proto/quartermaster/v1/registry.proto
Tyler King 2720a631b8 Initial: Guildhouse protobuf definitions
14 proto files across 5 gRPC service domains:
- quartermaster/v1 (6): governance, registry, notary, credentials, capabilities, pipelines
- bascule/v1 (4): session, command, gateway, ceremony
- workspace/v1 (1): workspace management
- runner/v1 (2): pipeline execution
- schematic/v1 (1): composite meta-artifacts

Consumed as a git submodule by guildhouse-platform (Rust) and guildhouse-dashboard (Python).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 10:29:06 -05:00

58 lines
1.5 KiB
Protocol Buffer

syntax = "proto3";
package quartermaster.v1;
import "google/protobuf/timestamp.proto";
import "google/protobuf/struct.proto";
service QuartermasterRegistry {
rpc RegisterCluster (RegisterClusterRequest) returns (RegisterClusterResponse);
rpc GetCluster (GetClusterRequest) returns (GetClusterResponse);
rpc ListClusters (ListClustersRequest) returns (ListClustersResponse);
rpc UpdateClusterMetadata (UpdateClusterMetadataRequest) returns (UpdateClusterMetadataResponse);
}
message RegisterClusterRequest {
string cluster_name = 1;
string trust_domain = 2;
string role = 3; // "authority", "delegate", "peer"
string provisioned_by = 4; // optional cluster_id
}
message RegisterClusterResponse {
string cluster_id = 1;
string cluster_name = 2;
string trust_domain = 3;
string role = 4;
google.protobuf.Timestamp provisioned_at = 5;
}
message GetClusterRequest {
string cluster_id = 1;
}
message GetClusterResponse {
string cluster_id = 1;
string cluster_name = 2;
string trust_domain = 3;
string role = 4;
string provisioned_by = 5;
google.protobuf.Timestamp provisioned_at = 6;
string rmm_endpoint = 7;
google.protobuf.Struct metadata = 8;
}
message ListClustersRequest {}
message ListClustersResponse {
repeated GetClusterResponse clusters = 1;
}
message UpdateClusterMetadataRequest {
string cluster_id = 1;
google.protobuf.Struct metadata = 2;
}
message UpdateClusterMetadataResponse {
string cluster_id = 1;
google.protobuf.Struct metadata = 2;
}