pulumi-kubernetes 4.23.0a1746129859__py3-none-any.whl → 4.23.0a1746138483__py3-none-any.whl

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.

Potentially problematic release.


This version of pulumi-kubernetes might be problematic. Click here for more details.

Files changed (116) hide show
  1. pulumi_kubernetes/__init__.py +36 -2
  2. pulumi_kubernetes/admissionregistration/v1alpha1/_inputs.py +30 -30
  3. pulumi_kubernetes/admissionregistration/v1alpha1/outputs.py +20 -20
  4. pulumi_kubernetes/apps/v1/ReplicaSetList.py +4 -4
  5. pulumi_kubernetes/apps/v1/_inputs.py +109 -56
  6. pulumi_kubernetes/apps/v1/outputs.py +129 -56
  7. pulumi_kubernetes/autoscaling/v2/_inputs.py +92 -12
  8. pulumi_kubernetes/autoscaling/v2/outputs.py +66 -10
  9. pulumi_kubernetes/batch/v1/_inputs.py +12 -42
  10. pulumi_kubernetes/batch/v1/outputs.py +8 -32
  11. pulumi_kubernetes/certificates/v1alpha1/ClusterTrustBundle.py +2 -0
  12. pulumi_kubernetes/certificates/v1alpha1/ClusterTrustBundlePatch.py +2 -0
  13. pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundle.py +229 -0
  14. pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundleList.py +219 -0
  15. pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundlePatch.py +240 -0
  16. pulumi_kubernetes/certificates/v1beta1/__init__.py +3 -0
  17. pulumi_kubernetes/certificates/v1beta1/_inputs.py +292 -0
  18. pulumi_kubernetes/certificates/v1beta1/outputs.py +241 -0
  19. pulumi_kubernetes/coordination/v1alpha1/LeaseCandidate.py +1 -1
  20. pulumi_kubernetes/coordination/v1alpha1/LeaseCandidatePatch.py +1 -1
  21. pulumi_kubernetes/coordination/v1alpha2/LeaseCandidate.py +1 -1
  22. pulumi_kubernetes/coordination/v1alpha2/LeaseCandidatePatch.py +1 -1
  23. pulumi_kubernetes/coordination/v1alpha2/_inputs.py +6 -6
  24. pulumi_kubernetes/coordination/v1alpha2/outputs.py +4 -4
  25. pulumi_kubernetes/coordination/v1beta1/LeaseCandidate.py +220 -0
  26. pulumi_kubernetes/coordination/v1beta1/LeaseCandidateList.py +219 -0
  27. pulumi_kubernetes/coordination/v1beta1/LeaseCandidatePatch.py +232 -0
  28. pulumi_kubernetes/coordination/v1beta1/__init__.py +3 -0
  29. pulumi_kubernetes/coordination/v1beta1/_inputs.py +371 -0
  30. pulumi_kubernetes/coordination/v1beta1/outputs.py +292 -0
  31. pulumi_kubernetes/core/v1/Endpoints.py +8 -0
  32. pulumi_kubernetes/core/v1/EndpointsList.py +2 -2
  33. pulumi_kubernetes/core/v1/EndpointsPatch.py +8 -0
  34. pulumi_kubernetes/core/v1/_inputs.py +240 -66
  35. pulumi_kubernetes/core/v1/outputs.py +251 -51
  36. pulumi_kubernetes/discovery/v1/EndpointSlice.py +10 -10
  37. pulumi_kubernetes/discovery/v1/EndpointSlicePatch.py +10 -10
  38. pulumi_kubernetes/discovery/v1/_inputs.py +159 -44
  39. pulumi_kubernetes/discovery/v1/outputs.py +107 -32
  40. pulumi_kubernetes/networking/v1/IPAddress.py +220 -0
  41. pulumi_kubernetes/networking/v1/IPAddressList.py +219 -0
  42. pulumi_kubernetes/networking/v1/IPAddressPatch.py +232 -0
  43. pulumi_kubernetes/networking/v1/ServiceCIDR.py +230 -0
  44. pulumi_kubernetes/networking/v1/ServiceCIDRList.py +219 -0
  45. pulumi_kubernetes/networking/v1/ServiceCIDRPatch.py +242 -0
  46. pulumi_kubernetes/networking/v1/__init__.py +6 -0
  47. pulumi_kubernetes/networking/v1/_inputs.py +599 -0
  48. pulumi_kubernetes/networking/v1/outputs.py +461 -0
  49. pulumi_kubernetes/networking/v1alpha1/IPAddress.py +1 -1
  50. pulumi_kubernetes/networking/v1alpha1/IPAddressPatch.py +1 -1
  51. pulumi_kubernetes/networking/v1alpha1/ServiceCIDR.py +1 -1
  52. pulumi_kubernetes/networking/v1alpha1/ServiceCIDRPatch.py +1 -1
  53. pulumi_kubernetes/networking/v1beta1/IPAddress.py +1 -1
  54. pulumi_kubernetes/networking/v1beta1/IPAddressPatch.py +1 -1
  55. pulumi_kubernetes/networking/v1beta1/ServiceCIDR.py +1 -1
  56. pulumi_kubernetes/networking/v1beta1/ServiceCIDRPatch.py +1 -1
  57. pulumi_kubernetes/policy/v1/_inputs.py +0 -12
  58. pulumi_kubernetes/policy/v1/outputs.py +0 -8
  59. pulumi_kubernetes/pulumi-plugin.json +1 -1
  60. pulumi_kubernetes/resource/__init__.py +3 -0
  61. pulumi_kubernetes/resource/v1alpha1/ResourceClaim.py +1 -1
  62. pulumi_kubernetes/resource/v1alpha1/ResourceClaimPatch.py +1 -1
  63. pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplate.py +1 -1
  64. pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplatePatch.py +1 -1
  65. pulumi_kubernetes/resource/v1alpha2/ResourceClaim.py +1 -1
  66. pulumi_kubernetes/resource/v1alpha2/ResourceClaimPatch.py +1 -1
  67. pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplate.py +1 -1
  68. pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplatePatch.py +1 -1
  69. pulumi_kubernetes/resource/v1alpha2/ResourceSlice.py +1 -1
  70. pulumi_kubernetes/resource/v1alpha2/ResourceSlicePatch.py +1 -1
  71. pulumi_kubernetes/resource/v1alpha3/DeviceClass.py +1 -1
  72. pulumi_kubernetes/resource/v1alpha3/DeviceClassPatch.py +1 -1
  73. pulumi_kubernetes/resource/v1alpha3/DeviceTaintRule.py +227 -0
  74. pulumi_kubernetes/resource/v1alpha3/DeviceTaintRuleList.py +219 -0
  75. pulumi_kubernetes/resource/v1alpha3/DeviceTaintRulePatch.py +238 -0
  76. pulumi_kubernetes/resource/v1alpha3/ResourceClaim.py +1 -1
  77. pulumi_kubernetes/resource/v1alpha3/ResourceClaimPatch.py +1 -1
  78. pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplate.py +1 -1
  79. pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplatePatch.py +1 -1
  80. pulumi_kubernetes/resource/v1alpha3/ResourceSlice.py +1 -1
  81. pulumi_kubernetes/resource/v1alpha3/ResourceSlicePatch.py +1 -1
  82. pulumi_kubernetes/resource/v1alpha3/__init__.py +3 -0
  83. pulumi_kubernetes/resource/v1alpha3/_inputs.py +2559 -213
  84. pulumi_kubernetes/resource/v1alpha3/outputs.py +2037 -256
  85. pulumi_kubernetes/resource/v1beta1/DeviceClass.py +1 -1
  86. pulumi_kubernetes/resource/v1beta1/DeviceClassPatch.py +1 -1
  87. pulumi_kubernetes/resource/v1beta1/ResourceClaim.py +1 -1
  88. pulumi_kubernetes/resource/v1beta1/ResourceClaimPatch.py +1 -1
  89. pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplate.py +1 -1
  90. pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplatePatch.py +1 -1
  91. pulumi_kubernetes/resource/v1beta1/ResourceSlice.py +1 -1
  92. pulumi_kubernetes/resource/v1beta1/ResourceSlicePatch.py +1 -1
  93. pulumi_kubernetes/resource/v1beta1/_inputs.py +2044 -176
  94. pulumi_kubernetes/resource/v1beta1/outputs.py +1536 -134
  95. pulumi_kubernetes/resource/v1beta2/DeviceClass.py +241 -0
  96. pulumi_kubernetes/resource/v1beta2/DeviceClassList.py +219 -0
  97. pulumi_kubernetes/resource/v1beta2/DeviceClassPatch.py +252 -0
  98. pulumi_kubernetes/resource/v1beta2/ResourceClaim.py +236 -0
  99. pulumi_kubernetes/resource/v1beta2/ResourceClaimList.py +220 -0
  100. pulumi_kubernetes/resource/v1beta2/ResourceClaimPatch.py +247 -0
  101. pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplate.py +233 -0
  102. pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplateList.py +219 -0
  103. pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplatePatch.py +244 -0
  104. pulumi_kubernetes/resource/v1beta2/ResourceSlice.py +250 -0
  105. pulumi_kubernetes/resource/v1beta2/ResourceSliceList.py +220 -0
  106. pulumi_kubernetes/resource/v1beta2/ResourceSlicePatch.py +261 -0
  107. pulumi_kubernetes/resource/v1beta2/__init__.py +22 -0
  108. pulumi_kubernetes/resource/v1beta2/_inputs.py +5681 -0
  109. pulumi_kubernetes/resource/v1beta2/outputs.py +4726 -0
  110. pulumi_kubernetes/storage/v1/_inputs.py +90 -0
  111. pulumi_kubernetes/storage/v1/outputs.py +110 -0
  112. pulumi_kubernetes/yaml/yaml.py +108 -0
  113. {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/METADATA +1 -1
  114. {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/RECORD +116 -86
  115. {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/WHEEL +0 -0
  116. {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/top_level.txt +0 -0
@@ -25,6 +25,9 @@ __all__ = [
25
25
  'CertificateSigningRequestSpecPatch',
26
26
  'CertificateSigningRequestStatus',
27
27
  'CertificateSigningRequestStatusPatch',
28
+ 'ClusterTrustBundle',
29
+ 'ClusterTrustBundleSpec',
30
+ 'ClusterTrustBundleSpecPatch',
28
31
  ]
29
32
 
30
33
  @pulumi.output_type
@@ -619,3 +622,241 @@ class CertificateSigningRequestStatusPatch(dict):
619
622
  return pulumi.get(self, "conditions")
620
623
 
621
624
 
625
+ @pulumi.output_type
626
+ class ClusterTrustBundle(dict):
627
+ """
628
+ ClusterTrustBundle is a cluster-scoped container for X.509 trust anchors (root certificates).
629
+
630
+ ClusterTrustBundle objects are considered to be readable by any authenticated user in the cluster, because they can be mounted by pods using the `clusterTrustBundle` projection. All service accounts have read access to ClusterTrustBundles by default. Users who only have namespace-level access to a cluster can read ClusterTrustBundles by impersonating a serviceaccount that they have access to.
631
+
632
+ It can be optionally associated with a particular assigner, in which case it contains one valid set of trust anchors for that signer. Signers may have multiple associated ClusterTrustBundles; each is an independent set of trust anchors for that signer. Admission control is used to enforce that only users with permissions on the signer can create or modify the corresponding bundle.
633
+ """
634
+ @staticmethod
635
+ def __key_warning(key: str):
636
+ suggest = None
637
+ if key == "apiVersion":
638
+ suggest = "api_version"
639
+
640
+ if suggest:
641
+ pulumi.log.warn(f"Key '{key}' not found in ClusterTrustBundle. Access the value via the '{suggest}' property getter instead.")
642
+
643
+ def __getitem__(self, key: str) -> Any:
644
+ ClusterTrustBundle.__key_warning(key)
645
+ return super().__getitem__(key)
646
+
647
+ def get(self, key: str, default = None) -> Any:
648
+ ClusterTrustBundle.__key_warning(key)
649
+ return super().get(key, default)
650
+
651
+ def __init__(__self__, *,
652
+ spec: 'outputs.ClusterTrustBundleSpec',
653
+ api_version: Optional[builtins.str] = None,
654
+ kind: Optional[builtins.str] = None,
655
+ metadata: Optional['_meta.v1.outputs.ObjectMeta'] = None):
656
+ """
657
+ ClusterTrustBundle is a cluster-scoped container for X.509 trust anchors (root certificates).
658
+
659
+ ClusterTrustBundle objects are considered to be readable by any authenticated user in the cluster, because they can be mounted by pods using the `clusterTrustBundle` projection. All service accounts have read access to ClusterTrustBundles by default. Users who only have namespace-level access to a cluster can read ClusterTrustBundles by impersonating a serviceaccount that they have access to.
660
+
661
+ It can be optionally associated with a particular assigner, in which case it contains one valid set of trust anchors for that signer. Signers may have multiple associated ClusterTrustBundles; each is an independent set of trust anchors for that signer. Admission control is used to enforce that only users with permissions on the signer can create or modify the corresponding bundle.
662
+ :param 'ClusterTrustBundleSpecArgs' spec: spec contains the signer (if any) and trust anchors.
663
+ :param builtins.str api_version: 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
664
+ :param builtins.str kind: 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
665
+ :param '_meta.v1.ObjectMetaArgs' metadata: metadata contains the object metadata.
666
+ """
667
+ pulumi.set(__self__, "spec", spec)
668
+ if api_version is not None:
669
+ pulumi.set(__self__, "api_version", 'certificates.k8s.io/v1beta1')
670
+ if kind is not None:
671
+ pulumi.set(__self__, "kind", 'ClusterTrustBundle')
672
+ if metadata is not None:
673
+ pulumi.set(__self__, "metadata", metadata)
674
+
675
+ @property
676
+ @pulumi.getter
677
+ def spec(self) -> 'outputs.ClusterTrustBundleSpec':
678
+ """
679
+ spec contains the signer (if any) and trust anchors.
680
+ """
681
+ return pulumi.get(self, "spec")
682
+
683
+ @property
684
+ @pulumi.getter(name="apiVersion")
685
+ def api_version(self) -> Optional[builtins.str]:
686
+ """
687
+ 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
688
+ """
689
+ return pulumi.get(self, "api_version")
690
+
691
+ @property
692
+ @pulumi.getter
693
+ def kind(self) -> Optional[builtins.str]:
694
+ """
695
+ 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
696
+ """
697
+ return pulumi.get(self, "kind")
698
+
699
+ @property
700
+ @pulumi.getter
701
+ def metadata(self) -> Optional['_meta.v1.outputs.ObjectMeta']:
702
+ """
703
+ metadata contains the object metadata.
704
+ """
705
+ return pulumi.get(self, "metadata")
706
+
707
+
708
+ @pulumi.output_type
709
+ class ClusterTrustBundleSpec(dict):
710
+ """
711
+ ClusterTrustBundleSpec contains the signer and trust anchors.
712
+ """
713
+ @staticmethod
714
+ def __key_warning(key: str):
715
+ suggest = None
716
+ if key == "trustBundle":
717
+ suggest = "trust_bundle"
718
+ elif key == "signerName":
719
+ suggest = "signer_name"
720
+
721
+ if suggest:
722
+ pulumi.log.warn(f"Key '{key}' not found in ClusterTrustBundleSpec. Access the value via the '{suggest}' property getter instead.")
723
+
724
+ def __getitem__(self, key: str) -> Any:
725
+ ClusterTrustBundleSpec.__key_warning(key)
726
+ return super().__getitem__(key)
727
+
728
+ def get(self, key: str, default = None) -> Any:
729
+ ClusterTrustBundleSpec.__key_warning(key)
730
+ return super().get(key, default)
731
+
732
+ def __init__(__self__, *,
733
+ trust_bundle: builtins.str,
734
+ signer_name: Optional[builtins.str] = None):
735
+ """
736
+ ClusterTrustBundleSpec contains the signer and trust anchors.
737
+ :param builtins.str trust_bundle: trustBundle contains the individual X.509 trust anchors for this bundle, as PEM bundle of PEM-wrapped, DER-formatted X.509 certificates.
738
+
739
+ The data must consist only of PEM certificate blocks that parse as valid X.509 certificates. Each certificate must include a basic constraints extension with the CA bit set. The API server will reject objects that contain duplicate certificates, or that use PEM block headers.
740
+
741
+ Users of ClusterTrustBundles, including Kubelet, are free to reorder and deduplicate certificate blocks in this file according to their own logic, as well as to drop PEM block headers and inter-block data.
742
+ :param builtins.str signer_name: signerName indicates the associated signer, if any.
743
+
744
+ In order to create or update a ClusterTrustBundle that sets signerName, you must have the following cluster-scoped permission: group=certificates.k8s.io resource=signers resourceName=<the signer name> verb=attest.
745
+
746
+ If signerName is not empty, then the ClusterTrustBundle object must be named with the signer name as a prefix (translating slashes to colons). For example, for the signer name `example.com/foo`, valid ClusterTrustBundle object names include `example.com:foo:abc` and `example.com:foo:v1`.
747
+
748
+ If signerName is empty, then the ClusterTrustBundle object's name must not have such a prefix.
749
+
750
+ List/watch requests for ClusterTrustBundles can filter on this field using a `spec.signerName=NAME` field selector.
751
+ """
752
+ pulumi.set(__self__, "trust_bundle", trust_bundle)
753
+ if signer_name is not None:
754
+ pulumi.set(__self__, "signer_name", signer_name)
755
+
756
+ @property
757
+ @pulumi.getter(name="trustBundle")
758
+ def trust_bundle(self) -> builtins.str:
759
+ """
760
+ trustBundle contains the individual X.509 trust anchors for this bundle, as PEM bundle of PEM-wrapped, DER-formatted X.509 certificates.
761
+
762
+ The data must consist only of PEM certificate blocks that parse as valid X.509 certificates. Each certificate must include a basic constraints extension with the CA bit set. The API server will reject objects that contain duplicate certificates, or that use PEM block headers.
763
+
764
+ Users of ClusterTrustBundles, including Kubelet, are free to reorder and deduplicate certificate blocks in this file according to their own logic, as well as to drop PEM block headers and inter-block data.
765
+ """
766
+ return pulumi.get(self, "trust_bundle")
767
+
768
+ @property
769
+ @pulumi.getter(name="signerName")
770
+ def signer_name(self) -> Optional[builtins.str]:
771
+ """
772
+ signerName indicates the associated signer, if any.
773
+
774
+ In order to create or update a ClusterTrustBundle that sets signerName, you must have the following cluster-scoped permission: group=certificates.k8s.io resource=signers resourceName=<the signer name> verb=attest.
775
+
776
+ If signerName is not empty, then the ClusterTrustBundle object must be named with the signer name as a prefix (translating slashes to colons). For example, for the signer name `example.com/foo`, valid ClusterTrustBundle object names include `example.com:foo:abc` and `example.com:foo:v1`.
777
+
778
+ If signerName is empty, then the ClusterTrustBundle object's name must not have such a prefix.
779
+
780
+ List/watch requests for ClusterTrustBundles can filter on this field using a `spec.signerName=NAME` field selector.
781
+ """
782
+ return pulumi.get(self, "signer_name")
783
+
784
+
785
+ @pulumi.output_type
786
+ class ClusterTrustBundleSpecPatch(dict):
787
+ """
788
+ ClusterTrustBundleSpec contains the signer and trust anchors.
789
+ """
790
+ @staticmethod
791
+ def __key_warning(key: str):
792
+ suggest = None
793
+ if key == "signerName":
794
+ suggest = "signer_name"
795
+ elif key == "trustBundle":
796
+ suggest = "trust_bundle"
797
+
798
+ if suggest:
799
+ pulumi.log.warn(f"Key '{key}' not found in ClusterTrustBundleSpecPatch. Access the value via the '{suggest}' property getter instead.")
800
+
801
+ def __getitem__(self, key: str) -> Any:
802
+ ClusterTrustBundleSpecPatch.__key_warning(key)
803
+ return super().__getitem__(key)
804
+
805
+ def get(self, key: str, default = None) -> Any:
806
+ ClusterTrustBundleSpecPatch.__key_warning(key)
807
+ return super().get(key, default)
808
+
809
+ def __init__(__self__, *,
810
+ signer_name: Optional[builtins.str] = None,
811
+ trust_bundle: Optional[builtins.str] = None):
812
+ """
813
+ ClusterTrustBundleSpec contains the signer and trust anchors.
814
+ :param builtins.str signer_name: signerName indicates the associated signer, if any.
815
+
816
+ In order to create or update a ClusterTrustBundle that sets signerName, you must have the following cluster-scoped permission: group=certificates.k8s.io resource=signers resourceName=<the signer name> verb=attest.
817
+
818
+ If signerName is not empty, then the ClusterTrustBundle object must be named with the signer name as a prefix (translating slashes to colons). For example, for the signer name `example.com/foo`, valid ClusterTrustBundle object names include `example.com:foo:abc` and `example.com:foo:v1`.
819
+
820
+ If signerName is empty, then the ClusterTrustBundle object's name must not have such a prefix.
821
+
822
+ List/watch requests for ClusterTrustBundles can filter on this field using a `spec.signerName=NAME` field selector.
823
+ :param builtins.str trust_bundle: trustBundle contains the individual X.509 trust anchors for this bundle, as PEM bundle of PEM-wrapped, DER-formatted X.509 certificates.
824
+
825
+ The data must consist only of PEM certificate blocks that parse as valid X.509 certificates. Each certificate must include a basic constraints extension with the CA bit set. The API server will reject objects that contain duplicate certificates, or that use PEM block headers.
826
+
827
+ Users of ClusterTrustBundles, including Kubelet, are free to reorder and deduplicate certificate blocks in this file according to their own logic, as well as to drop PEM block headers and inter-block data.
828
+ """
829
+ if signer_name is not None:
830
+ pulumi.set(__self__, "signer_name", signer_name)
831
+ if trust_bundle is not None:
832
+ pulumi.set(__self__, "trust_bundle", trust_bundle)
833
+
834
+ @property
835
+ @pulumi.getter(name="signerName")
836
+ def signer_name(self) -> Optional[builtins.str]:
837
+ """
838
+ signerName indicates the associated signer, if any.
839
+
840
+ In order to create or update a ClusterTrustBundle that sets signerName, you must have the following cluster-scoped permission: group=certificates.k8s.io resource=signers resourceName=<the signer name> verb=attest.
841
+
842
+ If signerName is not empty, then the ClusterTrustBundle object must be named with the signer name as a prefix (translating slashes to colons). For example, for the signer name `example.com/foo`, valid ClusterTrustBundle object names include `example.com:foo:abc` and `example.com:foo:v1`.
843
+
844
+ If signerName is empty, then the ClusterTrustBundle object's name must not have such a prefix.
845
+
846
+ List/watch requests for ClusterTrustBundles can filter on this field using a `spec.signerName=NAME` field selector.
847
+ """
848
+ return pulumi.get(self, "signer_name")
849
+
850
+ @property
851
+ @pulumi.getter(name="trustBundle")
852
+ def trust_bundle(self) -> Optional[builtins.str]:
853
+ """
854
+ trustBundle contains the individual X.509 trust anchors for this bundle, as PEM bundle of PEM-wrapped, DER-formatted X.509 certificates.
855
+
856
+ The data must consist only of PEM certificate blocks that parse as valid X.509 certificates. Each certificate must include a basic constraints extension with the CA bit set. The API server will reject objects that contain duplicate certificates, or that use PEM block headers.
857
+
858
+ Users of ClusterTrustBundles, including Kubelet, are free to reorder and deduplicate certificate blocks in this file according to their own logic, as well as to drop PEM block headers and inter-block data.
859
+ """
860
+ return pulumi.get(self, "trust_bundle")
861
+
862
+
@@ -156,7 +156,7 @@ class LeaseCandidate(pulumi.CustomResource):
156
156
  __props__.__dict__["kind"] = 'LeaseCandidate'
157
157
  __props__.__dict__["metadata"] = metadata
158
158
  __props__.__dict__["spec"] = spec
159
- alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidate")])
159
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidate"), pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1beta1:LeaseCandidate")])
160
160
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
161
161
  super(LeaseCandidate, __self__).__init__(
162
162
  'kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidate',
@@ -168,7 +168,7 @@ class LeaseCandidatePatch(pulumi.CustomResource):
168
168
  __props__.__dict__["kind"] = 'LeaseCandidate'
169
169
  __props__.__dict__["metadata"] = metadata
170
170
  __props__.__dict__["spec"] = spec
171
- alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidatePatch")])
171
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidatePatch"), pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1beta1:LeaseCandidatePatch")])
172
172
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
173
173
  super(LeaseCandidatePatch, __self__).__init__(
174
174
  'kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidatePatch',
@@ -156,7 +156,7 @@ class LeaseCandidate(pulumi.CustomResource):
156
156
  __props__.__dict__["kind"] = 'LeaseCandidate'
157
157
  __props__.__dict__["metadata"] = metadata
158
158
  __props__.__dict__["spec"] = spec
159
- alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidate")])
159
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidate"), pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1beta1:LeaseCandidate")])
160
160
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
161
161
  super(LeaseCandidate, __self__).__init__(
162
162
  'kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidate',
@@ -168,7 +168,7 @@ class LeaseCandidatePatch(pulumi.CustomResource):
168
168
  __props__.__dict__["kind"] = 'LeaseCandidate'
169
169
  __props__.__dict__["metadata"] = metadata
170
170
  __props__.__dict__["spec"] = spec
171
- alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidatePatch")])
171
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidatePatch"), pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1beta1:LeaseCandidatePatch")])
172
172
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
173
173
  super(LeaseCandidatePatch, __self__).__init__(
174
174
  'kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidatePatch',
@@ -54,7 +54,7 @@ if not MYPY:
54
54
  """
55
55
  strategy: NotRequired[pulumi.Input[builtins.str]]
56
56
  """
57
- Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
57
+ Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
58
58
  """
59
59
  elif False:
60
60
  LeaseCandidateSpecPatchArgsDict: TypeAlias = Mapping[str, Any]
@@ -75,7 +75,7 @@ class LeaseCandidateSpecPatchArgs:
75
75
  :param pulumi.Input[builtins.str] lease_name: LeaseName is the name of the lease for which this candidate is contending. This field is immutable.
76
76
  :param pulumi.Input[builtins.str] ping_time: PingTime is the last time that the server has requested the LeaseCandidate to renew. It is only done during leader election to check if any LeaseCandidates have become ineligible. When PingTime is updated, the LeaseCandidate will respond by updating RenewTime.
77
77
  :param pulumi.Input[builtins.str] renew_time: RenewTime is the time that the LeaseCandidate was last updated. Any time a Lease needs to do leader election, the PingTime field is updated to signal to the LeaseCandidate that they should update the RenewTime. Old LeaseCandidate objects are also garbage collected if it has been hours since the last renew. The PingTime field is updated regularly to prevent garbage collection for still active LeaseCandidates.
78
- :param pulumi.Input[builtins.str] strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
78
+ :param pulumi.Input[builtins.str] strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
79
79
  """
80
80
  if binary_version is not None:
81
81
  pulumi.set(__self__, "binary_version", binary_version)
@@ -154,7 +154,7 @@ class LeaseCandidateSpecPatchArgs:
154
154
  @pulumi.getter
155
155
  def strategy(self) -> Optional[pulumi.Input[builtins.str]]:
156
156
  """
157
- Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
157
+ Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
158
158
  """
159
159
  return pulumi.get(self, "strategy")
160
160
 
@@ -178,7 +178,7 @@ if not MYPY:
178
178
  """
179
179
  strategy: pulumi.Input[builtins.str]
180
180
  """
181
- Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
181
+ Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
182
182
  """
183
183
  emulation_version: NotRequired[pulumi.Input[builtins.str]]
184
184
  """
@@ -208,7 +208,7 @@ class LeaseCandidateSpecArgs:
208
208
  LeaseCandidateSpec is a specification of a Lease.
209
209
  :param pulumi.Input[builtins.str] binary_version: BinaryVersion is the binary version. It must be in a semver format without leading `v`. This field is required.
210
210
  :param pulumi.Input[builtins.str] lease_name: LeaseName is the name of the lease for which this candidate is contending. This field is immutable.
211
- :param pulumi.Input[builtins.str] strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
211
+ :param pulumi.Input[builtins.str] strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
212
212
  :param pulumi.Input[builtins.str] emulation_version: EmulationVersion is the emulation version. It must be in a semver format without leading `v`. EmulationVersion must be less than or equal to BinaryVersion. This field is required when strategy is "OldestEmulationVersion"
213
213
  :param pulumi.Input[builtins.str] ping_time: PingTime is the last time that the server has requested the LeaseCandidate to renew. It is only done during leader election to check if any LeaseCandidates have become ineligible. When PingTime is updated, the LeaseCandidate will respond by updating RenewTime.
214
214
  :param pulumi.Input[builtins.str] renew_time: RenewTime is the time that the LeaseCandidate was last updated. Any time a Lease needs to do leader election, the PingTime field is updated to signal to the LeaseCandidate that they should update the RenewTime. Old LeaseCandidate objects are also garbage collected if it has been hours since the last renew. The PingTime field is updated regularly to prevent garbage collection for still active LeaseCandidates.
@@ -251,7 +251,7 @@ class LeaseCandidateSpecArgs:
251
251
  @pulumi.getter
252
252
  def strategy(self) -> pulumi.Input[builtins.str]:
253
253
  """
254
- Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
254
+ Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
255
255
  """
256
256
  return pulumi.get(self, "strategy")
257
257
 
@@ -140,7 +140,7 @@ class LeaseCandidateSpec(dict):
140
140
  LeaseCandidateSpec is a specification of a Lease.
141
141
  :param builtins.str binary_version: BinaryVersion is the binary version. It must be in a semver format without leading `v`. This field is required.
142
142
  :param builtins.str lease_name: LeaseName is the name of the lease for which this candidate is contending. This field is immutable.
143
- :param builtins.str strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
143
+ :param builtins.str strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
144
144
  :param builtins.str emulation_version: EmulationVersion is the emulation version. It must be in a semver format without leading `v`. EmulationVersion must be less than or equal to BinaryVersion. This field is required when strategy is "OldestEmulationVersion"
145
145
  :param builtins.str ping_time: PingTime is the last time that the server has requested the LeaseCandidate to renew. It is only done during leader election to check if any LeaseCandidates have become ineligible. When PingTime is updated, the LeaseCandidate will respond by updating RenewTime.
146
146
  :param builtins.str renew_time: RenewTime is the time that the LeaseCandidate was last updated. Any time a Lease needs to do leader election, the PingTime field is updated to signal to the LeaseCandidate that they should update the RenewTime. Old LeaseCandidate objects are also garbage collected if it has been hours since the last renew. The PingTime field is updated regularly to prevent garbage collection for still active LeaseCandidates.
@@ -175,7 +175,7 @@ class LeaseCandidateSpec(dict):
175
175
  @pulumi.getter
176
176
  def strategy(self) -> builtins.str:
177
177
  """
178
- Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
178
+ Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
179
179
  """
180
180
  return pulumi.get(self, "strategy")
181
181
 
@@ -248,7 +248,7 @@ class LeaseCandidateSpecPatch(dict):
248
248
  :param builtins.str lease_name: LeaseName is the name of the lease for which this candidate is contending. This field is immutable.
249
249
  :param builtins.str ping_time: PingTime is the last time that the server has requested the LeaseCandidate to renew. It is only done during leader election to check if any LeaseCandidates have become ineligible. When PingTime is updated, the LeaseCandidate will respond by updating RenewTime.
250
250
  :param builtins.str renew_time: RenewTime is the time that the LeaseCandidate was last updated. Any time a Lease needs to do leader election, the PingTime field is updated to signal to the LeaseCandidate that they should update the RenewTime. Old LeaseCandidate objects are also garbage collected if it has been hours since the last renew. The PingTime field is updated regularly to prevent garbage collection for still active LeaseCandidates.
251
- :param builtins.str strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
251
+ :param builtins.str strategy: Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
252
252
  """
253
253
  if binary_version is not None:
254
254
  pulumi.set(__self__, "binary_version", binary_version)
@@ -307,7 +307,7 @@ class LeaseCandidateSpecPatch(dict):
307
307
  @pulumi.getter
308
308
  def strategy(self) -> Optional[builtins.str]:
309
309
  """
310
- Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
310
+ Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still conflict, this is a user error and coordinated leader election will not operate the Lease until resolved.
311
311
  """
312
312
  return pulumi.get(self, "strategy")
313
313
 
@@ -0,0 +1,220 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumigen. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from ... import _utilities
17
+ from . import outputs
18
+ from ... import meta as _meta
19
+ from ._inputs import *
20
+
21
+ __all__ = ['LeaseCandidateInitArgs', 'LeaseCandidate']
22
+
23
+ @pulumi.input_type
24
+ class LeaseCandidateInitArgs:
25
+ def __init__(__self__, *,
26
+ api_version: Optional[pulumi.Input[builtins.str]] = None,
27
+ kind: Optional[pulumi.Input[builtins.str]] = None,
28
+ metadata: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']] = None,
29
+ spec: Optional[pulumi.Input['LeaseCandidateSpecArgs']] = None):
30
+ """
31
+ The set of arguments for constructing a LeaseCandidate resource.
32
+ :param pulumi.Input[builtins.str] api_version: 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
33
+ :param pulumi.Input[builtins.str] kind: 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
34
+ :param pulumi.Input['_meta.v1.ObjectMetaArgs'] metadata: More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
35
+ :param pulumi.Input['LeaseCandidateSpecArgs'] spec: spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
36
+ """
37
+ if api_version is not None:
38
+ pulumi.set(__self__, "api_version", 'coordination.k8s.io/v1beta1')
39
+ if kind is not None:
40
+ pulumi.set(__self__, "kind", 'LeaseCandidate')
41
+ if metadata is not None:
42
+ pulumi.set(__self__, "metadata", metadata)
43
+ if spec is not None:
44
+ pulumi.set(__self__, "spec", spec)
45
+
46
+ @property
47
+ @pulumi.getter(name="apiVersion")
48
+ def api_version(self) -> Optional[pulumi.Input[builtins.str]]:
49
+ """
50
+ 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
51
+ """
52
+ return pulumi.get(self, "api_version")
53
+
54
+ @api_version.setter
55
+ def api_version(self, value: Optional[pulumi.Input[builtins.str]]):
56
+ pulumi.set(self, "api_version", value)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def kind(self) -> Optional[pulumi.Input[builtins.str]]:
61
+ """
62
+ 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
63
+ """
64
+ return pulumi.get(self, "kind")
65
+
66
+ @kind.setter
67
+ def kind(self, value: Optional[pulumi.Input[builtins.str]]):
68
+ pulumi.set(self, "kind", value)
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def metadata(self) -> Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]:
73
+ """
74
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
75
+ """
76
+ return pulumi.get(self, "metadata")
77
+
78
+ @metadata.setter
79
+ def metadata(self, value: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]):
80
+ pulumi.set(self, "metadata", value)
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def spec(self) -> Optional[pulumi.Input['LeaseCandidateSpecArgs']]:
85
+ """
86
+ spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
87
+ """
88
+ return pulumi.get(self, "spec")
89
+
90
+ @spec.setter
91
+ def spec(self, value: Optional[pulumi.Input['LeaseCandidateSpecArgs']]):
92
+ pulumi.set(self, "spec", value)
93
+
94
+
95
+ class LeaseCandidate(pulumi.CustomResource):
96
+
97
+ pulumi_type = "kubernetes:coordination.k8s.io/v1beta1:LeaseCandidate"
98
+
99
+ @overload
100
+ def __init__(__self__,
101
+ resource_name: str,
102
+ opts: Optional[pulumi.ResourceOptions] = None,
103
+ api_version: Optional[pulumi.Input[builtins.str]] = None,
104
+ kind: Optional[pulumi.Input[builtins.str]] = None,
105
+ metadata: Optional[pulumi.Input[Union['_meta.v1.ObjectMetaArgs', '_meta.v1.ObjectMetaArgsDict']]] = None,
106
+ spec: Optional[pulumi.Input[Union['LeaseCandidateSpecArgs', 'LeaseCandidateSpecArgsDict']]] = None,
107
+ __props__=None):
108
+ """
109
+ LeaseCandidate defines a candidate for a Lease object. Candidates are created such that coordinated leader election will pick the best leader from the list of candidates.
110
+
111
+ :param str resource_name: The name of the resource.
112
+ :param pulumi.ResourceOptions opts: Options for the resource.
113
+ :param pulumi.Input[builtins.str] api_version: 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
114
+ :param pulumi.Input[builtins.str] kind: 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
115
+ :param pulumi.Input[Union['_meta.v1.ObjectMetaArgs', '_meta.v1.ObjectMetaArgsDict']] metadata: More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
116
+ :param pulumi.Input[Union['LeaseCandidateSpecArgs', 'LeaseCandidateSpecArgsDict']] spec: spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
117
+ """
118
+ ...
119
+ @overload
120
+ def __init__(__self__,
121
+ resource_name: str,
122
+ args: Optional[LeaseCandidateInitArgs] = None,
123
+ opts: Optional[pulumi.ResourceOptions] = None):
124
+ """
125
+ LeaseCandidate defines a candidate for a Lease object. Candidates are created such that coordinated leader election will pick the best leader from the list of candidates.
126
+
127
+ :param str resource_name: The name of the resource.
128
+ :param LeaseCandidateInitArgs args: The arguments to use to populate this resource's properties.
129
+ :param pulumi.ResourceOptions opts: Options for the resource.
130
+ """
131
+ ...
132
+ def __init__(__self__, resource_name: str, *args, **kwargs):
133
+ resource_args, opts = _utilities.get_resource_args_opts(LeaseCandidateInitArgs, pulumi.ResourceOptions, *args, **kwargs)
134
+ if resource_args is not None:
135
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
136
+ else:
137
+ __self__._internal_init(resource_name, *args, **kwargs)
138
+
139
+ def _internal_init(__self__,
140
+ resource_name: str,
141
+ opts: Optional[pulumi.ResourceOptions] = None,
142
+ api_version: Optional[pulumi.Input[builtins.str]] = None,
143
+ kind: Optional[pulumi.Input[builtins.str]] = None,
144
+ metadata: Optional[pulumi.Input[Union['_meta.v1.ObjectMetaArgs', '_meta.v1.ObjectMetaArgsDict']]] = None,
145
+ spec: Optional[pulumi.Input[Union['LeaseCandidateSpecArgs', 'LeaseCandidateSpecArgsDict']]] = None,
146
+ __props__=None):
147
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
148
+ if not isinstance(opts, pulumi.ResourceOptions):
149
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
150
+ if opts.id is None:
151
+ if __props__ is not None:
152
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
153
+ __props__ = LeaseCandidateInitArgs.__new__(LeaseCandidateInitArgs)
154
+
155
+ __props__.__dict__["api_version"] = 'coordination.k8s.io/v1beta1'
156
+ __props__.__dict__["kind"] = 'LeaseCandidate'
157
+ __props__.__dict__["metadata"] = metadata
158
+ __props__.__dict__["spec"] = spec
159
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha1:LeaseCandidate"), pulumi.Alias(type_="kubernetes:coordination.k8s.io/v1alpha2:LeaseCandidate")])
160
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
161
+ super(LeaseCandidate, __self__).__init__(
162
+ 'kubernetes:coordination.k8s.io/v1beta1:LeaseCandidate',
163
+ resource_name,
164
+ __props__,
165
+ opts)
166
+
167
+ @staticmethod
168
+ def get(resource_name: str,
169
+ id: pulumi.Input[str],
170
+ opts: Optional[pulumi.ResourceOptions] = None) -> 'LeaseCandidate':
171
+ """
172
+ Get an existing LeaseCandidate resource's state with the given name, id, and optional extra
173
+ properties used to qualify the lookup.
174
+
175
+ :param str resource_name: The unique name of the resulting resource.
176
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
177
+ :param pulumi.ResourceOptions opts: Options for the resource.
178
+ """
179
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
180
+
181
+ __props__ = LeaseCandidateInitArgs.__new__(LeaseCandidateInitArgs)
182
+
183
+ __props__.__dict__["api_version"] = None
184
+ __props__.__dict__["kind"] = None
185
+ __props__.__dict__["metadata"] = None
186
+ __props__.__dict__["spec"] = None
187
+ return LeaseCandidate(resource_name, opts=opts, __props__=__props__)
188
+
189
+ @property
190
+ @pulumi.getter(name="apiVersion")
191
+ def api_version(self) -> pulumi.Output[builtins.str]:
192
+ """
193
+ 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
194
+ """
195
+ return pulumi.get(self, "api_version")
196
+
197
+ @property
198
+ @pulumi.getter
199
+ def kind(self) -> pulumi.Output[builtins.str]:
200
+ """
201
+ 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
202
+ """
203
+ return pulumi.get(self, "kind")
204
+
205
+ @property
206
+ @pulumi.getter
207
+ def metadata(self) -> pulumi.Output['_meta.v1.outputs.ObjectMeta']:
208
+ """
209
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
210
+ """
211
+ return pulumi.get(self, "metadata")
212
+
213
+ @property
214
+ @pulumi.getter
215
+ def spec(self) -> pulumi.Output['outputs.LeaseCandidateSpec']:
216
+ """
217
+ spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
218
+ """
219
+ return pulumi.get(self, "spec")
220
+