pulumi-vsphere 4.14.0a1746734806__py3-none-any.whl → 4.15.0__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-vsphere might be problematic. Click here for more details.

Files changed (87) hide show
  1. pulumi_vsphere/__init__.py +1 -1
  2. pulumi_vsphere/_inputs.py +1 -1
  3. pulumi_vsphere/_utilities.py +1 -1
  4. pulumi_vsphere/compute_cluster.py +11 -11
  5. pulumi_vsphere/compute_cluster_host_group.py +71 -1
  6. pulumi_vsphere/compute_cluster_vm_affinity_rule.py +1 -1
  7. pulumi_vsphere/compute_cluster_vm_anti_affinity_rule.py +5 -1
  8. pulumi_vsphere/compute_cluster_vm_dependency_rule.py +5 -1
  9. pulumi_vsphere/compute_cluster_vm_group.py +5 -1
  10. pulumi_vsphere/compute_cluster_vm_host_rule.py +5 -1
  11. pulumi_vsphere/config/__init__.py +1 -1
  12. pulumi_vsphere/config/__init__.pyi +1 -1
  13. pulumi_vsphere/config/vars.py +1 -1
  14. pulumi_vsphere/content_library.py +5 -1
  15. pulumi_vsphere/content_library_item.py +5 -1
  16. pulumi_vsphere/custom_attribute.py +5 -1
  17. pulumi_vsphere/datacenter.py +1 -1
  18. pulumi_vsphere/datastore_cluster.py +89 -1
  19. pulumi_vsphere/datastore_cluster_vm_anti_affinity_rule.py +5 -1
  20. pulumi_vsphere/distributed_port_group.py +5 -1
  21. pulumi_vsphere/distributed_virtual_switch.py +5 -1
  22. pulumi_vsphere/distributed_virtual_switch_pvlan_mapping.py +1 -1
  23. pulumi_vsphere/dpm_host_override.py +89 -1
  24. pulumi_vsphere/drs_vm_override.py +5 -1
  25. pulumi_vsphere/entity_permissions.py +1 -1
  26. pulumi_vsphere/file.py +35 -50
  27. pulumi_vsphere/folder.py +17 -13
  28. pulumi_vsphere/get_compute_cluster.py +1 -1
  29. pulumi_vsphere/get_compute_cluster_host_group.py +1 -5
  30. pulumi_vsphere/get_content_library.py +1 -1
  31. pulumi_vsphere/get_content_library_item.py +1 -1
  32. pulumi_vsphere/get_custom_attribute.py +1 -1
  33. pulumi_vsphere/get_datacenter.py +1 -1
  34. pulumi_vsphere/get_datastore.py +1 -1
  35. pulumi_vsphere/get_datastore_cluster.py +2 -2
  36. pulumi_vsphere/get_datastore_stats.py +1 -5
  37. pulumi_vsphere/get_distributed_virtual_switch.py +1 -1
  38. pulumi_vsphere/get_dynamic.py +1 -5
  39. pulumi_vsphere/get_folder.py +131 -9
  40. pulumi_vsphere/get_guest_os_customization.py +22 -3
  41. pulumi_vsphere/get_host.py +1 -1
  42. pulumi_vsphere/get_host_base_images.py +1 -1
  43. pulumi_vsphere/get_host_pci_device.py +1 -1
  44. pulumi_vsphere/get_host_thumbprint.py +1 -1
  45. pulumi_vsphere/get_host_vgpu_profile.py +1 -1
  46. pulumi_vsphere/get_license.py +9 -7
  47. pulumi_vsphere/get_network.py +56 -5
  48. pulumi_vsphere/get_ovf_vm_template.py +5 -5
  49. pulumi_vsphere/get_policy.py +1 -1
  50. pulumi_vsphere/get_resource_pool.py +64 -13
  51. pulumi_vsphere/get_role.py +1 -1
  52. pulumi_vsphere/get_tag.py +1 -1
  53. pulumi_vsphere/get_tag_category.py +1 -1
  54. pulumi_vsphere/get_vapp_container.py +1 -1
  55. pulumi_vsphere/get_virtual_machine.py +1 -1
  56. pulumi_vsphere/get_vmfs_disks.py +1 -1
  57. pulumi_vsphere/guest_os_customization.py +1 -1
  58. pulumi_vsphere/ha_vm_override.py +5 -1
  59. pulumi_vsphere/host.py +61 -7
  60. pulumi_vsphere/host_port_group.py +1 -1
  61. pulumi_vsphere/host_virtual_switch.py +5 -1
  62. pulumi_vsphere/license.py +67 -27
  63. pulumi_vsphere/nas_datastore.py +63 -1
  64. pulumi_vsphere/offline_software_depot.py +5 -1
  65. pulumi_vsphere/outputs.py +34 -1
  66. pulumi_vsphere/provider.py +36 -38
  67. pulumi_vsphere/pulumi-plugin.json +1 -1
  68. pulumi_vsphere/resource_pool.py +490 -164
  69. pulumi_vsphere/role.py +1 -1
  70. pulumi_vsphere/storage_drs_vm_override.py +5 -1
  71. pulumi_vsphere/supervisor.py +3 -3
  72. pulumi_vsphere/tag.py +5 -1
  73. pulumi_vsphere/tag_category.py +5 -1
  74. pulumi_vsphere/vapp_container.py +5 -1
  75. pulumi_vsphere/vapp_entity.py +5 -1
  76. pulumi_vsphere/virtual_disk.py +5 -1
  77. pulumi_vsphere/virtual_machine.py +5 -5
  78. pulumi_vsphere/virtual_machine_class.py +5 -5
  79. pulumi_vsphere/virtual_machine_snapshot.py +1 -1
  80. pulumi_vsphere/vm_storage_policy.py +1 -1
  81. pulumi_vsphere/vmfs_datastore.py +5 -1
  82. pulumi_vsphere/vnic.py +1 -1
  83. {pulumi_vsphere-4.14.0a1746734806.dist-info → pulumi_vsphere-4.15.0.dist-info}/METADATA +1 -1
  84. pulumi_vsphere-4.15.0.dist-info/RECORD +87 -0
  85. {pulumi_vsphere-4.14.0a1746734806.dist-info → pulumi_vsphere-4.15.0.dist-info}/WHEEL +1 -1
  86. pulumi_vsphere-4.14.0a1746734806.dist-info/RECORD +0 -87
  87. {pulumi_vsphere-4.14.0a1746734806.dist-info → pulumi_vsphere-4.15.0.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -654,12 +654,43 @@ class NasDatastore(pulumi.CustomResource):
654
654
  multiple hosts, you must specify each host that you want to add in the
655
655
  `host_system_ids` argument.
656
656
 
657
+ ## Example Usage
658
+
659
+ The following example would set up a NFS v3 share on 3 hosts connected through
660
+ vCenter in the same datacenter - `esxi1`, `esxi2`, and `esxi3`. The remote host
661
+ is named `nfs` and has `/export/test` exported.
662
+
663
+ ```python
664
+ import pulumi
665
+ import pulumi_vsphere as vsphere
666
+
667
+ config = pulumi.Config()
668
+ hosts = config.get_object("hosts")
669
+ if hosts is None:
670
+ hosts = [
671
+ "esxi-01.example.com",
672
+ "esxi-02.example.com",
673
+ "esxi-03.example.com",
674
+ ]
675
+ datacenter = vsphere.get_datacenter(name="dc-01")
676
+ hosts_get_host = [vsphere.get_host(name=hosts[__index],
677
+ datacenter_id=datacenter.id) for __index in range(len(hosts))]
678
+ datastore = vsphere.NasDatastore("datastore",
679
+ name="test",
680
+ host_system_ids=[[__item["id"] for __item in esxi_hosts]],
681
+ type="NFS",
682
+ remote_hosts=["nfs"],
683
+ remote_path="/export/test")
684
+ ```
685
+
657
686
  ## Import
658
687
 
659
688
  An existing NAS datastore can be imported into this resource via
660
689
 
661
690
  its managed object ID, via the following command:
662
691
 
692
+ [docs-import]: https://developer.hashicorp.com/terraform/cli/import
693
+
663
694
  ```sh
664
695
  $ pulumi import vsphere:index/nasDatastore:NasDatastore datastore datastore-123
665
696
  ```
@@ -733,12 +764,43 @@ class NasDatastore(pulumi.CustomResource):
733
764
  multiple hosts, you must specify each host that you want to add in the
734
765
  `host_system_ids` argument.
735
766
 
767
+ ## Example Usage
768
+
769
+ The following example would set up a NFS v3 share on 3 hosts connected through
770
+ vCenter in the same datacenter - `esxi1`, `esxi2`, and `esxi3`. The remote host
771
+ is named `nfs` and has `/export/test` exported.
772
+
773
+ ```python
774
+ import pulumi
775
+ import pulumi_vsphere as vsphere
776
+
777
+ config = pulumi.Config()
778
+ hosts = config.get_object("hosts")
779
+ if hosts is None:
780
+ hosts = [
781
+ "esxi-01.example.com",
782
+ "esxi-02.example.com",
783
+ "esxi-03.example.com",
784
+ ]
785
+ datacenter = vsphere.get_datacenter(name="dc-01")
786
+ hosts_get_host = [vsphere.get_host(name=hosts[__index],
787
+ datacenter_id=datacenter.id) for __index in range(len(hosts))]
788
+ datastore = vsphere.NasDatastore("datastore",
789
+ name="test",
790
+ host_system_ids=[[__item["id"] for __item in esxi_hosts]],
791
+ type="NFS",
792
+ remote_hosts=["nfs"],
793
+ remote_path="/export/test")
794
+ ```
795
+
736
796
  ## Import
737
797
 
738
798
  An existing NAS datastore can be imported into this resource via
739
799
 
740
800
  its managed object ID, via the following command:
741
801
 
802
+ [docs-import]: https://developer.hashicorp.com/terraform/cli/import
803
+
742
804
  ```sh
743
805
  $ pulumi import vsphere:index/nasDatastore:NasDatastore datastore datastore-123
744
806
  ```
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -95,6 +95,8 @@ class OfflineSoftwareDepot(pulumi.CustomResource):
95
95
 
96
96
  ## Example Usage
97
97
 
98
+ ### S
99
+
98
100
  :param str resource_name: The name of the resource.
99
101
  :param pulumi.ResourceOptions opts: Options for the resource.
100
102
  :param pulumi.Input[builtins.str] location: The URL where the depot source is hosted.
@@ -110,6 +112,8 @@ class OfflineSoftwareDepot(pulumi.CustomResource):
110
112
 
111
113
  ## Example Usage
112
114
 
115
+ ### S
116
+
113
117
  :param str resource_name: The name of the resource.
114
118
  :param OfflineSoftwareDepotArgs args: The arguments to use to populate this resource's properties.
115
119
  :param pulumi.ResourceOptions opts: Options for the resource.
pulumi_vsphere/outputs.py CHANGED
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -3674,7 +3674,10 @@ class GetGuestOsCustomizationSpecWindowsOptionResult(dict):
3674
3674
  computer_name: builtins.str,
3675
3675
  domain_admin_user: builtins.str,
3676
3676
  domain_ou: builtins.str,
3677
+ full_name: builtins.str,
3677
3678
  join_domain: builtins.str,
3679
+ organization_name: builtins.str,
3680
+ product_key: builtins.str,
3678
3681
  run_once_command_lists: Sequence[builtins.str],
3679
3682
  time_zone: builtins.int,
3680
3683
  workgroup: builtins.str,
@@ -3686,7 +3689,10 @@ class GetGuestOsCustomizationSpecWindowsOptionResult(dict):
3686
3689
  :param builtins.str computer_name: The hostname for this virtual machine.
3687
3690
  :param builtins.str domain_admin_user: The user account of the domain administrator used to join this virtual machine to the domain.
3688
3691
  :param builtins.str domain_ou: The MachineObjectOU which specifies the full LDAP path name of the OU to which the virtual machine belongs.
3692
+ :param builtins.str full_name: The full name of the user of this virtual machine.
3689
3693
  :param builtins.str join_domain: The Active Directory domain for the virtual machine to join.
3694
+ :param builtins.str organization_name: The organization name this virtual machine is being installed for.
3695
+ :param builtins.str product_key: The product key for this virtual machine.
3690
3696
  :param Sequence[builtins.str] run_once_command_lists: A list of commands to run at first user logon, after guest customization.
3691
3697
  :param builtins.int time_zone: The new time zone for the virtual machine. This is a sysprep-dictated timezone code.
3692
3698
  :param builtins.str workgroup: The workgroup for this virtual machine if not joining an Active Directory domain.
@@ -3698,7 +3704,10 @@ class GetGuestOsCustomizationSpecWindowsOptionResult(dict):
3698
3704
  pulumi.set(__self__, "computer_name", computer_name)
3699
3705
  pulumi.set(__self__, "domain_admin_user", domain_admin_user)
3700
3706
  pulumi.set(__self__, "domain_ou", domain_ou)
3707
+ pulumi.set(__self__, "full_name", full_name)
3701
3708
  pulumi.set(__self__, "join_domain", join_domain)
3709
+ pulumi.set(__self__, "organization_name", organization_name)
3710
+ pulumi.set(__self__, "product_key", product_key)
3702
3711
  pulumi.set(__self__, "run_once_command_lists", run_once_command_lists)
3703
3712
  pulumi.set(__self__, "time_zone", time_zone)
3704
3713
  pulumi.set(__self__, "workgroup", workgroup)
@@ -3753,6 +3762,14 @@ class GetGuestOsCustomizationSpecWindowsOptionResult(dict):
3753
3762
  """
3754
3763
  return pulumi.get(self, "domain_ou")
3755
3764
 
3765
+ @property
3766
+ @pulumi.getter(name="fullName")
3767
+ def full_name(self) -> builtins.str:
3768
+ """
3769
+ The full name of the user of this virtual machine.
3770
+ """
3771
+ return pulumi.get(self, "full_name")
3772
+
3756
3773
  @property
3757
3774
  @pulumi.getter(name="joinDomain")
3758
3775
  def join_domain(self) -> builtins.str:
@@ -3761,6 +3778,22 @@ class GetGuestOsCustomizationSpecWindowsOptionResult(dict):
3761
3778
  """
3762
3779
  return pulumi.get(self, "join_domain")
3763
3780
 
3781
+ @property
3782
+ @pulumi.getter(name="organizationName")
3783
+ def organization_name(self) -> builtins.str:
3784
+ """
3785
+ The organization name this virtual machine is being installed for.
3786
+ """
3787
+ return pulumi.get(self, "organization_name")
3788
+
3789
+ @property
3790
+ @pulumi.getter(name="productKey")
3791
+ def product_key(self) -> builtins.str:
3792
+ """
3793
+ The product key for this virtual machine.
3794
+ """
3795
+ return pulumi.get(self, "product_key")
3796
+
3764
3797
  @property
3765
3798
  @pulumi.getter(name="runOnceCommandLists")
3766
3799
  def run_once_command_lists(self) -> Sequence[builtins.str]:
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -20,36 +20,34 @@ __all__ = ['ProviderArgs', 'Provider']
20
20
  @pulumi.input_type
21
21
  class ProviderArgs:
22
22
  def __init__(__self__, *,
23
- password: pulumi.Input[builtins.str],
24
- user: pulumi.Input[builtins.str],
25
23
  allow_unverified_ssl: Optional[pulumi.Input[builtins.bool]] = None,
26
24
  api_timeout: Optional[pulumi.Input[builtins.int]] = None,
27
25
  client_debug: Optional[pulumi.Input[builtins.bool]] = None,
28
26
  client_debug_path: Optional[pulumi.Input[builtins.str]] = None,
29
27
  client_debug_path_run: Optional[pulumi.Input[builtins.str]] = None,
28
+ password: Optional[pulumi.Input[builtins.str]] = None,
30
29
  persist_session: Optional[pulumi.Input[builtins.bool]] = None,
31
30
  rest_session_path: Optional[pulumi.Input[builtins.str]] = None,
31
+ user: Optional[pulumi.Input[builtins.str]] = None,
32
32
  vcenter_server: Optional[pulumi.Input[builtins.str]] = None,
33
33
  vim_keep_alive: Optional[pulumi.Input[builtins.int]] = None,
34
34
  vim_session_path: Optional[pulumi.Input[builtins.str]] = None,
35
35
  vsphere_server: Optional[pulumi.Input[builtins.str]] = None):
36
36
  """
37
37
  The set of arguments for constructing a Provider resource.
38
- :param pulumi.Input[builtins.str] password: The user password for vSphere API operations.
39
- :param pulumi.Input[builtins.str] user: The user name for vSphere API operations.
40
38
  :param pulumi.Input[builtins.bool] allow_unverified_ssl: If set, VMware vSphere client will permit unverifiable SSL certificates.
41
39
  :param pulumi.Input[builtins.int] api_timeout: API timeout in minutes (Default: 5)
42
40
  :param pulumi.Input[builtins.bool] client_debug: govmomi debug
43
41
  :param pulumi.Input[builtins.str] client_debug_path: govmomi debug path for debug
44
42
  :param pulumi.Input[builtins.str] client_debug_path_run: govmomi debug path for a single run
43
+ :param pulumi.Input[builtins.str] password: The user password for vSphere API operations.
45
44
  :param pulumi.Input[builtins.bool] persist_session: Persist vSphere client sessions to disk
46
45
  :param pulumi.Input[builtins.str] rest_session_path: The directory to save vSphere REST API sessions to
46
+ :param pulumi.Input[builtins.str] user: The user name for vSphere API operations.
47
47
  :param pulumi.Input[builtins.int] vim_keep_alive: Keep alive interval for the VIM session in minutes
48
48
  :param pulumi.Input[builtins.str] vim_session_path: The directory to save vSphere SOAP API sessions to
49
49
  :param pulumi.Input[builtins.str] vsphere_server: The vSphere Server name for vSphere API operations.
50
50
  """
51
- pulumi.set(__self__, "password", password)
52
- pulumi.set(__self__, "user", user)
53
51
  if allow_unverified_ssl is None:
54
52
  allow_unverified_ssl = _utilities.get_env_bool('VSPHERE_ALLOW_UNVERIFIED_SSL')
55
53
  if allow_unverified_ssl is not None:
@@ -68,6 +66,8 @@ class ProviderArgs:
68
66
  client_debug_path_run = _utilities.get_env('VSPHERE_CLIENT_DEBUG_PATH_RUN')
69
67
  if client_debug_path_run is not None:
70
68
  pulumi.set(__self__, "client_debug_path_run", client_debug_path_run)
69
+ if password is not None:
70
+ pulumi.set(__self__, "password", password)
71
71
  if persist_session is None:
72
72
  persist_session = _utilities.get_env_bool('VSPHERE_PERSIST_SESSION')
73
73
  if persist_session is not None:
@@ -76,6 +76,8 @@ class ProviderArgs:
76
76
  rest_session_path = _utilities.get_env('VSPHERE_REST_SESSION_PATH')
77
77
  if rest_session_path is not None:
78
78
  pulumi.set(__self__, "rest_session_path", rest_session_path)
79
+ if user is not None:
80
+ pulumi.set(__self__, "user", user)
79
81
  if vcenter_server is not None:
80
82
  warnings.warn("""This field has been renamed to vsphere_server.""", DeprecationWarning)
81
83
  pulumi.log.warn("""vcenter_server is deprecated: This field has been renamed to vsphere_server.""")
@@ -92,30 +94,6 @@ class ProviderArgs:
92
94
  if vsphere_server is not None:
93
95
  pulumi.set(__self__, "vsphere_server", vsphere_server)
94
96
 
95
- @property
96
- @pulumi.getter
97
- def password(self) -> pulumi.Input[builtins.str]:
98
- """
99
- The user password for vSphere API operations.
100
- """
101
- return pulumi.get(self, "password")
102
-
103
- @password.setter
104
- def password(self, value: pulumi.Input[builtins.str]):
105
- pulumi.set(self, "password", value)
106
-
107
- @property
108
- @pulumi.getter
109
- def user(self) -> pulumi.Input[builtins.str]:
110
- """
111
- The user name for vSphere API operations.
112
- """
113
- return pulumi.get(self, "user")
114
-
115
- @user.setter
116
- def user(self, value: pulumi.Input[builtins.str]):
117
- pulumi.set(self, "user", value)
118
-
119
97
  @property
120
98
  @pulumi.getter(name="allowUnverifiedSsl")
121
99
  def allow_unverified_ssl(self) -> Optional[pulumi.Input[builtins.bool]]:
@@ -176,6 +154,18 @@ class ProviderArgs:
176
154
  def client_debug_path_run(self, value: Optional[pulumi.Input[builtins.str]]):
177
155
  pulumi.set(self, "client_debug_path_run", value)
178
156
 
157
+ @property
158
+ @pulumi.getter
159
+ def password(self) -> Optional[pulumi.Input[builtins.str]]:
160
+ """
161
+ The user password for vSphere API operations.
162
+ """
163
+ return pulumi.get(self, "password")
164
+
165
+ @password.setter
166
+ def password(self, value: Optional[pulumi.Input[builtins.str]]):
167
+ pulumi.set(self, "password", value)
168
+
179
169
  @property
180
170
  @pulumi.getter(name="persistSession")
181
171
  def persist_session(self) -> Optional[pulumi.Input[builtins.bool]]:
@@ -200,6 +190,18 @@ class ProviderArgs:
200
190
  def rest_session_path(self, value: Optional[pulumi.Input[builtins.str]]):
201
191
  pulumi.set(self, "rest_session_path", value)
202
192
 
193
+ @property
194
+ @pulumi.getter
195
+ def user(self) -> Optional[pulumi.Input[builtins.str]]:
196
+ """
197
+ The user name for vSphere API operations.
198
+ """
199
+ return pulumi.get(self, "user")
200
+
201
+ @user.setter
202
+ def user(self, value: Optional[pulumi.Input[builtins.str]]):
203
+ pulumi.set(self, "user", value)
204
+
203
205
  @property
204
206
  @pulumi.getter(name="vcenterServer")
205
207
  @_utilities.deprecated("""This field has been renamed to vsphere_server.""")
@@ -292,7 +294,7 @@ class Provider(pulumi.ProviderResource):
292
294
  @overload
293
295
  def __init__(__self__,
294
296
  resource_name: str,
295
- args: ProviderArgs,
297
+ args: Optional[ProviderArgs] = None,
296
298
  opts: Optional[pulumi.ResourceOptions] = None):
297
299
  """
298
300
  The provider type for the vsphere package. By default, resources use package-wide configuration
@@ -350,8 +352,6 @@ class Provider(pulumi.ProviderResource):
350
352
  if client_debug_path_run is None:
351
353
  client_debug_path_run = _utilities.get_env('VSPHERE_CLIENT_DEBUG_PATH_RUN')
352
354
  __props__.__dict__["client_debug_path_run"] = client_debug_path_run
353
- if password is None and not opts.urn:
354
- raise TypeError("Missing required property 'password'")
355
355
  __props__.__dict__["password"] = password
356
356
  if persist_session is None:
357
357
  persist_session = _utilities.get_env_bool('VSPHERE_PERSIST_SESSION')
@@ -359,8 +359,6 @@ class Provider(pulumi.ProviderResource):
359
359
  if rest_session_path is None:
360
360
  rest_session_path = _utilities.get_env('VSPHERE_REST_SESSION_PATH')
361
361
  __props__.__dict__["rest_session_path"] = rest_session_path
362
- if user is None and not opts.urn:
363
- raise TypeError("Missing required property 'user'")
364
362
  __props__.__dict__["user"] = user
365
363
  __props__.__dict__["vcenter_server"] = vcenter_server
366
364
  if vim_keep_alive is None:
@@ -394,7 +392,7 @@ class Provider(pulumi.ProviderResource):
394
392
 
395
393
  @property
396
394
  @pulumi.getter
397
- def password(self) -> pulumi.Output[builtins.str]:
395
+ def password(self) -> pulumi.Output[Optional[builtins.str]]:
398
396
  """
399
397
  The user password for vSphere API operations.
400
398
  """
@@ -410,7 +408,7 @@ class Provider(pulumi.ProviderResource):
410
408
 
411
409
  @property
412
410
  @pulumi.getter
413
- def user(self) -> pulumi.Output[builtins.str]:
411
+ def user(self) -> pulumi.Output[Optional[builtins.str]]:
414
412
  """
415
413
  The user name for vSphere API operations.
416
414
  """
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "vsphere",
4
- "version": "4.14.0-alpha.1746734806"
4
+ "version": "4.15.0"
5
5
  }