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

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 +307 -1639
  5. package/dist/types/output.d.ts +331 -1670
  6. package/dist/utilities.js +1 -1
  7. package/package.json +4 -4
  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,259 +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>;
59821
- }
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>;
59829
- /**
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.
59834
- */
59835
- egressGateways?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGateways>[] | undefined>;
59836
- /**
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.
59841
- */
59842
- excludedCIDRs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
59843
- /**
59844
- * Egress represents a list of rules by which egress traffic is
59845
- * filtered from the source pods.
59846
- */
59847
- selectors: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecSelectors>[]>;
59848
- }
59849
- /**
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.
59853
- */
59854
- interface CiliumEgressGatewayPolicySpecEgressGateway {
59855
- /**
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.
59871
- */
59872
- egressIP?: pulumi.Input<string | undefined>;
59873
- /**
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.
59885
- */
59886
- interface?: pulumi.Input<string | undefined>;
59887
- nodeSelector: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelector>;
59888
- }
59889
- /**
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.
59895
- */
59896
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelector {
59897
- /**
59898
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
59899
- */
59900
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressions>[] | undefined>;
59901
- /**
59902
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
59903
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
59904
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
59905
- */
59906
- matchLabels?: pulumi.Input<{
59907
- [key: string]: pulumi.Input<string>;
59908
- } | undefined>;
59578
+ spec: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpec>;
59579
+ status?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolStatus | undefined>;
59909
59580
  }
59910
59581
  /**
59911
- * A label selector requirement is a selector that contains values, a key, and an operator that
59912
- * relates the key and values.
59582
+ * Spec is a human readable description for a BGP load balancer
59583
+ * ip pool.
59913
59584
  */
