istio.io/istio@v0.0.0-20240520182934-d79c90f27776/pkg/config/schema/collections/collections.agent.gen.go (about)

     1  //go:build agent
     2  // +build agent
     3  
     4  // Code generated by pkg/config/schema/codegen/tools/collections.main.go. DO NOT EDIT.
     5  
     6  package collections
     7  
     8  import (
     9  	"istio.io/istio/pkg/config/schema/collection"
    10  	"istio.io/istio/pkg/config/schema/resource"
    11  	"istio.io/istio/pkg/config/validation"
    12  
    13  	"reflect"
    14  
    15  	istioioapiextensionsv1alpha1 "istio.io/api/extensions/v1alpha1"
    16  	istioioapimeshv1alpha1 "istio.io/api/mesh/v1alpha1"
    17  	istioioapimetav1alpha1 "istio.io/api/meta/v1alpha1"
    18  	istioioapinetworkingv1alpha3 "istio.io/api/networking/v1alpha3"
    19  	istioioapinetworkingv1beta1 "istio.io/api/networking/v1beta1"
    20  	istioioapisecurityv1beta1 "istio.io/api/security/v1beta1"
    21  	istioioapitelemetryv1alpha1 "istio.io/api/telemetry/v1alpha1"
    22  )
    23  
    24  var (
    25  	AuthorizationPolicy = resource.Builder{
    26  		Identifier: "AuthorizationPolicy",
    27  		Group:      "security.istio.io",
    28  		Kind:       "AuthorizationPolicy",
    29  		Plural:     "authorizationpolicies",
    30  		Version:    "v1beta1",
    31  		VersionAliases: []string{
    32  			"v1",
    33  		},
    34  		Proto: "istio.security.v1beta1.AuthorizationPolicy", StatusProto: "istio.meta.v1alpha1.IstioStatus",
    35  		ReflectType: reflect.TypeOf(&istioioapisecurityv1beta1.AuthorizationPolicy{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
    36  		ProtoPackage: "istio.io/api/security/v1beta1", StatusPackage: "istio.io/api/meta/v1alpha1",
    37  		ClusterScoped: false,
    38  		Synthetic:     false,
    39  		Builtin:       false,
    40  		ValidateProto: validation.ValidateAuthorizationPolicy,
    41  	}.MustBuild()
    42  
    43  	DestinationRule = resource.Builder{
    44  		Identifier: "DestinationRule",
    45  		Group:      "networking.istio.io",
    46  		Kind:       "DestinationRule",
    47  		Plural:     "destinationrules",
    48  		Version:    "v1alpha3",
    49  		VersionAliases: []string{
    50  			"v1beta1",
    51  			"v1",
    52  		},
    53  		Proto: "istio.networking.v1alpha3.DestinationRule", StatusProto: "istio.meta.v1alpha1.IstioStatus",
    54  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.DestinationRule{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
    55  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
    56  		ClusterScoped: false,
    57  		Synthetic:     false,
    58  		Builtin:       false,
    59  		ValidateProto: validation.ValidateDestinationRule,
    60  	}.MustBuild()
    61  
    62  	Gateway = resource.Builder{
    63  		Identifier: "Gateway",
    64  		Group:      "networking.istio.io",
    65  		Kind:       "Gateway",
    66  		Plural:     "gateways",
    67  		Version:    "v1alpha3",
    68  		VersionAliases: []string{
    69  			"v1beta1",
    70  			"v1",
    71  		},
    72  		Proto: "istio.networking.v1alpha3.Gateway", StatusProto: "istio.meta.v1alpha1.IstioStatus",
    73  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.Gateway{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
    74  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
    75  		ClusterScoped: false,
    76  		Synthetic:     false,
    77  		Builtin:       false,
    78  		ValidateProto: validation.ValidateGateway,
    79  	}.MustBuild()
    80  
    81  	MeshConfig = resource.Builder{
    82  		Identifier:    "MeshConfig",
    83  		Group:         "",
    84  		Kind:          "MeshConfig",
    85  		Plural:        "meshconfigs",
    86  		Version:       "v1alpha1",
    87  		Proto:         "istio.mesh.v1alpha1.MeshConfig",
    88  		ReflectType:   reflect.TypeOf(&istioioapimeshv1alpha1.MeshConfig{}).Elem(),
    89  		ProtoPackage:  "istio.io/api/mesh/v1alpha1",
    90  		ClusterScoped: false,
    91  		Synthetic:     true,
    92  		Builtin:       false,
    93  		ValidateProto: validation.EmptyValidate,
    94  	}.MustBuild()
    95  
    96  	MeshNetworks = resource.Builder{
    97  		Identifier:    "MeshNetworks",
    98  		Group:         "",
    99  		Kind:          "MeshNetworks",
   100  		Plural:        "meshnetworks",
   101  		Version:       "v1alpha1",
   102  		Proto:         "istio.mesh.v1alpha1.MeshNetworks",
   103  		ReflectType:   reflect.TypeOf(&istioioapimeshv1alpha1.MeshNetworks{}).Elem(),
   104  		ProtoPackage:  "istio.io/api/mesh/v1alpha1",
   105  		ClusterScoped: false,
   106  		Synthetic:     true,
   107  		Builtin:       false,
   108  		ValidateProto: validation.EmptyValidate,
   109  	}.MustBuild()
   110  
   111  	PeerAuthentication = resource.Builder{
   112  		Identifier: "PeerAuthentication",
   113  		Group:      "security.istio.io",
   114  		Kind:       "PeerAuthentication",
   115  		Plural:     "peerauthentications",
   116  		Version:    "v1beta1",
   117  		VersionAliases: []string{
   118  			"v1",
   119  		},
   120  		Proto: "istio.security.v1beta1.PeerAuthentication", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   121  		ReflectType: reflect.TypeOf(&istioioapisecurityv1beta1.PeerAuthentication{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   122  		ProtoPackage: "istio.io/api/security/v1beta1", StatusPackage: "istio.io/api/meta/v1alpha1",
   123  		ClusterScoped: false,
   124  		Synthetic:     false,
   125  		Builtin:       false,
   126  		ValidateProto: validation.ValidatePeerAuthentication,
   127  	}.MustBuild()
   128  
   129  	ProxyConfig = resource.Builder{
   130  		Identifier: "ProxyConfig",
   131  		Group:      "networking.istio.io",
   132  		Kind:       "ProxyConfig",
   133  		Plural:     "proxyconfigs",
   134  		Version:    "v1beta1",
   135  		Proto:      "istio.networking.v1beta1.ProxyConfig", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   136  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1beta1.ProxyConfig{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   137  		ProtoPackage: "istio.io/api/networking/v1beta1", StatusPackage: "istio.io/api/meta/v1alpha1",
   138  		ClusterScoped: false,
   139  		Synthetic:     false,
   140  		Builtin:       false,
   141  		ValidateProto: validation.ValidateProxyConfig,
   142  	}.MustBuild()
   143  
   144  	RequestAuthentication = resource.Builder{
   145  		Identifier: "RequestAuthentication",
   146  		Group:      "security.istio.io",
   147  		Kind:       "RequestAuthentication",
   148  		Plural:     "requestauthentications",
   149  		Version:    "v1beta1",
   150  		VersionAliases: []string{
   151  			"v1",
   152  		},
   153  		Proto: "istio.security.v1beta1.RequestAuthentication", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   154  		ReflectType: reflect.TypeOf(&istioioapisecurityv1beta1.RequestAuthentication{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   155  		ProtoPackage: "istio.io/api/security/v1beta1", StatusPackage: "istio.io/api/meta/v1alpha1",
   156  		ClusterScoped: false,
   157  		Synthetic:     false,
   158  		Builtin:       false,
   159  		ValidateProto: validation.ValidateRequestAuthentication,
   160  	}.MustBuild()
   161  
   162  	ServiceEntry = resource.Builder{
   163  		Identifier: "ServiceEntry",
   164  		Group:      "networking.istio.io",
   165  		Kind:       "ServiceEntry",
   166  		Plural:     "serviceentries",
   167  		Version:    "v1alpha3",
   168  		VersionAliases: []string{
   169  			"v1beta1",
   170  			"v1",
   171  		},
   172  		Proto: "istio.networking.v1alpha3.ServiceEntry", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   173  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.ServiceEntry{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   174  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
   175  		ClusterScoped: false,
   176  		Synthetic:     false,
   177  		Builtin:       false,
   178  		ValidateProto: validation.ValidateServiceEntry,
   179  	}.MustBuild()
   180  
   181  	Sidecar = resource.Builder{
   182  		Identifier: "Sidecar",
   183  		Group:      "networking.istio.io",
   184  		Kind:       "Sidecar",
   185  		Plural:     "sidecars",
   186  		Version:    "v1alpha3",
   187  		VersionAliases: []string{
   188  			"v1beta1",
   189  			"v1",
   190  		},
   191  		Proto: "istio.networking.v1alpha3.Sidecar", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   192  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.Sidecar{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   193  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
   194  		ClusterScoped: false,
   195  		Synthetic:     false,
   196  		Builtin:       false,
   197  		ValidateProto: validation.ValidateSidecar,
   198  	}.MustBuild()
   199  
   200  	Telemetry = resource.Builder{
   201  		Identifier: "Telemetry",
   202  		Group:      "telemetry.istio.io",
   203  		Kind:       "Telemetry",
   204  		Plural:     "telemetries",
   205  		Version:    "v1alpha1",
   206  		VersionAliases: []string{
   207  			"v1",
   208  		},
   209  		Proto: "istio.telemetry.v1alpha1.Telemetry", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   210  		ReflectType: reflect.TypeOf(&istioioapitelemetryv1alpha1.Telemetry{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   211  		ProtoPackage: "istio.io/api/telemetry/v1alpha1", StatusPackage: "istio.io/api/meta/v1alpha1",
   212  		ClusterScoped: false,
   213  		Synthetic:     false,
   214  		Builtin:       false,
   215  		ValidateProto: validation.ValidateTelemetry,
   216  	}.MustBuild()
   217  
   218  	VirtualService = resource.Builder{
   219  		Identifier: "VirtualService",
   220  		Group:      "networking.istio.io",
   221  		Kind:       "VirtualService",
   222  		Plural:     "virtualservices",
   223  		Version:    "v1alpha3",
   224  		VersionAliases: []string{
   225  			"v1beta1",
   226  			"v1",
   227  		},
   228  		Proto: "istio.networking.v1alpha3.VirtualService", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   229  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.VirtualService{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   230  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
   231  		ClusterScoped: false,
   232  		Synthetic:     false,
   233  		Builtin:       false,
   234  		ValidateProto: validation.ValidateVirtualService,
   235  	}.MustBuild()
   236  
   237  	WasmPlugin = resource.Builder{
   238  		Identifier: "WasmPlugin",
   239  		Group:      "extensions.istio.io",
   240  		Kind:       "WasmPlugin",
   241  		Plural:     "wasmplugins",
   242  		Version:    "v1alpha1",
   243  		Proto:      "istio.extensions.v1alpha1.WasmPlugin", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   244  		ReflectType: reflect.TypeOf(&istioioapiextensionsv1alpha1.WasmPlugin{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   245  		ProtoPackage: "istio.io/api/extensions/v1alpha1", StatusPackage: "istio.io/api/meta/v1alpha1",
   246  		ClusterScoped: false,
   247  		Synthetic:     false,
   248  		Builtin:       false,
   249  		ValidateProto: validation.ValidateWasmPlugin,
   250  	}.MustBuild()
   251  
   252  	WorkloadEntry = resource.Builder{
   253  		Identifier: "WorkloadEntry",
   254  		Group:      "networking.istio.io",
   255  		Kind:       "WorkloadEntry",
   256  		Plural:     "workloadentries",
   257  		Version:    "v1alpha3",
   258  		VersionAliases: []string{
   259  			"v1beta1",
   260  			"v1",
   261  		},
   262  		Proto: "istio.networking.v1alpha3.WorkloadEntry", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   263  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.WorkloadEntry{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   264  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
   265  		ClusterScoped: false,
   266  		Synthetic:     false,
   267  		Builtin:       false,
   268  		ValidateProto: validation.ValidateWorkloadEntry,
   269  	}.MustBuild()
   270  
   271  	WorkloadGroup = resource.Builder{
   272  		Identifier: "WorkloadGroup",
   273  		Group:      "networking.istio.io",
   274  		Kind:       "WorkloadGroup",
   275  		Plural:     "workloadgroups",
   276  		Version:    "v1alpha3",
   277  		VersionAliases: []string{
   278  			"v1beta1",
   279  			"v1",
   280  		},
   281  		Proto: "istio.networking.v1alpha3.WorkloadGroup", StatusProto: "istio.meta.v1alpha1.IstioStatus",
   282  		ReflectType: reflect.TypeOf(&istioioapinetworkingv1alpha3.WorkloadGroup{}).Elem(), StatusType: reflect.TypeOf(&istioioapimetav1alpha1.IstioStatus{}).Elem(),
   283  		ProtoPackage: "istio.io/api/networking/v1alpha3", StatusPackage: "istio.io/api/meta/v1alpha1",
   284  		ClusterScoped: false,
   285  		Synthetic:     false,
   286  		Builtin:       false,
   287  		ValidateProto: validation.ValidateWorkloadGroup,
   288  	}.MustBuild()
   289  
   290  	// All contains all collections in the system.
   291  	All = collection.NewSchemasBuilder().
   292  		MustAdd(AuthorizationPolicy).
   293  		MustAdd(DestinationRule).
   294  		MustAdd(Gateway).
   295  		MustAdd(MeshConfig).
   296  		MustAdd(MeshNetworks).
   297  		MustAdd(PeerAuthentication).
   298  		MustAdd(ProxyConfig).
   299  		MustAdd(RequestAuthentication).
   300  		MustAdd(ServiceEntry).
   301  		MustAdd(Sidecar).
   302  		MustAdd(Telemetry).
   303  		MustAdd(VirtualService).
   304  		MustAdd(WasmPlugin).
   305  		MustAdd(WorkloadEntry).
   306  		MustAdd(WorkloadGroup).
   307  		Build()
   308  
   309  	// Kube contains only kubernetes collections.
   310  	Kube = collection.NewSchemasBuilder().
   311  		Build()
   312  
   313  	// Pilot contains only collections used by Pilot.
   314  	Pilot = collection.NewSchemasBuilder().
   315  		MustAdd(AuthorizationPolicy).
   316  		MustAdd(DestinationRule).
   317  		MustAdd(Gateway).
   318  		MustAdd(PeerAuthentication).
   319  		MustAdd(ProxyConfig).
   320  		MustAdd(RequestAuthentication).
   321  		MustAdd(ServiceEntry).
   322  		MustAdd(Sidecar).
   323  		MustAdd(Telemetry).
   324  		MustAdd(VirtualService).
   325  		MustAdd(WasmPlugin).
   326  		MustAdd(WorkloadEntry).
   327  		MustAdd(WorkloadGroup).
   328  		Build()
   329  
   330  	// pilotGatewayAPI contains only collections used by Pilot, including the full Gateway API.
   331  	pilotGatewayAPI = collection.NewSchemasBuilder().
   332  			MustAdd(AuthorizationPolicy).
   333  			MustAdd(DestinationRule).
   334  			MustAdd(Gateway).
   335  			MustAdd(PeerAuthentication).
   336  			MustAdd(ProxyConfig).
   337  			MustAdd(RequestAuthentication).
   338  			MustAdd(ServiceEntry).
   339  			MustAdd(Sidecar).
   340  			MustAdd(Telemetry).
   341  			MustAdd(VirtualService).
   342  			MustAdd(WasmPlugin).
   343  			MustAdd(WorkloadEntry).
   344  			MustAdd(WorkloadGroup).
   345  			Build()
   346  
   347  	// PilotStableGatewayAPI contains only collections used by Pilot, including beta+ Gateway API.
   348  	pilotStableGatewayAPI = collection.NewSchemasBuilder().
   349  				MustAdd(AuthorizationPolicy).
   350  				MustAdd(DestinationRule).
   351  				MustAdd(Gateway).
   352  				MustAdd(PeerAuthentication).
   353  				MustAdd(ProxyConfig).
   354  				MustAdd(RequestAuthentication).
   355  				MustAdd(ServiceEntry).
   356  				MustAdd(Sidecar).
   357  				MustAdd(Telemetry).
   358  				MustAdd(VirtualService).
   359  				MustAdd(WasmPlugin).
   360  				MustAdd(WorkloadEntry).
   361  				MustAdd(WorkloadGroup).
   362  				Build()
   363  )