5
option go_package = "github.com/kumahq/kuma/api/mesh";
7
import "google/protobuf/descriptor.proto";
9
message KumaResourceOptions {
10
// Name of the Kuma resource struct.
13
// Name and value of the modelResourceType constant.
16
// True if this resource has global scope. Otherwise it will be mesh scope.
19
// Name of the resource's Go package.
22
// Whether to skip type registration for this resource.
23
bool skip_registration = 6;
25
KumaKdsOptions kds = 10;
28
// Whether scope is "Namespace"; Otherwise to "Cluster".
29
bool scope_namespace = 11;
31
// Whether to skip generation of native API helper functions.
32
bool skip_kubernetes_wrappers = 12;
34
// Whether to generate Inspect API endpoint
35
bool allow_to_inspect = 13;
37
// If resource has more than one version, then the flag defines which version
38
// is used in the storage. All other versions must be convertible to it.
39
bool storage_version = 14;
41
// The name of the policy showed as plural to be displayed in the UI and maybe
43
string plural_display_name = 15;
45
// Is Experimental indicates if a policy is in experimental state (might not
46
// be production ready).
47
bool is_experimental = 16;
49
// Columns to set using `+kubebuilder::printcolumns`
50
repeated string additional_printer_columns = 17;
52
// Whether the resource has a matching insight type
53
bool has_insights = 18;
56
message KumaWsOptions {
57
// Name is the name of the policy for resource name usage in path.
59
// Plural is only to be set if the plural of the resource is irregular (not
60
// just adding a 's' at the end).
62
// ReadOnly if the resource is read only.
64
// AdminOnly whether this entity requires admin auth to access these
69
message KumaKdsOptions {
70
// SendToGlobal whether this entity will be sent from zone cp to global cp
71
bool send_to_global = 1;
72
// SendToZone whether this entity will be sent from global cp to zone cp
73
bool send_to_zone = 2;
76
message KumaPolicyOptions {
77
// Whether to skip type registration for this resource.
78
bool skip_registration = 1;
79
// An optional alternative plural form if this is unset default to a standard
80
// derivation of the name
84
extend google.protobuf.MessageOptions {
85
KumaResourceOptions resource = 43534533; // 'kuma'
86
KumaPolicyOptions policy = 43534534; // 'kuma'