@kilic.dev/pulumi-k8s-crds 4.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/cilium/v2/index.d.ts +0 -36
  2. package/dist/cilium/v2/index.js +1 -49
  3. package/dist/package.json +1 -1
  4. package/dist/types/input.d.ts +83 -1663
  5. package/dist/types/output.d.ts +79 -1666
  6. package/dist/utilities.js +1 -1
  7. package/package.json +1 -1
  8. package/dist/cilium/v2/ciliumClusterwideEnvoyConfig.d.ts +0 -61
  9. package/dist/cilium/v2/ciliumClusterwideEnvoyConfig.js +0 -96
  10. package/dist/cilium/v2/ciliumClusterwideEnvoyConfigList.d.ts +0 -70
  11. package/dist/cilium/v2/ciliumClusterwideEnvoyConfigList.js +0 -99
  12. package/dist/cilium/v2/ciliumClusterwideEnvoyConfigPatch.d.ts +0 -69
  13. package/dist/cilium/v2/ciliumClusterwideEnvoyConfigPatch.js +0 -99
  14. package/dist/cilium/v2/ciliumEgressGatewayPolicy.d.ts +0 -61
  15. package/dist/cilium/v2/ciliumEgressGatewayPolicy.js +0 -96
  16. package/dist/cilium/v2/ciliumEgressGatewayPolicyList.d.ts +0 -70
  17. package/dist/cilium/v2/ciliumEgressGatewayPolicyList.js +0 -99
  18. package/dist/cilium/v2/ciliumEgressGatewayPolicyPatch.d.ts +0 -69
  19. package/dist/cilium/v2/ciliumEgressGatewayPolicyPatch.js +0 -99
  20. package/dist/cilium/v2/ciliumEnvoyConfig.d.ts +0 -61
  21. package/dist/cilium/v2/ciliumEnvoyConfig.js +0 -96
  22. package/dist/cilium/v2/ciliumEnvoyConfigList.d.ts +0 -70
  23. package/dist/cilium/v2/ciliumEnvoyConfigList.js +0 -99
  24. package/dist/cilium/v2/ciliumEnvoyConfigPatch.d.ts +0 -69
  25. package/dist/cilium/v2/ciliumEnvoyConfigPatch.js +0 -99
  26. package/dist/cilium/v2/ciliumLocalRedirectPolicy.d.ts +0 -66
  27. package/dist/cilium/v2/ciliumLocalRedirectPolicy.js +0 -102
  28. package/dist/cilium/v2/ciliumLocalRedirectPolicyList.d.ts +0 -70
  29. package/dist/cilium/v2/ciliumLocalRedirectPolicyList.js +0 -99
  30. package/dist/cilium/v2/ciliumLocalRedirectPolicyPatch.d.ts +0 -72
  31. package/dist/cilium/v2/ciliumLocalRedirectPolicyPatch.js +0 -103
@@ -49747,253 +49747,6 @@ export declare namespace cilium {
49747
49747
  */
49748
49748
  externalCIDRs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
49749
49749
  }
49750
- interface CiliumClusterwideEnvoyConfig {
49751
- /**
49752
- * APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
49753
- */
49754
- apiVersion?: pulumi.Input<"cilium.io/v2" | undefined>;
49755
- /**
49756
- * Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
49757
- */
49758
- kind?: pulumi.Input<"CiliumClusterwideEnvoyConfig" | undefined>;
49759
- /**
49760
- * Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
49761
- */
49762
- metadata: pulumi.Input<pulumiKubernetes.types.input.meta.v1.ObjectMeta>;
49763
- spec?: pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpec | undefined>;
49764
- }
49765
- interface CiliumClusterwideEnvoyConfigSpec {
49766
- /**
49767
- * BackendServices specifies Kubernetes services whose backends
49768
- * are automatically synced to Envoy using EDS. Traffic for these
49769
- * services is not forwarded to an Envoy listener. This allows an
49770
- * Envoy listener load balance traffic to these backends while
49771
- * normal Cilium service load balancing takes care of balancing
49772
- * traffic for these services at the same time.
49773
- */
49774
- backendServices?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecBackendServices>[] | undefined>;
49775
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecNodeSelector | undefined>;
49776
- /**
49777
- * Envoy xDS resources, a list of the following Envoy resource types:
49778
- * type.googleapis.com/envoy.config.listener.v3.Listener,
49779
- * type.googleapis.com/envoy.config.route.v3.RouteConfiguration,
49780
- * type.googleapis.com/envoy.config.cluster.v3.Cluster,
49781
- * type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and
49782
- * type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret.
49783
- */
49784
- resources: pulumi.Input<pulumi.Input<{
49785
- [key: string]: any;
49786
- }>[]>;
49787
- /**
49788
- * Services specifies Kubernetes services for which traffic is
49789
- * forwarded to an Envoy listener for L7 load balancing. Backends
49790
- * of these services are automatically synced to Envoy usign EDS.
49791
- */
49792
- services?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecServices>[] | undefined>;
49793
- }
49794
- interface CiliumClusterwideEnvoyConfigSpecBackendServices {
49795
- /**
49796
- * Name is the name of a destination Kubernetes service that identifies traffic
49797
- * to be redirected.
49798
- */
49799
- name: pulumi.Input<string>;
49800
- /**
49801
- * Namespace is the Kubernetes service namespace.
49802
- * In CiliumEnvoyConfig namespace defaults to the namespace of the CEC,
49803
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
49804
- */
49805
- namespace?: pulumi.Input<string | undefined>;
49806
- /**
49807
- * Ports is a set of port numbers, which can be used for filtering in case of underlying
49808
- * is exposing multiple port numbers.
49809
- */
49810
- number?: pulumi.Input<pulumi.Input<string>[] | undefined>;
49811
- }
49812
- interface CiliumClusterwideEnvoyConfigSpecBackendServicesPatch {
49813
- /**
49814
- * Name is the name of a destination Kubernetes service that identifies traffic
49815
- * to be redirected.
49816
- */
49817
- name?: pulumi.Input<string | undefined>;
49818
- /**
49819
- * Namespace is the Kubernetes service namespace.
49820
- * In CiliumEnvoyConfig namespace defaults to the namespace of the CEC,
49821
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
49822
- */
49823
- namespace?: pulumi.Input<string | undefined>;
49824
- /**
49825
- * Ports is a set of port numbers, which can be used for filtering in case of underlying
49826
- * is exposing multiple port numbers.
49827
- */
49828
- number?: pulumi.Input<pulumi.Input<string>[] | undefined>;
49829
- }
49830
- /**
49831
- * NodeSelector is a label selector that determines to which nodes
49832
- * this configuration applies.
49833
- * If nil, then this config applies to all nodes.
49834
- */
49835
- interface CiliumClusterwideEnvoyConfigSpecNodeSelector {
49836
- /**
49837
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
49838
- */
49839
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecNodeSelectorMatchExpressions>[] | undefined>;
49840
- /**
49841
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
49842
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
49843
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
49844
- */
49845
- matchLabels?: pulumi.Input<{
49846
- [key: string]: pulumi.Input<string>;
49847
- } | undefined>;
49848
- }
49849
- /**
49850
- * A label selector requirement is a selector that contains values, a key, and an operator that
49851
- * relates the key and values.
49852
- */
49853
- interface CiliumClusterwideEnvoyConfigSpecNodeSelectorMatchExpressions {
49854
- /**
49855
- * key is the label key that the selector applies to.
49856
- */
49857
- key: pulumi.Input<string>;
49858
- /**
49859
- * operator represents a key's relationship to a set of values.
49860
- * Valid operators are In, NotIn, Exists and DoesNotExist.
49861
- */
49862
- operator: pulumi.Input<string>;
49863
- /**
49864
- * values is an array of string values. If the operator is In or NotIn,
49865
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
49866
- * the values array must be empty. This array is replaced during a strategic
49867
- * merge patch.
49868
- */
49869
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
49870
- }
49871
- /**
49872
- * A label selector requirement is a selector that contains values, a key, and an operator that
49873
- * relates the key and values.
49874
- */
49875
- interface CiliumClusterwideEnvoyConfigSpecNodeSelectorMatchExpressionsPatch {
49876
- /**
49877
- * key is the label key that the selector applies to.
49878
- */
49879
- key?: pulumi.Input<string | undefined>;
49880
- /**
49881
- * operator represents a key's relationship to a set of values.
49882
- * Valid operators are In, NotIn, Exists and DoesNotExist.
49883
- */
49884
- operator?: pulumi.Input<string | undefined>;
49885
- /**
49886
- * values is an array of string values. If the operator is In or NotIn,
49887
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
49888
- * the values array must be empty. This array is replaced during a strategic
49889
- * merge patch.
49890
- */
49891
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
49892
- }
49893
- /**
49894
- * NodeSelector is a label selector that determines to which nodes
49895
- * this configuration applies.
49896
- * If nil, then this config applies to all nodes.
49897
- */
49898
- interface CiliumClusterwideEnvoyConfigSpecNodeSelectorPatch {
49899
- /**
49900
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
49901
- */
49902
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecNodeSelectorMatchExpressionsPatch>[] | undefined>;
49903
- /**
49904
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
49905
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
49906
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
49907
- */
49908
- matchLabels?: pulumi.Input<{
49909
- [key: string]: pulumi.Input<string>;
49910
- } | undefined>;
49911
- }
49912
- interface CiliumClusterwideEnvoyConfigSpecPatch {
49913
- /**
49914
- * BackendServices specifies Kubernetes services whose backends
49915
- * are automatically synced to Envoy using EDS. Traffic for these
49916
- * services is not forwarded to an Envoy listener. This allows an
49917
- * Envoy listener load balance traffic to these backends while
49918
- * normal Cilium service load balancing takes care of balancing
49919
- * traffic for these services at the same time.
49920
- */
49921
- backendServices?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecBackendServicesPatch>[] | undefined>;
49922
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecNodeSelectorPatch | undefined>;
49923
- /**
49924
- * Envoy xDS resources, a list of the following Envoy resource types:
49925
- * type.googleapis.com/envoy.config.listener.v3.Listener,
49926
- * type.googleapis.com/envoy.config.route.v3.RouteConfiguration,
49927
- * type.googleapis.com/envoy.config.cluster.v3.Cluster,
49928
- * type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and
49929
- * type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret.
49930
- */
49931
- resources?: pulumi.Input<pulumi.Input<{
49932
- [key: string]: any;
49933
- }>[] | undefined>;
49934
- /**
49935
- * Services specifies Kubernetes services for which traffic is
49936
- * forwarded to an Envoy listener for L7 load balancing. Backends
49937
- * of these services are automatically synced to Envoy usign EDS.
49938
- */
49939
- services?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumClusterwideEnvoyConfigSpecServicesPatch>[] | undefined>;
49940
- }
49941
- interface CiliumClusterwideEnvoyConfigSpecServices {
49942
- /**
49943
- * Listener specifies the name of the Envoy listener the
49944
- * service traffic is redirected to. The listener must be
49945
- * specified in the Envoy 'resources' of the same
49946
- * CiliumEnvoyConfig.
49947
- *
49948
- * If omitted, the first listener specified in 'resources' is
49949
- * used.
49950
- */
49951
- listener?: pulumi.Input<string | undefined>;
49952
- /**
49953
- * Name is the name of a destination Kubernetes service that identifies traffic
49954
- * to be redirected.
49955
- */
49956
- name: pulumi.Input<string>;
49957
- /**
49958
- * Namespace is the Kubernetes service namespace.
49959
- * In CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC,
49960
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
49961
- */
49962
- namespace?: pulumi.Input<string | undefined>;
49963
- /**
49964
- * Ports is a set of service's frontend ports that should be redirected to the Envoy
49965
- * listener. By default all frontend ports of the service are redirected.
49966
- */
49967
- ports?: pulumi.Input<pulumi.Input<number>[] | undefined>;
49968
- }
49969
- interface CiliumClusterwideEnvoyConfigSpecServicesPatch {
49970
- /**
49971
- * Listener specifies the name of the Envoy listener the
49972
- * service traffic is redirected to. The listener must be
49973
- * specified in the Envoy 'resources' of the same
49974
- * CiliumEnvoyConfig.
49975
- *
49976
- * If omitted, the first listener specified in 'resources' is
49977
- * used.
49978
- */
49979
- listener?: pulumi.Input<string | undefined>;
49980
- /**
49981
- * Name is the name of a destination Kubernetes service that identifies traffic
49982
- * to be redirected.
49983
- */
49984
- name?: pulumi.Input<string | undefined>;
49985
- /**
49986
- * Namespace is the Kubernetes service namespace.
49987
- * In CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC,
49988
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
49989
- */
49990
- namespace?: pulumi.Input<string | undefined>;
49991
- /**
49992
- * Ports is a set of service's frontend ports that should be redirected to the Envoy
49993
- * listener. By default all frontend ports of the service are redirected.
49994
- */
49995
- ports?: pulumi.Input<pulumi.Input<number>[] | undefined>;
49996
- }
49997
49750
  /**
49998
49751
  * CiliumClusterwideNetworkPolicy is a Kubernetes third-party resource with an
49999
49752
  * modified version of CiliumNetworkPolicy which is cluster scoped rather than
@@ -59804,7 +59557,12 @@ export declare namespace cilium {
59804
59557
  */