59914
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressions {
59585
+ interface CiliumLoadBalancerIPPoolSpec {
59915
59586
  /**
59916
- * key is the label key that the selector applies to.
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.
59917
59590
  */
59918
- key: pulumi.Input<string>;
59591
+ allowFirstLastIPs?: pulumi.Input<string | undefined>;
59919
59592
  /**
59920
- * operator represents a key's relationship to a set of values.
59921
- * Valid operators are In, NotIn, Exists and DoesNotExist.
59593
+ * Blocks is a list of CIDRs comprising this IP Pool
59922
59594
  */
59923
- operator: pulumi.Input<string>;
59595
+ blocks?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecBlocks>[] | undefined>;
59924
59596
  /**
59925
- * values is an array of string values. If the operator is In or NotIn,
59926
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
59927
- * the values array must be empty. This array is replaced during a strategic
59928
- * merge patch.
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.
59929
59599
  */
59930
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
59600
+ disabled?: pulumi.Input<boolean | undefined>;
59601
+ serviceSelector?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelector | undefined>;
59931
59602
  }
59932
59603
  /**
59933
- * A label selector requirement is a selector that contains values, a key, and an operator that
59934
- * relates the key and values.
59604
+ * CiliumLoadBalancerIPPoolIPBlock describes a single IP block.
59935
59605
  */
59936
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressionsPatch {
59937
- /**
59938
- * key is the label key that the selector applies to.
59939
- */
59940
- key?: pulumi.Input<string | undefined>;
59941
- /**
59942
- * operator represents a key's relationship to a set of values.
59943
- * Valid operators are In, NotIn, Exists and DoesNotExist.
59944
- */
59945
- operator?: pulumi.Input<string | undefined>;
59946
- /**
59947
- * values is an array of string values. If the operator is In or NotIn,
59948
- * the values array must be non-empty. If the operator is Exists or DoesNotExist,
59949
- * the values array must be empty. This array is replaced during a strategic
59950
- * merge patch.
59951
- */
59952
- values?: pulumi.Input<pulumi.Input<string>[] | undefined>;
59606
+ interface CiliumLoadBalancerIPPoolSpecBlocks {
59607
+ cidr?: pulumi.Input<string | undefined>;
59608
+ start?: pulumi.Input<string | undefined>;
59609
+ stop?: pulumi.Input<string | undefined>;
59953
59610
  }
59954
59611
  /**
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.
59612
+ * CiliumLoadBalancerIPPoolIPBlock describes a single IP block.
59960
59613
  */
59961
- interface CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorPatch {
59962
- /**
59963
- * matchExpressions is a list of label selector requirements. The requirements are ANDed.
59964
- */
59965
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorMatchExpressionsPatch>[] | undefined>;
59966
- /**
59967
- * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
59968
- * map is equivalent to an element of matchExpressions, whose key field is "key", the
59969
- * operator is "In", and the values array contains only "value". The requirements are ANDed.
59970
- */
59971
- matchLabels?: pulumi.Input<{
59972
- [key: string]: pulumi.Input<string>;
59973
- } | undefined>;
59614
+ interface CiliumLoadBalancerIPPoolSpecBlocksPatch {
59615
+ cidr?: pulumi.Input<string | undefined>;
59616
+ start?: pulumi.Input<string | undefined>;
59617
+ stop?: pulumi.Input<string | undefined>;
59974
59618
  }
59975
59619
  /**
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.
59620
+ * Spec is a human readable description for a BGP load balancer
59621
+ * ip pool.
59979
59622
  */
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>;
59623
+ interface CiliumLoadBalancerIPPoolSpecPatch {
59999
59624
  /**
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.
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.
60011
59628
  */
60012
- interface?: pulumi.Input<string | undefined>;
60013
- nodeSelector?: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewayNodeSelectorPatch | undefined>;
60014
- }
60015
- /**
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).
60020
- */
60021
- interface CiliumEgressGatewayPolicySpecEgressGateways {
59629
+ allowFirstLastIPs?: pulumi.Input<string | undefined>;
60022
59630
  /**
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.
59631
+ * Blocks is a list of CIDRs comprising this IP Pool
60038
59632
  */
60039
- egressIP?: pulumi.Input<string | undefined>;
59633
+ blocks?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecBlocksPatch>[] | undefined>;
60040
59634
  /**
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.
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.
60052
59637
  */
60053
- interface?: pulumi.Input<string | undefined>;
60054
- nodeSelector: pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelector>;
59638
+ disabled?: pulumi.Input<boolean | undefined>;
59639
+ serviceSelector?: pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorPatch | undefined>;
60055
59640
  }
60056
59641
  /**
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.
59642
+ * ServiceSelector selects a set of services which are eligible to receive IPs from this
60062
59643
  */
60063
- interface CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelector {
59644
+ interface CiliumLoadBalancerIPPoolSpecServiceSelector {
60064
59645
  /**
60065
59646
  * matchExpressions is a list of label selector requirements. The requirements are ANDed.
60066
59647
  */
60067
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumEgressGatewayPolicySpecEgressGatewaysNodeSelectorMatchExpressions>[] | undefined>;
59648
+ matchExpressions?: pulumi.Input<pulumi.Input<inputs.cilium.v2.CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressions>[] | undefined>;
60068
59649
  /**
60069
59650
  * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
60070
59651
  * map is equivalent to an element of matchExpressions, whose key field is "key", the
@@ -60078,735 +59659,7 @@ export declare namespace cilium {
60078
59659
  * A label selector requirement is a selector that contains values, a key, and an operator that
60079
59660
  * relates the key and values.
60080
59661
  */
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 {
59662
+ interface CiliumLoadBalancerIPPoolSpecServiceSelectorMatchExpressions {
60810
59663
  /**
60811
59664
  * key is the label key that the selector applies to.
60812
59665
  */
@@ -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.
@@ -75701,8 +74121,123 @@ export declare namespace external_secrets {
75701
74121
  * BarbicanAuth contains the authentication information for Barbican.
75702
74122
  */
75703
74123
  interface ClusterSecretStoreSpecProviderBarbicanAuth {
75704
- password: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthPassword>;
75705
- username: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthUsername>;
74124
+ applicationCredentialID?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialID | undefined>;
74125
+ applicationCredentialSecret?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecret | undefined>;
74126
+ /**
74127
+ * AuthType selects how Barbican authenticates.
74128
+ * - "password": use username and password.
74129
+ * - "applicationCredential": use application credential ID and secret.
74130
+ * Defaults to "password".
74131
+ */
74132
+ authType?: pulumi.Input<string | undefined>;
74133
+ password?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthPassword | undefined>;
74134
+ username?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthUsername | undefined>;
74135
+ }
74136
+ /**
74137
+ * ID of the application credential used for authentication.
74138
+ */
74139
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialID {
74140
+ secretRef?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRef | undefined>;
74141
+ value?: pulumi.Input<string | undefined>;
74142
+ }
74143
+ /**
74144
+ * ID of the application credential used for authentication.
74145
+ */
74146
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialIDPatch {
74147
+ secretRef?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRefPatch | undefined>;
74148
+ value?: pulumi.Input<string | undefined>;
74149
+ }
74150
+ /**
74151
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
74152
+ * In some instances, `key` is a required field.
74153
+ */
74154
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRef {
74155
+ /**
74156
+ * A key in the referenced Secret.
74157
+ * Some instances of this field may be defaulted, in others it may be required.
74158
+ */
74159
+ key?: pulumi.Input<string | undefined>;
74160
+ /**
74161
+ * The name of the Secret resource being referred to.
74162
+ */
74163
+ name?: pulumi.Input<string | undefined>;
74164
+ /**
74165
+ * The namespace of the Secret resource being referred to.
74166
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
74167
+ */
74168
+ namespace?: pulumi.Input<string | undefined>;
74169
+ }
74170
+ /**
74171
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
74172
+ * In some instances, `key` is a required field.
74173
+ */
74174
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRefPatch {
74175
+ /**
74176
+ * A key in the referenced Secret.
74177
+ * Some instances of this field may be defaulted, in others it may be required.
74178
+ */
74179
+ key?: pulumi.Input<string | undefined>;
74180
+ /**
74181
+ * The name of the Secret resource being referred to.
74182
+ */
74183
+ name?: pulumi.Input<string | undefined>;
74184
+ /**
74185
+ * The namespace of the Secret resource being referred to.
74186
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
74187
+ */
74188
+ namespace?: pulumi.Input<string | undefined>;
74189
+ }
74190
+ /**
74191
+ * BarbicanProviderAppCredSecretRef defines a reference to an Application Credential Secret.
74192
+ */
74193
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecret {
74194
+ secretRef: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRef>;
74195
+ }
74196
+ /**
74197
+ * BarbicanProviderAppCredSecretRef defines a reference to an Application Credential Secret.
74198
+ */
74199
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretPatch {
74200
+ secretRef?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRefPatch | undefined>;
74201
+ }
74202
+ /**
74203
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
74204
+ * In some instances, `key` is a required field.
74205
+ */
74206
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRef {
74207
+ /**
74208
+ * A key in the referenced Secret.
74209
+ * Some instances of this field may be defaulted, in others it may be required.
74210
+ */
74211
+ key?: pulumi.Input<string | undefined>;
74212
+ /**
74213
+ * The name of the Secret resource being referred to.
74214
+ */
74215
+ name?: pulumi.Input<string | undefined>;
74216
+ /**
74217
+ * The namespace of the Secret resource being referred to.
74218
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
74219
+ */
74220
+ namespace?: pulumi.Input<string | undefined>;
74221
+ }
74222
+ /**
74223
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
74224
+ * In some instances, `key` is a required field.
74225
+ */
74226
+ interface ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRefPatch {
74227
+ /**
74228
+ * A key in the referenced Secret.
74229
+ * Some instances of this field may be defaulted, in others it may be required.
74230
+ */
74231
+ key?: pulumi.Input<string | undefined>;
74232
+ /**
74233
+ * The name of the Secret resource being referred to.
74234
+ */
74235
+ name?: pulumi.Input<string | undefined>;
74236
+ /**
74237
+ * The namespace of the Secret resource being referred to.
74238
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
74239
+ */
74240
+ namespace?: pulumi.Input<string | undefined>;
75706
74241
  }
75707
74242
  /**
75708
74243
  * BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
@@ -75760,18 +74295,27 @@ export declare namespace external_secrets {
75760
74295
  * BarbicanAuth contains the authentication information for Barbican.
75761
74296
  */
75762
74297
  interface ClusterSecretStoreSpecProviderBarbicanAuthPatch {
74298
+ applicationCredentialID?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialIDPatch | undefined>;
74299
+ applicationCredentialSecret?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretPatch | undefined>;
74300
+ /**
74301
+ * AuthType selects how Barbican authenticates.
74302
+ * - "password": use username and password.
74303
+ * - "applicationCredential": use application credential ID and secret.
74304
+ * Defaults to "password".
74305
+ */
74306
+ authType?: pulumi.Input<string | undefined>;
75763
74307
  password?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthPasswordPatch | undefined>;
75764
74308
  username?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthUsernamePatch | undefined>;
75765
74309
  }
75766
74310
  /**
75767
- * BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
74311
+ * Username / Password authentication fields.
75768
74312
  */
75769
74313
  interface ClusterSecretStoreSpecProviderBarbicanAuthUsername {
75770
74314
  secretRef?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthUsernameSecretRef | undefined>;
75771
74315
  value?: pulumi.Input<string | undefined>;
75772
74316
  }
75773
74317
  /**
75774
- * BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
74318
+ * Username / Password authentication fields.
75775
74319
  */
75776
74320
  interface ClusterSecretStoreSpecProviderBarbicanAuthUsernamePatch {
75777
74321
  secretRef?: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderBarbicanAuthUsernameSecretRefPatch | undefined>;
@@ -80322,7 +78866,7 @@ export declare namespace external_secrets {
80322
78866
  */
80323
78867
  interface ClusterSecretStoreSpecProviderKeepersecurity {
80324
78868
  authRef: pulumi.Input<inputs.external_secrets.v1.ClusterSecretStoreSpecProviderKeepersecurityAuthRef>;
80325
- folderID: pulumi.Input<string>;
78869
+ folderID?: pulumi.Input<string | undefined>;
80326
78870
  getByTitleFallback?: pulumi.Input<boolean | undefined>;
80327
78871
  }
80328
78872
  /**
@@ -88443,8 +86987,123 @@ export declare namespace external_secrets {
88443
86987
  * BarbicanAuth contains the authentication information for Barbican.
88444
86988
  */
88445
86989
  interface SecretStoreSpecProviderBarbicanAuth {
88446
- password: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthPassword>;
88447
- username: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthUsername>;
86990
+ applicationCredentialID?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialID | undefined>;
86991
+ applicationCredentialSecret?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecret | undefined>;
86992
+ /**
86993
+ * AuthType selects how Barbican authenticates.
86994
+ * - "password": use username and password.
86995
+ * - "applicationCredential": use application credential ID and secret.
86996
+ * Defaults to "password".
86997
+ */
86998
+ authType?: pulumi.Input<string | undefined>;
86999
+ password?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthPassword | undefined>;
87000
+ username?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthUsername | undefined>;
87001
+ }
87002
+ /**
87003
+ * ID of the application credential used for authentication.
87004
+ */
87005
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialID {
87006
+ secretRef?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRef | undefined>;
87007
+ value?: pulumi.Input<string | undefined>;
87008
+ }
87009
+ /**
87010
+ * ID of the application credential used for authentication.
87011
+ */
87012
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialIDPatch {
87013
+ secretRef?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRefPatch | undefined>;
87014
+ value?: pulumi.Input<string | undefined>;
87015
+ }
87016
+ /**
87017
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
87018
+ * In some instances, `key` is a required field.
87019
+ */
87020
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRef {
87021
+ /**
87022
+ * A key in the referenced Secret.
87023
+ * Some instances of this field may be defaulted, in others it may be required.
87024
+ */
87025
+ key?: pulumi.Input<string | undefined>;
87026
+ /**
87027
+ * The name of the Secret resource being referred to.
87028
+ */
87029
+ name?: pulumi.Input<string | undefined>;
87030
+ /**
87031
+ * The namespace of the Secret resource being referred to.
87032
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
87033
+ */
87034
+ namespace?: pulumi.Input<string | undefined>;
87035
+ }
87036
+ /**
87037
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
87038
+ * In some instances, `key` is a required field.
87039
+ */
87040
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialIDSecretRefPatch {
87041
+ /**
87042
+ * A key in the referenced Secret.
87043
+ * Some instances of this field may be defaulted, in others it may be required.
87044
+ */
87045
+ key?: pulumi.Input<string | undefined>;
87046
+ /**
87047
+ * The name of the Secret resource being referred to.
87048
+ */
87049
+ name?: pulumi.Input<string | undefined>;
87050
+ /**
87051
+ * The namespace of the Secret resource being referred to.
87052
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
87053
+ */
87054
+ namespace?: pulumi.Input<string | undefined>;
87055
+ }
87056
+ /**
87057
+ * BarbicanProviderAppCredSecretRef defines a reference to an Application Credential Secret.
87058
+ */
87059
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecret {
87060
+ secretRef: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRef>;
87061
+ }
87062
+ /**
87063
+ * BarbicanProviderAppCredSecretRef defines a reference to an Application Credential Secret.
87064
+ */
87065
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretPatch {
87066
+ secretRef?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRefPatch | undefined>;
87067
+ }
87068
+ /**
87069
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
87070
+ * In some instances, `key` is a required field.
87071
+ */
87072
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRef {
87073
+ /**
87074
+ * A key in the referenced Secret.
87075
+ * Some instances of this field may be defaulted, in others it may be required.
87076
+ */
87077
+ key?: pulumi.Input<string | undefined>;
87078
+ /**
87079
+ * The name of the Secret resource being referred to.
87080
+ */
87081
+ name?: pulumi.Input<string | undefined>;
87082
+ /**
87083
+ * The namespace of the Secret resource being referred to.
87084
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
87085
+ */
87086
+ namespace?: pulumi.Input<string | undefined>;
87087
+ }
87088
+ /**
87089
+ * SecretKeySelector is a reference to a specific 'key' within a Secret resource.
87090
+ * In some instances, `key` is a required field.
87091
+ */
87092
+ interface SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretSecretRefPatch {
87093
+ /**
87094
+ * A key in the referenced Secret.
87095
+ * Some instances of this field may be defaulted, in others it may be required.
87096
+ */
87097
+ key?: pulumi.Input<string | undefined>;
87098
+ /**
87099
+ * The name of the Secret resource being referred to.
87100
+ */
87101
+ name?: pulumi.Input<string | undefined>;
87102
+ /**
87103
+ * The namespace of the Secret resource being referred to.
87104
+ * Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
87105
+ */
87106
+ namespace?: pulumi.Input<string | undefined>;
88448
87107
  }
88449
87108
  /**
88450
87109
  * BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
@@ -88502,18 +87161,27 @@ export declare namespace external_secrets {
88502
87161
  * BarbicanAuth contains the authentication information for Barbican.
88503
87162
  */
88504
87163
  interface SecretStoreSpecProviderBarbicanAuthPatch {
87164
+ applicationCredentialID?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialIDPatch | undefined>;
87165
+ applicationCredentialSecret?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthApplicationCredentialSecretPatch | undefined>;
87166
+ /**
87167
+ * AuthType selects how Barbican authenticates.
87168
+ * - "password": use username and password.
87169
+ * - "applicationCredential": use application credential ID and secret.
87170
+ * Defaults to "password".
87171
+ */
87172
+ authType?: pulumi.Input<string | undefined>;
88505
87173
  password?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthPasswordPatch | undefined>;
88506
87174
  username?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthUsernamePatch | undefined>;
88507
87175
  }
88508
87176
  /**
88509
- * BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
87177
+ * Username / Password authentication fields.
88510
87178
  */
88511
87179
  interface SecretStoreSpecProviderBarbicanAuthUsername {
88512
87180
  secretRef?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthUsernameSecretRef | undefined>;
88513
87181
  value?: pulumi.Input<string | undefined>;
88514
87182
  }
88515
87183
  /**
88516
- * BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
87184
+ * Username / Password authentication fields.
88517
87185
  */
88518
87186
  interface SecretStoreSpecProviderBarbicanAuthUsernamePatch {
88519
87187
  secretRef?: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderBarbicanAuthUsernameSecretRefPatch | undefined>;
@@ -93064,7 +91732,7 @@ export declare namespace external_secrets {
93064
91732
  */
93065
91733
  interface SecretStoreSpecProviderKeepersecurity {
93066
91734
  authRef: pulumi.Input<inputs.external_secrets.v1.SecretStoreSpecProviderKeepersecurityAuthRef>;
93067
- folderID: pulumi.Input<string>;
91735
+ folderID?: pulumi.Input<string | undefined>;
93068
91736
  getByTitleFallback?: pulumi.Input<boolean | undefined>;
93069
91737
  }
93070
91738
  /**