talos
1syntax = "proto3";
2
3package inspect;
4
5option go_package = "github.com/siderolabs/talos/pkg/machinery/api/inspect";
6
7import "common/common.proto";
8import "google/protobuf/empty.proto";
9
10// The inspect service definition.
11//
12// InspectService provides auxiliary API to inspect OS internals.
13service InspectService {
14rpc ControllerRuntimeDependencies(google.protobuf.Empty) returns (ControllerRuntimeDependenciesResponse);
15}
16
17// The ControllerRuntimeDependency message contains the graph of controller-resource dependencies.
18message ControllerRuntimeDependency {
19common.Metadata metadata = 1;
20repeated ControllerDependencyEdge edges = 2;
21}
22
23message ControllerRuntimeDependenciesResponse {
24repeated ControllerRuntimeDependency messages = 1;
25}
26
27enum DependencyEdgeType {
28OUTPUT_EXCLUSIVE = 0;
29OUTPUT_SHARED = 3;
30INPUT_STRONG = 1;
31INPUT_WEAK = 2;
32INPUT_DESTROY_READY = 4;
33}
34
35message ControllerDependencyEdge {
36string controller_name = 1;
37DependencyEdgeType edge_type = 2;
38string resource_namespace = 3;
39string resource_type = 4;
40string resource_id = 5;
41}
42