59805
59558
  type: pulumi.Input<string>;
59806
59559
  }
59807
- interface CiliumEgressGatewayPolicy {
59560
+ /**
59561
+ * CiliumLoadBalancerIPPool is a Kubernetes third-party resource which
59562
+ * is used to defined pools of IPs which the operator can use to allocate
59563
+ * and advertise IPs for Services of type LoadBalancer.
59564
+ */
59565
+ interface CiliumLoadBalancerIPPool {
59808
59566
  /**
59809
59567
  * APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
59810
59568
  */
@@ -59812,92 +59570,82 @@ export declare namespace cilium {
59812
59570
  /**
59813
59571
  * Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
59814
59572
  */
59815
- kind?: pulumi.Input<"CiliumEgressGatewayPolicy" | undefined>;
59573
+ kind?: pulumi.Input<"CiliumLoadBalancerIPPool" | undefined>;
59816
59574
  /**
59817
59575
  * Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
59818
59576
  */
59819
59577
  metadata: pulumi.Input<pulumiKubernetes.types.input.meta.v1.ObjectMeta>;
59820
- spec?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpec | undefined>;
59578
+ spec: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpec>;
59579
+ status?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolStatus | undefined>;
59821
59580
  }
59822
- interface CiliumEgressGatewayPolicySpec {
59823
- /**
59824
- * DestinationCIDRs is a list of destination CIDRs for destination IP addresses.
59825
- * If a destination IP matches any one CIDR, it will be selected.
59826
- */
59827
- destinationCIDRs: pulumi.Input<pulumi.Input<string>[]>;
59828
- egressGateway: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGateway>;
59581
+ /**
59582
+ * Spec is a human readable description for a BGP load balancer
59583
+ * ip pool.
59584
+ */
59585
+ interface CiliumLoadBalancerIPPoolSpec {
59829
59586
  /**
59830
- * Optional list of gateway nodes responsible for SNATing traffic.
59831
- * If this field has any entries the contents of the egressGateway field will be ignored.
59832
- * In case multiple nodes are a match for the given set of labels in each entry,
59833
- * the first node in lexical ordering based on their name will be selected for each entry.
59587
+ * AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable.
59588
+ * If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since
59589
+ * reserving the first and last IPs would make the CIDRs unusable.
59834
59590
  */
59835
- egressGateways?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGateways>[] | undefined>;
59591
+ allowFirstLastIPs?: pulumi.Input<string | undefined>;
59836
59592
  /**
59837
- * ExcludedCIDRs is a list of destination CIDRs that will be excluded
59838
- * from the egress gateway redirection and SNAT logic.
59839
- * Should be a subset of destinationCIDRs otherwise it will not have any
59840
- * effect.
59593
+ * Blocks is a list of CIDRs comprising this IP Pool
59841
59594
  */
59842
- excludedCIDRs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
59595
+ blocks?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecBlocks>[] | undefined>;
59843
59596
  /**
59844
- * Egress represents a list of rules by which egress traffic is
59845
- * filtered from the source pods.
59597
+ * Disabled, if set to true means that no new IPs will be allocated from this pool.
59598
+ * Existing allocations will not be removed from services.
59846
59599
  */
59847
- selectors: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectors>[]>;
59600
+ disabled?: pulumi.Input<boolean | undefined>;
59601
+ serviceSelector?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelector | undefined>;
59602
+ }
59603
+ /**
59604
+ * CiliumLoadBalancerIPPoolIPBlock describes a single IP block.
59605
+ */
59606
+ interface CiliumLoadBalancerIPPoolSpecBlocks {
59607
+ cidr?: pulumi.Input<string | undefined>;
59608
+ start?: pulumi.Input<string | undefined>;
59609
+ stop?: pulumi.Input<string | undefined>;
59610
+ }
59611
+ /**
59612
+ * CiliumLoadBalancerIPPoolIPBlock describes a single IP block.
59613
+ */
59614
+ interface CiliumLoadBalancerIPPoolSpecBlocksPatch {
59615
+ cidr?: pulumi.Input<string | undefined>;
59616
+ start?: pulumi.Input<string | undefined>;
59617
+ stop?: pulumi.Input<string | undefined>;
59848
59618
  }
59849
59619
  /**
59850
- * EgressGateway is the gateway node responsible for SNATing traffic.
59851
- * In case multiple nodes are a match for the given set of labels, the first node
59852
- * in lexical ordering based on their name will be selected.
59620
+ * Spec is a human readable description for a BGP load balancer
59621
+ * ip pool.
59853
59622
  */
59854
- interface CiliumEgressGatewayPolicySpecEgressGateway {
59623
+ interface CiliumLoadBalancerIPPoolSpecPatch {
59855
59624
  /**
59856
- * EgressIP is the source IP address that the egress traffic is SNATed
59857
- * with.
59858
- *
59859
- * Example:
59860
- * When set to "192.168.1.100", matching egress traffic will be
59861
- * redirected to the node matching the NodeSelector field and SNATed
59862
- * with IP address 192.168.1.100.
59863
- *
59864
- * When set to "2001:db8::1", matching egress traffic will be
59865
- * redirected to the node matching the NodeSelector field and SNATed
59866
- * with IPv6 address 2001:db8::1.
59867
- *
59868
- * When none of the Interface or EgressIP fields is specified, the
59869
- * policy will use the first IPv4 assigned to the interface with the
59870
- * default route.
59625
+ * AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable.
59626
+ * If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since
59627
+ * reserving the first and last IPs would make the CIDRs unusable.
59871
59628
  */
59872
- egressIP?: pulumi.Input<string | undefined>;
59629
+ allowFirstLastIPs?: pulumi.Input<string | undefined>;
59873
59630
  /**
59874
- * Interface is the network interface to which the egress IP address
59875
- * that the traffic is SNATed with is assigned.
59876
- *
59877
- * Example:
59878
- * When set to "eth1", matching egress traffic will be redirected to the
59879
- * node matching the NodeSelector field and SNATed with the first IPv4
59880
- * address assigned to the eth1 interface.
59881
- *
59882
- * When none of the Interface or EgressIP fields is specified, the
59883
- * policy will use the first IPv4 assigned to the interface with the
59884
- * default route.
59631
+ * Blocks is a list of CIDRs comprising this IP Pool
59885
59632
  */
59886
- interface?: pulumi.Input<string | undefined>;
59887
- nodeSelector: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelector>;
59633
+ blocks?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecBlocksPatch>[] | undefined>;
59634
+ /**
59635
+ * Disabled, if set to true means that no new IPs will be allocated from this pool.
59636
+ * Existing allocations will not be removed from services.
59637
+ */
59638
+ disabled?: pulumi.Input<boolean | undefined>;
59639
+ serviceSelector?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorPatch | undefined>;
59888
59640
  }
59889
59641
  /**
59890
- * This is a label selector which selects the node that should act as
59891
- * egress gateway for the given policy.
59892
- * In case multiple nodes are selected, only the first one in the
59893
- * lexical ordering over the node names will be used.
59894
- * This field follows standard label selector semantics.
59642
+ * ServiceSelector selects a set of services which are eligible to receive IPs from this
59895
59643
  */
59896
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelector {
59644
+ interface CiliumLoadBalancerIPPoolSpecServiceSelector {
59897
59645
  /**
59898
59646
  * matchExpressions is a list of label selector requirements. The requirements are ANDed.
59899
59647
  */
59900
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressions>[] | undefined>;
59648
+ matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressions>[] | undefined>;
59901
59649
  /**
59902
59650
  * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
59903
59651
  * map is equivalent to an element of matchExpressions, whose key field is "key", the
@@ -59911,7 +59659,7 @@ export declare namespace cilium {
59911
59659
  * A label selector requirement is a selector that contains values, a key, and an operator that
59912
59660
  * relates the key and values.
59913
59661
  */
59914
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressions {
59662
+ interface CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressions {
59915
59663
  /**
59916
59664
  * key is the label key that the selector applies to.
59917
59665
  */
@@ -59933,7 +59681,7 @@ export declare namespace cilium {
59933
59681
  * A label selector requirement is a selector that contains values, a key, and an operator that
59934
59682
  * relates the key and values.
59935
59683
  */
59936
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressionsPatch {
59684
+ interface CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressionsPatch {
59937
59685
  /**
59938
59686
  * key is the label key that the selector applies to.
59939
59687
  */
@@ -59952,17 +59700,13 @@ export declare namespace cilium {
59952
59700
  values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
59953
59701
  }
59954
59702
  /**
59955
- * This is a label selector which selects the node that should act as
59956
- * egress gateway for the given policy.
59957
- * In case multiple nodes are selected, only the first one in the
59958
- * lexical ordering over the node names will be used.
59959
- * This field follows standard label selector semantics.
59703
+ * ServiceSelector selects a set of services which are eligible to receive IPs from this
59960
59704
  */
59961
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorPatch {
59705
+ interface CiliumLoadBalancerIPPoolSpecServiceSelectorPatch {
59962
59706
  /**
59963
59707
  * matchExpressions is a list of label selector requirements. The requirements are ANDed.
59964
59708
  */
59965
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressionsPatch>[] | undefined>;
59709
+ matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressionsPatch>[] | undefined>;
59966
59710
  /**
59967
59711
  * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
59968
59712
  * map is equivalent to an element of matchExpressions, whose key field is "key", the
@@ -59973,929 +59717,38 @@ export declare namespace cilium {
59973
59717
  } | undefined>;
59974
59718
  }
59975
59719
  /**
59976
- * EgressGateway is the gateway node responsible for SNATing traffic.
59977
- * In case multiple nodes are a match for the given set of labels, the first node
59978
- * in lexical ordering based on their name will be selected.
59720
+ * Status is the status of the IP Pool.
59721
+ *
59722
+ * It might be possible for users to define overlapping IP Pools, we can't validate or enforce non-overlapping pools
59723
+ * during object creation. The Cilium operator will do this validation and update the status to reflect the ability
59724
+ * to allocate IPs from this pool.
59979
59725
  */
59980
- interface CiliumEgressGatewayPolicySpecEgressGatewayPatch {
59981
- /**
59982
- * EgressIP is the source IP address that the egress traffic is SNATed
59983
- * with.
59984
- *
59985
- * Example:
59986
- * When set to "192.168.1.100", matching egress traffic will be
59987
- * redirected to the node matching the NodeSelector field and SNATed
59988
- * with IP address 192.168.1.100.
59989
- *
59990
- * When set to "2001:db8::1", matching egress traffic will be
59991
- * redirected to the node matching the NodeSelector field and SNATed
59992
- * with IPv6 address 2001:db8::1.
59993
- *
59994
- * When none of the Interface or EgressIP fields is specified, the
59995
- * policy will use the first IPv4 assigned to the interface with the
59996
- * default route.
59997
- */
59998
- egressIP?: pulumi.Input<string | undefined>;
59726
+ interface CiliumLoadBalancerIPPoolStatus {
59999
59727
  /**
60000
- * Interface is the network interface to which the egress IP address
60001
- * that the traffic is SNATed with is assigned.
60002
- *
60003
- * Example:
60004
- * When set to "eth1", matching egress traffic will be redirected to the
60005
- * node matching the NodeSelector field and SNATed with the first IPv4
60006
- * address assigned to the eth1 interface.
60007
- *
60008
- * When none of the Interface or EgressIP fields is specified, the
60009
- * policy will use the first IPv4 assigned to the interface with the
60010
- * default route.
59728
+ * Current service state
60011
59729
  */
60012
- interface?: pulumi.Input<string | undefined>;
60013
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorPatch | undefined>;
59730
+ conditions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolStatusConditions>[] | undefined>;
60014
59731
  }
60015
59732
  /**
60016
- * EgressGateway identifies the node that should act as egress gateway for a
60017
- * given egress Gateway policy. In addition to that it also specifies the
60018
- * configuration of said node (which egress IP or network interface should be
60019
- * used to SNAT traffic).
59733
+ * Condition contains details for one aspect of the current state of this API Resource.
60020
59734
  */
60021
- interface CiliumEgressGatewayPolicySpecEgressGateways {
59735
+ interface CiliumLoadBalancerIPPoolStatusConditions {
60022
59736
  /**
60023
- * EgressIP is the source IP address that the egress traffic is SNATed
60024
- * with.
60025
- *
60026
- * Example:
60027
- * When set to "192.168.1.100", matching egress traffic will be
60028
- * redirected to the node matching the NodeSelector field and SNATed
60029
- * with IP address 192.168.1.100.
60030
- *
60031
- * When set to "2001:db8::1", matching egress traffic will be
60032
- * redirected to the node matching the NodeSelector field and SNATed
60033
- * with IPv6 address 2001:db8::1.
60034
- *
60035
- * When none of the Interface or EgressIP fields is specified, the
60036
- * policy will use the first IPv4 assigned to the interface with the
60037
- * default route.
59737
+ * lastTransitionTime is the last time the condition transitioned from one status to another.
59738
+ * This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
60038
59739
  */
60039
- egressIP?: pulumi.Input<string | undefined>;
59740
+ lastTransitionTime: pulumi.Input<string>;
60040
59741
  /**
60041
- * Interface is the network interface to which the egress IP address
60042
- * that the traffic is SNATed with is assigned.
60043
- *
60044
- * Example:
60045
- * When set to "eth1", matching egress traffic will be redirected to the
60046
- * node matching the NodeSelector field and SNATed with the first IPv4
60047
- * address assigned to the eth1 interface.
60048
- *
60049
- * When none of the Interface or EgressIP fields is specified, the
60050
- * policy will use the first IPv4 assigned to the interface with the
60051
- * default route.
59742
+ * message is a human readable message indicating details about the transition.
59743
+ * This may be an empty string.
60052
59744
  */
60053
- interface?: pulumi.Input<string | undefined>;
60054
- nodeSelector: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelector>;
60055
- }
60056
- /**
60057
- * This is a label selector which selects the node that should act as
60058
- * egress gateway for the given policy.
60059
- * In case multiple nodes are selected, only the first one in the
60060
- * lexical ordering over the node names will be used.
60061
- * This field follows standard label selector semantics.
60062
- */
60063
- interface CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelector {
59745
+ message: pulumi.Input<string>;
60064
59746
  /**
60065
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
59747
+ * observedGeneration represents the .metadata.generation that the condition was set based upon.
59748
+ * For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
59749
+ * with respect to the current state of the instance.
60066
59750
  */
60067
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorMatchExpressions>[] | undefined>;
60068
- /**
60069
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60070
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60071
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60072
- */
60073
- matchLabels?: pulumi.Input<{
60074
- [key: string]: pulumi.Input<string>;
60075
- } | undefined>;
60076
- }
60077
- /**
60078
- * A label selector requirement is a selector that contains values, a key, and an operator that
60079
- * relates the key and values.
60080
- */
60081
- interface CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorMatchExpressions {
60082
- /**
60083
- * key is the label key that the selector applies to.
60084
- */
60085
- key: pulumi.Input<string>;
60086
- /**
60087
- * operator represents a key's relationship to a set of values.
60088
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60089
- */
60090
- operator: pulumi.Input<string>;
60091
- /**
60092
- * values is an array of string values. If the operator is In or NotIn,
60093
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60094
- * the values array must be empty. This array is replaced during a strategic
60095
- * merge patch.
60096
- */
60097
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60098
- }
60099
- /**
60100
- * A label selector requirement is a selector that contains values, a key, and an operator that
60101
- * relates the key and values.
60102
- */
60103
- interface CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorMatchExpressionsPatch {
60104
- /**
60105
- * key is the label key that the selector applies to.
60106
- */
60107
- key?: pulumi.Input<string | undefined>;
60108
- /**
60109
- * operator represents a key's relationship to a set of values.
60110
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60111
- */
60112
- operator?: pulumi.Input<string | undefined>;
60113
- /**
60114
- * values is an array of string values. If the operator is In or NotIn,
60115
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60116
- * the values array must be empty. This array is replaced during a strategic
60117
- * merge patch.
60118
- */
60119
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60120
- }
60121
- /**
60122
- * This is a label selector which selects the node that should act as
60123
- * egress gateway for the given policy.
60124
- * In case multiple nodes are selected, only the first one in the
60125
- * lexical ordering over the node names will be used.
60126
- * This field follows standard label selector semantics.
60127
- */
60128
- interface CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorPatch {
60129
- /**
60130
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60131
- */
60132
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorMatchExpressionsPatch>[] | undefined>;
60133
- /**
60134
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60135
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60136
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60137
- */
60138
- matchLabels?: pulumi.Input<{
60139
- [key: string]: pulumi.Input<string>;
60140
- } | undefined>;
60141
- }
60142
- /**
60143
- * EgressGateway identifies the node that should act as egress gateway for a
60144
- * given egress Gateway policy. In addition to that it also specifies the
60145
- * configuration of said node (which egress IP or network interface should be
60146
- * used to SNAT traffic).
60147
- */
60148
- interface CiliumEgressGatewayPolicySpecEgressGatewaysPatch {
60149
- /**
60150
- * EgressIP is the source IP address that the egress traffic is SNATed
60151
- * with.
60152
- *
60153
- * Example:
60154
- * When set to "192.168.1.100", matching egress traffic will be
60155
- * redirected to the node matching the NodeSelector field and SNATed
60156
- * with IP address 192.168.1.100.
60157
- *
60158
- * When set to "2001:db8::1", matching egress traffic will be
60159
- * redirected to the node matching the NodeSelector field and SNATed
60160
- * with IPv6 address 2001:db8::1.
60161
- *
60162
- * When none of the Interface or EgressIP fields is specified, the
60163
- * policy will use the first IPv4 assigned to the interface with the
60164
- * default route.
60165
- */
60166
- egressIP?: pulumi.Input<string | undefined>;
60167
- /**
60168
- * Interface is the network interface to which the egress IP address
60169
- * that the traffic is SNATed with is assigned.
60170
- *
60171
- * Example:
60172
- * When set to "eth1", matching egress traffic will be redirected to the
60173
- * node matching the NodeSelector field and SNATed with the first IPv4
60174
- * address assigned to the eth1 interface.
60175
- *
60176
- * When none of the Interface or EgressIP fields is specified, the
60177
- * policy will use the first IPv4 assigned to the interface with the
60178
- * default route.
60179
- */
60180
- interface?: pulumi.Input<string | undefined>;
60181
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorPatch | undefined>;
60182
- }
60183
- interface CiliumEgressGatewayPolicySpecPatch {
60184
- /**
60185
- * DestinationCIDRs is a list of destination CIDRs for destination IP addresses.
60186
- * If a destination IP matches any one CIDR, it will be selected.
60187
- */
60188
- destinationCIDRs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60189
- egressGateway?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayPatch | undefined>;
60190
- /**
60191
- * Optional list of gateway nodes responsible for SNATing traffic.
60192
- * If this field has any entries the contents of the egressGateway field will be ignored.
60193
- * In case multiple nodes are a match for the given set of labels in each entry,
60194
- * the first node in lexical ordering based on their name will be selected for each entry.
60195
- */
60196
- egressGateways?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysPatch>[] | undefined>;
60197
- /**
60198
- * ExcludedCIDRs is a list of destination CIDRs that will be excluded
60199
- * from the egress gateway redirection and SNAT logic.
60200
- * Should be a subset of destinationCIDRs otherwise it will not have any
60201
- * effect.
60202
- */
60203
- excludedCIDRs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60204
- /**
60205
- * Egress represents a list of rules by which egress traffic is
60206
- * filtered from the source pods.
60207
- */
60208
- selectors?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsPatch>[] | undefined>;
60209
- }
60210
- interface CiliumEgressGatewayPolicySpecSelectors {
60211
- namespaceSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNamespaceSelector | undefined>;
60212
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNodeSelector | undefined>;
60213
- podSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsPodSelector | undefined>;
60214
- }
60215
- /**
60216
- * Selects Namespaces using cluster-scoped labels. This field follows standard label
60217
- * selector semantics; if present but empty, it selects all namespaces.
60218
- */
60219
- interface CiliumEgressGatewayPolicySpecSelectorsNamespaceSelector {
60220
- /**
60221
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60222
- */
60223
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNamespaceSelectorMatchExpressions>[] | undefined>;
60224
- /**
60225
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60226
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60227
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60228
- */
60229
- matchLabels?: pulumi.Input<{
60230
- [key: string]: pulumi.Input<string>;
60231
- } | undefined>;
60232
- }
60233
- /**
60234
- * A label selector requirement is a selector that contains values, a key, and an operator that
60235
- * relates the key and values.
60236
- */
60237
- interface CiliumEgressGatewayPolicySpecSelectorsNamespaceSelectorMatchExpressions {
60238
- /**
60239
- * key is the label key that the selector applies to.
60240
- */
60241
- key: pulumi.Input<string>;
60242
- /**
60243
- * operator represents a key's relationship to a set of values.
60244
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60245
- */
60246
- operator: pulumi.Input<string>;
60247
- /**
60248
- * values is an array of string values. If the operator is In or NotIn,
60249
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60250
- * the values array must be empty. This array is replaced during a strategic
60251
- * merge patch.
60252
- */
60253
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60254
- }
60255
- /**
60256
- * A label selector requirement is a selector that contains values, a key, and an operator that
60257
- * relates the key and values.
60258
- */
60259
- interface CiliumEgressGatewayPolicySpecSelectorsNamespaceSelectorMatchExpressionsPatch {
60260
- /**
60261
- * key is the label key that the selector applies to.
60262
- */
60263
- key?: pulumi.Input<string | undefined>;
60264
- /**
60265
- * operator represents a key's relationship to a set of values.
60266
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60267
- */
60268
- operator?: pulumi.Input<string | undefined>;
60269
- /**
60270
- * values is an array of string values. If the operator is In or NotIn,
60271
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60272
- * the values array must be empty. This array is replaced during a strategic
60273
- * merge patch.
60274
- */
60275
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60276
- }
60277
- /**
60278
- * Selects Namespaces using cluster-scoped labels. This field follows standard label
60279
- * selector semantics; if present but empty, it selects all namespaces.
60280
- */
60281
- interface CiliumEgressGatewayPolicySpecSelectorsNamespaceSelectorPatch {
60282
- /**
60283
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60284
- */
60285
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNamespaceSelectorMatchExpressionsPatch>[] | undefined>;
60286
- /**
60287
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60288
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60289
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60290
- */
60291
- matchLabels?: pulumi.Input<{
60292
- [key: string]: pulumi.Input<string>;
60293
- } | undefined>;
60294
- }
60295
- /**
60296
- * This is a label selector which selects Pods by Node. This field follows standard label
60297
- * selector semantics; if present but empty, it selects all nodes.
60298
- */
60299
- interface CiliumEgressGatewayPolicySpecSelectorsNodeSelector {
60300
- /**
60301
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60302
- */
60303
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNodeSelectorMatchExpressions>[] | undefined>;
60304
- /**
60305
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60306
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60307
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60308
- */
60309
- matchLabels?: pulumi.Input<{
60310
- [key: string]: pulumi.Input<string>;
60311
- } | undefined>;
60312
- }
60313
- /**
60314
- * A label selector requirement is a selector that contains values, a key, and an operator that
60315
- * relates the key and values.
60316
- */
60317
- interface CiliumEgressGatewayPolicySpecSelectorsNodeSelectorMatchExpressions {
60318
- /**
60319
- * key is the label key that the selector applies to.
60320
- */
60321
- key: pulumi.Input<string>;
60322
- /**
60323
- * operator represents a key's relationship to a set of values.
60324
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60325
- */
60326
- operator: pulumi.Input<string>;
60327
- /**
60328
- * values is an array of string values. If the operator is In or NotIn,
60329
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60330
- * the values array must be empty. This array is replaced during a strategic
60331
- * merge patch.
60332
- */
60333
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60334
- }
60335
- /**
60336
- * A label selector requirement is a selector that contains values, a key, and an operator that
60337
- * relates the key and values.
60338
- */
60339
- interface CiliumEgressGatewayPolicySpecSelectorsNodeSelectorMatchExpressionsPatch {
60340
- /**
60341
- * key is the label key that the selector applies to.
60342
- */
60343
- key?: pulumi.Input<string | undefined>;
60344
- /**
60345
- * operator represents a key's relationship to a set of values.
60346
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60347
- */
60348
- operator?: pulumi.Input<string | undefined>;
60349
- /**
60350
- * values is an array of string values. If the operator is In or NotIn,
60351
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60352
- * the values array must be empty. This array is replaced during a strategic
60353
- * merge patch.
60354
- */
60355
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60356
- }
60357
- /**
60358
- * This is a label selector which selects Pods by Node. This field follows standard label
60359
- * selector semantics; if present but empty, it selects all nodes.
60360
- */
60361
- interface CiliumEgressGatewayPolicySpecSelectorsNodeSelectorPatch {
60362
- /**
60363
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60364
- */
60365
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNodeSelectorMatchExpressionsPatch>[] | undefined>;
60366
- /**
60367
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60368
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60369
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60370
- */
60371
- matchLabels?: pulumi.Input<{
60372
- [key: string]: pulumi.Input<string>;
60373
- } | undefined>;
60374
- }
60375
- interface CiliumEgressGatewayPolicySpecSelectorsPatch {
60376
- namespaceSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNamespaceSelectorPatch | undefined>;
60377
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsNodeSelectorPatch | undefined>;
60378
- podSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsPodSelectorPatch | undefined>;
60379
- }
60380
- /**
60381
- * This is a label selector which selects Pods. This field follows standard label
60382
- * selector semantics; if present but empty, it selects all pods.
60383
- */
60384
- interface CiliumEgressGatewayPolicySpecSelectorsPodSelector {
60385
- /**
60386
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60387
- */
60388
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsPodSelectorMatchExpressions>[] | undefined>;
60389
- /**
60390
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60391
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60392
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60393
- */
60394
- matchLabels?: pulumi.Input<{
60395
- [key: string]: pulumi.Input<string>;
60396
- } | undefined>;
60397
- }
60398
- /**
60399
- * A label selector requirement is a selector that contains values, a key, and an operator that
60400
- * relates the key and values.
60401
- */
60402
- interface CiliumEgressGatewayPolicySpecSelectorsPodSelectorMatchExpressions {
60403
- /**
60404
- * key is the label key that the selector applies to.
60405
- */
60406
- key: pulumi.Input<string>;
60407
- /**
60408
- * operator represents a key's relationship to a set of values.
60409
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60410
- */
60411
- operator: pulumi.Input<string>;
60412
- /**
60413
- * values is an array of string values. If the operator is In or NotIn,
60414
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60415
- * the values array must be empty. This array is replaced during a strategic
60416
- * merge patch.
60417
- */
60418
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60419
- }
60420
- /**
60421
- * A label selector requirement is a selector that contains values, a key, and an operator that
60422
- * relates the key and values.
60423
- */
60424
- interface CiliumEgressGatewayPolicySpecSelectorsPodSelectorMatchExpressionsPatch {
60425
- /**
60426
- * key is the label key that the selector applies to.
60427
- */
60428
- key?: pulumi.Input<string | undefined>;
60429
- /**
60430
- * operator represents a key's relationship to a set of values.
60431
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60432
- */
60433
- operator?: pulumi.Input<string | undefined>;
60434
- /**
60435
- * values is an array of string values. If the operator is In or NotIn,
60436
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60437
- * the values array must be empty. This array is replaced during a strategic
60438
- * merge patch.
60439
- */
60440
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60441
- }
60442
- /**
60443
- * This is a label selector which selects Pods. This field follows standard label
60444
- * selector semantics; if present but empty, it selects all pods.
60445
- */
60446
- interface CiliumEgressGatewayPolicySpecSelectorsPodSelectorPatch {
60447
- /**
60448
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60449
- */
60450
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectorsPodSelectorMatchExpressionsPatch>[] | undefined>;
60451
- /**
60452
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60453
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60454
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60455
- */
60456
- matchLabels?: pulumi.Input<{
60457
- [key: string]: pulumi.Input<string>;
60458
- } | undefined>;
60459
- }
60460
- interface CiliumEnvoyConfig {
60461
- /**
60462
- * APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
60463
- */
60464
- apiVersion?: pulumi.Input<"cilium.io/v2" | undefined>;
60465
- /**
60466
- * Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
60467
- */
60468
- kind?: pulumi.Input<"CiliumEnvoyConfig" | undefined>;
60469
- /**
60470
- * Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
60471
- */
60472
- metadata: pulumi.Input<pulumiKubernetes.types.input.meta.v1.ObjectMeta>;
60473
- spec?: pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpec | undefined>;
60474
- }
60475
- interface CiliumEnvoyConfigSpec {
60476
- /**
60477
- * BackendServices specifies Kubernetes services whose backends
60478
- * are automatically synced to Envoy using EDS. Traffic for these
60479
- * services is not forwarded to an Envoy listener. This allows an
60480
- * Envoy listener load balance traffic to these backends while
60481
- * normal Cilium service load balancing takes care of balancing
60482
- * traffic for these services at the same time.
60483
- */
60484
- backendServices?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecBackendServices>[] | undefined>;
60485
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecNodeSelector | undefined>;
60486
- /**
60487
- * Envoy xDS resources, a list of the following Envoy resource types:
60488
- * type.googleapis.com/envoy.config.listener.v3.Listener,
60489
- * type.googleapis.com/envoy.config.route.v3.RouteConfiguration,
60490
- * type.googleapis.com/envoy.config.cluster.v3.Cluster,
60491
- * type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and
60492
- * type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret.
60493
- */
60494
- resources: pulumi.Input<pulumi.Input<{
60495
- [key: string]: any;
60496
- }>[]>;
60497
- /**
60498
- * Services specifies Kubernetes services for which traffic is
60499
- * forwarded to an Envoy listener for L7 load balancing. Backends
60500
- * of these services are automatically synced to Envoy usign EDS.
60501
- */
60502
- services?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecServices>[] | undefined>;
60503
- }
60504
- interface CiliumEnvoyConfigSpecBackendServices {
60505
- /**
60506
- * Name is the name of a destination Kubernetes service that identifies traffic
60507
- * to be redirected.
60508
- */
60509
- name: pulumi.Input<string>;
60510
- /**
60511
- * Namespace is the Kubernetes service namespace.
60512
- * In CiliumEnvoyConfig namespace defaults to the namespace of the CEC,
60513
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
60514
- */
60515
- namespace?: pulumi.Input<string | undefined>;
60516
- /**
60517
- * Ports is a set of port numbers, which can be used for filtering in case of underlying
60518
- * is exposing multiple port numbers.
60519
- */
60520
- number?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60521
- }
60522
- interface CiliumEnvoyConfigSpecBackendServicesPatch {
60523
- /**
60524
- * Name is the name of a destination Kubernetes service that identifies traffic
60525
- * to be redirected.
60526
- */
60527
- name?: pulumi.Input<string | undefined>;
60528
- /**
60529
- * Namespace is the Kubernetes service namespace.
60530
- * In CiliumEnvoyConfig namespace defaults to the namespace of the CEC,
60531
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
60532
- */
60533
- namespace?: pulumi.Input<string | undefined>;
60534
- /**
60535
- * Ports is a set of port numbers, which can be used for filtering in case of underlying
60536
- * is exposing multiple port numbers.
60537
- */
60538
- number?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60539
- }
60540
- /**
60541
- * NodeSelector is a label selector that determines to which nodes
60542
- * this configuration applies.
60543
- * If nil, then this config applies to all nodes.
60544
- */
60545
- interface CiliumEnvoyConfigSpecNodeSelector {
60546
- /**
60547
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60548
- */
60549
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecNodeSelectorMatchExpressions>[] | undefined>;
60550
- /**
60551
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60552
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60553
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60554
- */
60555
- matchLabels?: pulumi.Input<{
60556
- [key: string]: pulumi.Input<string>;
60557
- } | undefined>;
60558
- }
60559
- /**
60560
- * A label selector requirement is a selector that contains values, a key, and an operator that
60561
- * relates the key and values.
60562
- */
60563
- interface CiliumEnvoyConfigSpecNodeSelectorMatchExpressions {
60564
- /**
60565
- * key is the label key that the selector applies to.
60566
- */
60567
- key: pulumi.Input<string>;
60568
- /**
60569
- * operator represents a key's relationship to a set of values.
60570
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60571
- */
60572
- operator: pulumi.Input<string>;
60573
- /**
60574
- * values is an array of string values. If the operator is In or NotIn,
60575
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60576
- * the values array must be empty. This array is replaced during a strategic
60577
- * merge patch.
60578
- */
60579
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60580
- }
60581
- /**
60582
- * A label selector requirement is a selector that contains values, a key, and an operator that
60583
- * relates the key and values.
60584
- */
60585
- interface CiliumEnvoyConfigSpecNodeSelectorMatchExpressionsPatch {
60586
- /**
60587
- * key is the label key that the selector applies to.
60588
- */
60589
- key?: pulumi.Input<string | undefined>;
60590
- /**
60591
- * operator represents a key's relationship to a set of values.
60592
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60593
- */
60594
- operator?: pulumi.Input<string | undefined>;
60595
- /**
60596
- * values is an array of string values. If the operator is In or NotIn,
60597
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60598
- * the values array must be empty. This array is replaced during a strategic
60599
- * merge patch.
60600
- */
60601
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60602
- }
60603
- /**
60604
- * NodeSelector is a label selector that determines to which nodes
60605
- * this configuration applies.
60606
- * If nil, then this config applies to all nodes.
60607
- */
60608
- interface CiliumEnvoyConfigSpecNodeSelectorPatch {
60609
- /**
60610
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60611
- */
60612
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecNodeSelectorMatchExpressionsPatch>[] | undefined>;
60613
- /**
60614
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60615
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60616
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60617
- */
60618
- matchLabels?: pulumi.Input<{
60619
- [key: string]: pulumi.Input<string>;
60620
- } | undefined>;
60621
- }
60622
- interface CiliumEnvoyConfigSpecPatch {
60623
- /**
60624
- * BackendServices specifies Kubernetes services whose backends
60625
- * are automatically synced to Envoy using EDS. Traffic for these
60626
- * services is not forwarded to an Envoy listener. This allows an
60627
- * Envoy listener load balance traffic to these backends while
60628
- * normal Cilium service load balancing takes care of balancing
60629
- * traffic for these services at the same time.
60630
- */
60631
- backendServices?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecBackendServicesPatch>[] | undefined>;
60632
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecNodeSelectorPatch | undefined>;
60633
- /**
60634
- * Envoy xDS resources, a list of the following Envoy resource types:
60635
- * type.googleapis.com/envoy.config.listener.v3.Listener,
60636
- * type.googleapis.com/envoy.config.route.v3.RouteConfiguration,
60637
- * type.googleapis.com/envoy.config.cluster.v3.Cluster,
60638
- * type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and
60639
- * type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret.
60640
- */
60641
- resources?: pulumi.Input<pulumi.Input<{
60642
- [key: string]: any;
60643
- }>[] | undefined>;
60644
- /**
60645
- * Services specifies Kubernetes services for which traffic is
60646
- * forwarded to an Envoy listener for L7 load balancing. Backends
60647
- * of these services are automatically synced to Envoy usign EDS.
60648
- */
60649
- services?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEnvoyConfigSpecServicesPatch>[] | undefined>;
60650
- }
60651
- interface CiliumEnvoyConfigSpecServices {
60652
- /**
60653
- * Listener specifies the name of the Envoy listener the
60654
- * service traffic is redirected to. The listener must be
60655
- * specified in the Envoy 'resources' of the same
60656
- * CiliumEnvoyConfig.
60657
- *
60658
- * If omitted, the first listener specified in 'resources' is
60659
- * used.
60660
- */
60661
- listener?: pulumi.Input<string | undefined>;
60662
- /**
60663
- * Name is the name of a destination Kubernetes service that identifies traffic
60664
- * to be redirected.
60665
- */
60666
- name: pulumi.Input<string>;
60667
- /**
60668
- * Namespace is the Kubernetes service namespace.
60669
- * In CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC,
60670
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
60671
- */
60672
- namespace?: pulumi.Input<string | undefined>;
60673
- /**
60674
- * Ports is a set of service's frontend ports that should be redirected to the Envoy
60675
- * listener. By default all frontend ports of the service are redirected.
60676
- */
60677
- ports?: pulumi.Input<pulumi.Input<number>[] | undefined>;
60678
- }
60679
- interface CiliumEnvoyConfigSpecServicesPatch {
60680
- /**
60681
- * Listener specifies the name of the Envoy listener the
60682
- * service traffic is redirected to. The listener must be
60683
- * specified in the Envoy 'resources' of the same
60684
- * CiliumEnvoyConfig.
60685
- *
60686
- * If omitted, the first listener specified in 'resources' is
60687
- * used.
60688
- */
60689
- listener?: pulumi.Input<string | undefined>;
60690
- /**
60691
- * Name is the name of a destination Kubernetes service that identifies traffic
60692
- * to be redirected.
60693
- */
60694
- name?: pulumi.Input<string | undefined>;
60695
- /**
60696
- * Namespace is the Kubernetes service namespace.
60697
- * In CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC,
60698
- * In CiliumClusterwideEnvoyConfig namespace defaults to "default".
60699
- */
60700
- namespace?: pulumi.Input<string | undefined>;
60701
- /**
60702
- * Ports is a set of service's frontend ports that should be redirected to the Envoy
60703
- * listener. By default all frontend ports of the service are redirected.
60704
- */
60705
- ports?: pulumi.Input<pulumi.Input<number>[] | undefined>;
60706
- }
60707
- /**
60708
- * CiliumLoadBalancerIPPool is a Kubernetes third-party resource which
60709
- * is used to defined pools of IPs which the operator can use to allocate
60710
- * and advertise IPs for Services of type LoadBalancer.
60711
- */
60712
- interface CiliumLoadBalancerIPPool {
60713
- /**
60714
- * APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
60715
- */
60716
- apiVersion?: pulumi.Input<"cilium.io/v2" | undefined>;
60717
- /**
60718
- * Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
60719
- */
60720
- kind?: pulumi.Input<"CiliumLoadBalancerIPPool" | undefined>;
60721
- /**
60722
- * Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
60723
- */
60724
- metadata: pulumi.Input<pulumiKubernetes.types.input.meta.v1.ObjectMeta>;
60725
- spec: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpec>;
60726
- status?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolStatus | undefined>;
60727
- }
60728
- /**
60729
- * Spec is a human readable description for a BGP load balancer
60730
- * ip pool.
60731
- */
60732
- interface CiliumLoadBalancerIPPoolSpec {
60733
- /**
60734
- * AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable.
60735
- * If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since
60736
- * reserving the first and last IPs would make the CIDRs unusable.
60737
- */
60738
- allowFirstLastIPs?: pulumi.Input<string | undefined>;
60739
- /**
60740
- * Blocks is a list of CIDRs comprising this IP Pool
60741
- */
60742
- blocks?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecBlocks>[] | undefined>;
60743
- /**
60744
- * Disabled, if set to true means that no new IPs will be allocated from this pool.
60745
- * Existing allocations will not be removed from services.
60746
- */
60747
- disabled?: pulumi.Input<boolean | undefined>;
60748
- serviceSelector?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelector | undefined>;
60749
- }
60750
- /**
60751
- * CiliumLoadBalancerIPPoolIPBlock describes a single IP block.
60752
- */
60753
- interface CiliumLoadBalancerIPPoolSpecBlocks {
60754
- cidr?: pulumi.Input<string | undefined>;
60755
- start?: pulumi.Input<string | undefined>;
60756
- stop?: pulumi.Input<string | undefined>;
60757
- }
60758
- /**
60759
- * CiliumLoadBalancerIPPoolIPBlock describes a single IP block.
60760
- */
60761
- interface CiliumLoadBalancerIPPoolSpecBlocksPatch {
60762
- cidr?: pulumi.Input<string | undefined>;
60763
- start?: pulumi.Input<string | undefined>;
60764
- stop?: pulumi.Input<string | undefined>;
60765
- }
60766
- /**
60767
- * Spec is a human readable description for a BGP load balancer
60768
- * ip pool.
60769
- */
60770
- interface CiliumLoadBalancerIPPoolSpecPatch {
60771
- /**
60772
- * AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable.
60773
- * If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since
60774
- * reserving the first and last IPs would make the CIDRs unusable.
60775
- */
60776
- allowFirstLastIPs?: pulumi.Input<string | undefined>;
60777
- /**
60778
- * Blocks is a list of CIDRs comprising this IP Pool
60779
- */
60780
- blocks?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecBlocksPatch>[] | undefined>;
60781
- /**
60782
- * Disabled, if set to true means that no new IPs will be allocated from this pool.
60783
- * Existing allocations will not be removed from services.
60784
- */
60785
- disabled?: pulumi.Input<boolean | undefined>;
60786
- serviceSelector?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorPatch | undefined>;
60787
- }
60788
- /**
60789
- * ServiceSelector selects a set of services which are eligible to receive IPs from this
60790
- */
60791
- interface CiliumLoadBalancerIPPoolSpecServiceSelector {
60792
- /**
60793
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60794
- */
60795
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressions>[] | undefined>;
60796
- /**
60797
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60798
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60799
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60800
- */
60801
- matchLabels?: pulumi.Input<{
60802
- [key: string]: pulumi.Input<string>;
60803
- } | undefined>;
60804
- }
60805
- /**
60806
- * A label selector requirement is a selector that contains values, a key, and an operator that
60807
- * relates the key and values.
60808
- */
60809
- interface CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressions {
60810
- /**
60811
- * key is the label key that the selector applies to.
60812
- */
60813
- key: pulumi.Input<string>;
60814
- /**
60815
- * operator represents a key's relationship to a set of values.
60816
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60817
- */
60818
- operator: pulumi.Input<string>;
60819
- /**
60820
- * values is an array of string values. If the operator is In or NotIn,
60821
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60822
- * the values array must be empty. This array is replaced during a strategic
60823
- * merge patch.
60824
- */
60825
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60826
- }
60827
- /**
60828
- * A label selector requirement is a selector that contains values, a key, and an operator that
60829
- * relates the key and values.
60830
- */
60831
- interface CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressionsPatch {
60832
- /**
60833
- * key is the label key that the selector applies to.
60834
- */
60835
- key?: pulumi.Input<string | undefined>;
60836
- /**
60837
- * operator represents a key's relationship to a set of values.
60838
- * Valid operators are In, NotIn, Exists and DoesNotExist.
60839
- */
60840
- operator?: pulumi.Input<string | undefined>;
60841
- /**
60842
- * values is an array of string values. If the operator is In or NotIn,
60843
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
60844
- * the values array must be empty. This array is replaced during a strategic
60845
- * merge patch.
60846
- */
60847
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
60848
- }
60849
- /**
60850
- * ServiceSelector selects a set of services which are eligible to receive IPs from this
60851
- */
60852
- interface CiliumLoadBalancerIPPoolSpecServiceSelectorPatch {
60853
- /**
60854
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60855
- */
60856
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressionsPatch>[] | undefined>;
60857
- /**
60858
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60859
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
60860
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
60861
- */
60862
- matchLabels?: pulumi.Input<{
60863
- [key: string]: pulumi.Input<string>;
60864
- } | undefined>;
60865
- }
60866
- /**
60867
- * Status is the status of the IP Pool.
60868
- *
60869
- * It might be possible for users to define overlapping IP Pools, we can't validate or enforce non-overlapping pools
60870
- * during object creation. The Cilium operator will do this validation and update the status to reflect the ability
60871
- * to allocate IPs from this pool.
60872
- */
60873
- interface CiliumLoadBalancerIPPoolStatus {
60874
- /**
60875
- * Current service state
60876
- */
60877
- conditions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolStatusConditions>[] | undefined>;
60878
- }
60879
- /**
60880
- * Condition contains details for one aspect of the current state of this API Resource.
60881
- */
60882
- interface CiliumLoadBalancerIPPoolStatusConditions {
60883
- /**
60884
- * lastTransitionTime is the last time the condition transitioned from one status to another.
60885
- * This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
60886
- */
60887
- lastTransitionTime: pulumi.Input<string>;
60888
- /**
60889
- * message is a human readable message indicating details about the transition.
60890
- * This may be an empty string.
60891
- */
60892
- message: pulumi.Input<string>;
60893
- /**
60894
- * observedGeneration represents the .metadata.generation that the condition was set based upon.
60895
- * For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
60896
- * with respect to the current state of the instance.
60897
- */
60898
- observedGeneration?: pulumi.Input<number | undefined>;
59751
+ observedGeneration?: pulumi.Input<number | undefined>;
60899
59752
  /**
60900
59753
  * reason contains a programmatic identifier indicating the reason for the condition's last transition.
60901
59754
  * Producers of specific condition types may define expected values and meanings for this field,
@@ -60913,439 +59766,6 @@ export declare namespace cilium {
60913
59766
  */
60914
59767
  type: pulumi.Input<string>;
60915
59768
  }
60916
- /**
60917
- * CiliumLocalRedirectPolicy is a Kubernetes Custom Resource that contains a
60918
- * specification to redirect traffic locally within a node.
60919
- */
60920
- interface CiliumLocalRedirectPolicy {
60921
- /**
60922
- * APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
60923
- */
60924
- apiVersion?: pulumi.Input<"cilium.io/v2" | undefined>;
60925
- /**
60926
- * Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
60927
- */
60928
- kind?: pulumi.Input<"CiliumLocalRedirectPolicy" | undefined>;
60929
- /**
60930
- * Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
60931
- */
60932
- metadata: pulumi.Input<pulumiKubernetes.types.input.meta.v1.ObjectMeta>;
60933
- spec?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpec | undefined>;
60934
- status?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicyStatus | undefined>;
60935
- }
60936
- /**
60937
- * Spec is the desired behavior of the local redirect policy.
60938
- */
60939
- interface CiliumLocalRedirectPolicySpec {
60940
- /**
60941
- * Description can be used by the creator of the policy to describe the
60942
- * purpose of this policy.
60943
- */
60944
- description?: pulumi.Input<string | undefined>;
60945
- redirectBackend: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackend>;
60946
- redirectFrontend: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontend>;
60947
- /**
60948
- * SkipRedirectFromBackend indicates whether traffic matching RedirectFrontend
60949
- * from RedirectBackend should skip redirection, and hence the traffic will
60950
- * be forwarded as-is.
60951
- *
60952
- * The default is false which means traffic matching RedirectFrontend will
60953
- * get redirected from all pods, including the RedirectBackend(s).
60954
- *
60955
- * Example: If RedirectFrontend is configured to "169.254.169.254:80" as the traffic
60956
- * that needs to be redirected to backends selected by RedirectBackend, if
60957
- * SkipRedirectFromBackend is set to true, traffic going to "169.254.169.254:80"
60958
- * from such backends will not be redirected back to the backends. Instead,
60959
- * the matched traffic from the backends will be forwarded to the original
60960
- * destination "169.254.169.254:80".
60961
- */
60962
- skipRedirectFromBackend?: pulumi.Input<boolean | undefined>;
60963
- }
60964
- /**
60965
- * Spec is the desired behavior of the local redirect policy.
60966
- */
60967
- interface CiliumLocalRedirectPolicySpecPatch {
60968
- /**
60969
- * Description can be used by the creator of the policy to describe the
60970
- * purpose of this policy.
60971
- */
60972
- description?: pulumi.Input<string | undefined>;
60973
- redirectBackend?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendPatch | undefined>;
60974
- redirectFrontend?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendPatch | undefined>;
60975
- /**
60976
- * SkipRedirectFromBackend indicates whether traffic matching RedirectFrontend
60977
- * from RedirectBackend should skip redirection, and hence the traffic will
60978
- * be forwarded as-is.
60979
- *
60980
- * The default is false which means traffic matching RedirectFrontend will
60981
- * get redirected from all pods, including the RedirectBackend(s).
60982
- *
60983
- * Example: If RedirectFrontend is configured to "169.254.169.254:80" as the traffic
60984
- * that needs to be redirected to backends selected by RedirectBackend, if
60985
- * SkipRedirectFromBackend is set to true, traffic going to "169.254.169.254:80"
60986
- * from such backends will not be redirected back to the backends. Instead,
60987
- * the matched traffic from the backends will be forwarded to the original
60988
- * destination "169.254.169.254:80".
60989
- */
60990
- skipRedirectFromBackend?: pulumi.Input<boolean | undefined>;
60991
- }
60992
- /**
60993
- * RedirectBackend specifies backend configuration to redirect traffic to.
60994
- * It can not be empty.
60995
- */
60996
- interface CiliumLocalRedirectPolicySpecRedirectBackend {
60997
- localEndpointSelector: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelector>;
60998
- /**
60999
- * ToPorts is a list of L4 ports with protocol of node local pod(s) where traffic
61000
- * is redirected to.
61001
- * When multiple ports are specified, the ports must be named.
61002
- */
61003
- toPorts: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendToPorts>[]>;
61004
- }
61005
- /**
61006
- * LocalEndpointSelector selects node local pod(s) where traffic is redirected to.
61007
- */
61008
- interface CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelector {
61009
- /**
61010
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
61011
- */
61012
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelectorMatchExpressions>[] | undefined>;
61013
- /**
61014
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
61015
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
61016
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
61017
- */
61018
- matchLabels?: pulumi.Input<{
61019
- [key: string]: pulumi.Input<string>;
61020
- } | undefined>;
61021
- }
61022
- /**
61023
- * A label selector requirement is a selector that contains values, a key, and an operator that
61024
- * relates the key and values.
61025
- */
61026
- interface CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelectorMatchExpressions {
61027
- /**
61028
- * key is the label key that the selector applies to.
61029
- */
61030
- key: pulumi.Input<string>;
61031
- /**
61032
- * operator represents a key's relationship to a set of values.
61033
- * Valid operators are In, NotIn, Exists and DoesNotExist.
61034
- */
61035
- operator: pulumi.Input<string>;
61036
- /**
61037
- * values is an array of string values. If the operator is In or NotIn,
61038
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
61039
- * the values array must be empty. This array is replaced during a strategic
61040
- * merge patch.
61041
- */
61042
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
61043
- }
61044
- /**
61045
- * A label selector requirement is a selector that contains values, a key, and an operator that
61046
- * relates the key and values.
61047
- */
61048
- interface CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelectorMatchExpressionsPatch {
61049
- /**
61050
- * key is the label key that the selector applies to.
61051
- */
61052
- key?: pulumi.Input<string | undefined>;
61053
- /**
61054
- * operator represents a key's relationship to a set of values.
61055
- * Valid operators are In, NotIn, Exists and DoesNotExist.
61056
- */
61057
- operator?: pulumi.Input<string | undefined>;
61058
- /**
61059
- * values is an array of string values. If the operator is In or NotIn,
61060
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
61061
- * the values array must be empty. This array is replaced during a strategic
61062
- * merge patch.
61063
- */
61064
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
61065
- }
61066
- /**
61067
- * LocalEndpointSelector selects node local pod(s) where traffic is redirected to.
61068
- */
61069
- interface CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelectorPatch {
61070
- /**
61071
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
61072
- */
61073
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelectorMatchExpressionsPatch>[] | undefined>;
61074
- /**
61075
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
61076
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
61077
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
61078
- */
61079
- matchLabels?: pulumi.Input<{
61080
- [key: string]: pulumi.Input<string>;
61081
- } | undefined>;
61082
- }
61083
- /**
61084
- * RedirectBackend specifies backend configuration to redirect traffic to.
61085
- * It can not be empty.
61086
- */
61087
- interface CiliumLocalRedirectPolicySpecRedirectBackendPatch {
61088
- localEndpointSelector?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendLocalEndpointSelectorPatch | undefined>;
61089
- /**
61090
- * ToPorts is a list of L4 ports with protocol of node local pod(s) where traffic
61091
- * is redirected to.
61092
- * When multiple ports are specified, the ports must be named.
61093
- */
61094
- toPorts?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectBackendToPortsPatch>[] | undefined>;
61095
- }
61096
- /**
61097
- * PortInfo specifies L4 port number and name along with the transport protocol
61098
- */
61099
- interface CiliumLocalRedirectPolicySpecRedirectBackendToPorts {
61100
- /**
61101
- * Name is a port name, which must contain at least one [a-z],
61102
- * and may also contain [0-9] and '-' anywhere except adjacent to another
61103
- * '-' or in the beginning or the end.
61104
- */
61105
- name?: pulumi.Input<string | undefined>;
61106
- /**
61107
- * Port is an L4 port number. The string will be strictly parsed as a single uint16.
61108
- */
61109
- port: pulumi.Input<string>;
61110
- /**
61111
- * Protocol is the L4 protocol.
61112
- * Accepted values: "TCP", "UDP"
61113
- */
61114
- protocol: pulumi.Input<string>;
61115
- }
61116
- /**
61117
- * PortInfo specifies L4 port number and name along with the transport protocol
61118
- */
61119
- interface CiliumLocalRedirectPolicySpecRedirectBackendToPortsPatch {
61120
- /**
61121
- * Name is a port name, which must contain at least one [a-z],
61122
- * and may also contain [0-9] and '-' anywhere except adjacent to another
61123
- * '-' or in the beginning or the end.
61124
- */
61125
- name?: pulumi.Input<string | undefined>;
61126
- /**
61127
- * Port is an L4 port number. The string will be strictly parsed as a single uint16.
61128
- */
61129
- port?: pulumi.Input<string | undefined>;
61130
- /**
61131
- * Protocol is the L4 protocol.
61132
- * Accepted values: "TCP", "UDP"
61133
- */
61134
- protocol?: pulumi.Input<string | undefined>;
61135
- }
61136
- /**
61137
- * RedirectFrontend specifies frontend configuration to redirect traffic from.
61138
- * It can not be empty.
61139
- */
61140
- interface CiliumLocalRedirectPolicySpecRedirectFrontend {
61141
- addressMatcher?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcher | undefined>;
61142
- serviceMatcher?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcher | undefined>;
61143
- }
61144
- /**
61145
- * AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be
61146
- * redirected.
61147
- */
61148
- interface CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcher {
61149
- /**
61150
- * IP is a destination ip address for traffic to be redirected.
61151
- *
61152
- * Example:
61153
- * When it is set to "169.254.169.254", traffic destined to
61154
- * "169.254.169.254" is redirected.
61155
- */
61156
- ip: pulumi.Input<string>;
61157
- /**
61158
- * ToPorts is a list of destination L4 ports with protocol for traffic
61159
- * to be redirected.
61160
- * When multiple ports are specified, the ports must be named.
61161
- *
61162
- * Example:
61163
- * When set to Port: "53" and Protocol: UDP, traffic destined to port '53'
61164
- * with UDP protocol is redirected.
61165
- */
61166
- toPorts: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcherToPorts>[]>;
61167
- }
61168
- /**
61169
- * AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be
61170
- * redirected.
61171
- */
61172
- interface CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcherPatch {
61173
- /**
61174
- * IP is a destination ip address for traffic to be redirected.
61175
- *
61176
- * Example:
61177
- * When it is set to "169.254.169.254", traffic destined to
61178
- * "169.254.169.254" is redirected.
61179
- */
61180
- ip?: pulumi.Input<string | undefined>;
61181
- /**
61182
- * ToPorts is a list of destination L4 ports with protocol for traffic
61183
- * to be redirected.
61184
- * When multiple ports are specified, the ports must be named.
61185
- *
61186
- * Example:
61187
- * When set to Port: "53" and Protocol: UDP, traffic destined to port '53'
61188
- * with UDP protocol is redirected.
61189
- */
61190
- toPorts?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcherToPortsPatch>[] | undefined>;
61191
- }
61192
- /**
61193
- * PortInfo specifies L4 port number and name along with the transport protocol
61194
- */
61195
- interface CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcherToPorts {
61196
- /**
61197
- * Name is a port name, which must contain at least one [a-z],
61198
- * and may also contain [0-9] and '-' anywhere except adjacent to another
61199
- * '-' or in the beginning or the end.
61200
- */
61201
- name?: pulumi.Input<string | undefined>;
61202
- /**
61203
- * Port is an L4 port number. The string will be strictly parsed as a single uint16.
61204
- */
61205
- port: pulumi.Input<string>;
61206
- /**
61207
- * Protocol is the L4 protocol.
61208
- * Accepted values: "TCP", "UDP"
61209
- */
61210
- protocol: pulumi.Input<string>;
61211
- }
61212
- /**
61213
- * PortInfo specifies L4 port number and name along with the transport protocol
61214
- */
61215
- interface CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcherToPortsPatch {
61216
- /**
61217
- * Name is a port name, which must contain at least one [a-z],
61218
- * and may also contain [0-9] and '-' anywhere except adjacent to another
61219
- * '-' or in the beginning or the end.
61220
- */
61221
- name?: pulumi.Input<string | undefined>;
61222
- /**
61223
- * Port is an L4 port number. The string will be strictly parsed as a single uint16.
61224
- */
61225
- port?: pulumi.Input<string | undefined>;
61226
- /**
61227
- * Protocol is the L4 protocol.
61228
- * Accepted values: "TCP", "UDP"
61229
- */
61230
- protocol?: pulumi.Input<string | undefined>;
61231
- }
61232
- /**
61233
- * RedirectFrontend specifies frontend configuration to redirect traffic from.
61234
- * It can not be empty.
61235
- */
61236
- interface CiliumLocalRedirectPolicySpecRedirectFrontendPatch {
61237
- addressMatcher?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendAddressMatcherPatch | undefined>;
61238
- serviceMatcher?: pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcherPatch | undefined>;
61239
- }
61240
- /**
61241
- * ServiceMatcher specifies Kubernetes service and port that matches
61242
- * traffic to be redirected.
61243
- */
61244
- interface CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcher {
61245
- /**
61246
- * Namespace is the Kubernetes service namespace.
61247
- * The service namespace must match the namespace of the parent Local
61248
- * Redirect Policy. For Cluster-wide Local Redirect Policy, this
61249
- * can be any namespace.
61250
- */
61251
- namespace: pulumi.Input<string>;
61252
- /**
61253
- * Name is the name of a destination Kubernetes service that identifies traffic
61254
- * to be redirected.
61255
- * The service type needs to be ClusterIP.
61256
- *
61257
- * Example:
61258
- * When this field is populated with 'serviceName:myService', all the traffic
61259
- * destined to the cluster IP of this service at the (specified)
61260
- * service port(s) will be redirected.
61261
- */
61262
- serviceName: pulumi.Input<string>;
61263
- /**
61264
- * ToPorts is a list of destination service L4 ports with protocol for
61265
- * traffic to be redirected. If not specified, traffic for all the service
61266
- * ports will be redirected.
61267
- * When multiple ports are specified, the ports must be named.
61268
- */
61269
- toPorts?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcherToPorts>[] | undefined>;
61270
- }
61271
- /**
61272
- * ServiceMatcher specifies Kubernetes service and port that matches
61273
- * traffic to be redirected.
61274
- */
61275
- interface CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcherPatch {
61276
- /**
61277
- * Namespace is the Kubernetes service namespace.
61278
- * The service namespace must match the namespace of the parent Local
61279
- * Redirect Policy. For Cluster-wide Local Redirect Policy, this
61280
- * can be any namespace.
61281
- */
61282
- namespace?: pulumi.Input<string | undefined>;
61283
- /**
61284
- * Name is the name of a destination Kubernetes service that identifies traffic
61285
- * to be redirected.
61286
- * The service type needs to be ClusterIP.
61287
- *
61288
- * Example:
61289
- * When this field is populated with 'serviceName:myService', all the traffic
61290
- * destined to the cluster IP of this service at the (specified)
61291
- * service port(s) will be redirected.
61292
- */
61293
- serviceName?: pulumi.Input<string | undefined>;
61294
- /**
61295
- * ToPorts is a list of destination service L4 ports with protocol for
61296
- * traffic to be redirected. If not specified, traffic for all the service
61297
- * ports will be redirected.
61298
- * When multiple ports are specified, the ports must be named.
61299
- */
61300
- toPorts?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcherToPortsPatch>[] | undefined>;
61301
- }
61302
- /**
61303
- * PortInfo specifies L4 port number and name along with the transport protocol
61304
- */
61305
- interface CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcherToPorts {
61306
- /**
61307
- * Name is a port name, which must contain at least one [a-z],
61308
- * and may also contain [0-9] and '-' anywhere except adjacent to another
61309
- * '-' or in the beginning or the end.
61310
- */
61311
- name?: pulumi.Input<string | undefined>;
61312
- /**
61313
- * Port is an L4 port number. The string will be strictly parsed as a single uint16.
61314
- */
61315
- port: pulumi.Input<string>;
61316
- /**
61317
- * Protocol is the L4 protocol.
61318
- * Accepted values: "TCP", "UDP"
61319
- */
61320
- protocol: pulumi.Input<string>;
61321
- }
61322
- /**
61323
- * PortInfo specifies L4 port number and name along with the transport protocol
61324
- */
61325
- interface CiliumLocalRedirectPolicySpecRedirectFrontendServiceMatcherToPortsPatch {
61326
- /**
61327
- * Name is a port name, which must contain at least one [a-z],
61328
- * and may also contain [0-9] and '-' anywhere except adjacent to another
61329
- * '-' or in the beginning or the end.
61330
- */
61331
- name?: pulumi.Input<string | undefined>;
61332
- /**
61333
- * Port is an L4 port number. The string will be strictly parsed as a single uint16.
61334
- */
61335
- port?: pulumi.Input<string | undefined>;
61336
- /**
61337
- * Protocol is the L4 protocol.
61338
- * Accepted values: "TCP", "UDP"
61339
- */
61340
- protocol?: pulumi.Input<string | undefined>;
61341
- }
61342
- /**
61343
- * Status is the most recent status of the local redirect policy.
61344
- * It is a read-only field.
61345
- */
61346
- interface CiliumLocalRedirectPolicyStatus {
61347
- ok?: pulumi.Input<boolean | undefined>;
61348
- }
61349
59769
  /**
61350
59770
  * CiliumNetworkPolicy is a Kubernetes third-party resource with an extended
61351
59771
  * version of NetworkPolicy.