pulumi-azure-native 2.43.0a1717057472__py3-none-any.whl → 2.44.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-azure-native might be problematic. Click here for more details.
- pulumi_azure_native/__init__.py +69 -2
- pulumi_azure_native/appcomplianceautomation/__init__.py +14 -0
- pulumi_azure_native/appcomplianceautomation/_enums.py +125 -0
- pulumi_azure_native/appcomplianceautomation/_inputs.py +40 -0
- pulumi_azure_native/appcomplianceautomation/evidence.py +363 -0
- pulumi_azure_native/appcomplianceautomation/get_evidence.py +198 -0
- pulumi_azure_native/appcomplianceautomation/get_provider_action_collection_count.py +75 -0
- pulumi_azure_native/appcomplianceautomation/get_provider_action_overview_status.py +76 -0
- pulumi_azure_native/appcomplianceautomation/get_report.py +4 -0
- pulumi_azure_native/appcomplianceautomation/get_report_scoping_questions.py +76 -0
- pulumi_azure_native/appcomplianceautomation/get_scoping_configuration.py +146 -0
- pulumi_azure_native/appcomplianceautomation/get_webhook.py +289 -0
- pulumi_azure_native/appcomplianceautomation/list_provider_action_in_use_storage_accounts.py +76 -0
- pulumi_azure_native/appcomplianceautomation/outputs.py +226 -0
- pulumi_azure_native/appcomplianceautomation/report.py +5 -1
- pulumi_azure_native/appcomplianceautomation/scoping_configuration.py +206 -0
- pulumi_azure_native/appcomplianceautomation/v20221116preview/report.py +1 -1
- pulumi_azure_native/appcomplianceautomation/v20240627/__init__.py +22 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/_enums.py +144 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/_inputs.py +215 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/evidence.py +361 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_evidence.py +196 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_provider_action_collection_count.py +73 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_provider_action_overview_status.py +74 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_report.py +296 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_report_scoping_questions.py +74 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_scoping_configuration.py +144 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/get_webhook.py +287 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/list_provider_action_in_use_storage_accounts.py +74 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/outputs.py +720 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/report.py +387 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/scoping_configuration.py +204 -0
- pulumi_azure_native/appcomplianceautomation/v20240627/webhook.py +447 -0
- pulumi_azure_native/appcomplianceautomation/webhook.py +449 -0
- pulumi_azure_native/devhub/__init__.py +5 -0
- pulumi_azure_native/devhub/_inputs.py +190 -0
- pulumi_azure_native/devhub/get_git_hub_o_auth.py +2 -2
- pulumi_azure_native/devhub/get_iac_profile.py +322 -0
- pulumi_azure_native/devhub/get_workflow.py +2 -2
- pulumi_azure_native/devhub/iac_profile.py +539 -0
- pulumi_azure_native/devhub/outputs.py +229 -0
- pulumi_azure_native/devhub/v20221011preview/workflow.py +1 -1
- pulumi_azure_native/devhub/v20230801/workflow.py +1 -1
- pulumi_azure_native/devhub/v20240501preview/__init__.py +15 -0
- pulumi_azure_native/devhub/v20240501preview/_enums.py +146 -0
- pulumi_azure_native/devhub/v20240501preview/_inputs.py +427 -0
- pulumi_azure_native/devhub/v20240501preview/get_git_hub_o_auth.py +91 -0
- pulumi_azure_native/devhub/v20240501preview/get_iac_profile.py +320 -0
- pulumi_azure_native/devhub/v20240501preview/get_workflow.py +489 -0
- pulumi_azure_native/devhub/v20240501preview/iac_profile.py +537 -0
- pulumi_azure_native/devhub/v20240501preview/outputs.py +654 -0
- pulumi_azure_native/devhub/v20240501preview/workflow.py +915 -0
- pulumi_azure_native/devhub/workflow.py +3 -3
- pulumi_azure_native/hybridcompute/__init__.py +3 -0
- pulumi_azure_native/hybridcompute/gateway.py +5 -1
- pulumi_azure_native/hybridcompute/get_gateway.py +4 -0
- pulumi_azure_native/hybridcompute/get_license.py +2 -2
- pulumi_azure_native/hybridcompute/get_license_profile.py +2 -2
- pulumi_azure_native/hybridcompute/get_machine.py +2 -2
- pulumi_azure_native/hybridcompute/get_machine_extension.py +2 -2
- pulumi_azure_native/hybridcompute/get_machine_run_command.py +2 -2
- pulumi_azure_native/hybridcompute/get_private_endpoint_connection.py +2 -2
- pulumi_azure_native/hybridcompute/get_private_link_scope.py +2 -2
- pulumi_azure_native/hybridcompute/license.py +3 -3
- pulumi_azure_native/hybridcompute/license_profile.py +3 -3
- pulumi_azure_native/hybridcompute/machine.py +3 -3
- pulumi_azure_native/hybridcompute/machine_extension.py +3 -3
- pulumi_azure_native/hybridcompute/machine_run_command.py +3 -3
- pulumi_azure_native/hybridcompute/private_endpoint_connection.py +3 -3
- pulumi_azure_native/hybridcompute/private_link_scope.py +3 -3
- pulumi_azure_native/hybridcompute/v20200802/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20200815preview/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20200815preview/machine_extension.py +1 -1
- pulumi_azure_native/hybridcompute/v20200815preview/private_endpoint_connection.py +1 -1
- pulumi_azure_native/hybridcompute/v20200815preview/private_link_scope.py +1 -1
- pulumi_azure_native/hybridcompute/v20220510preview/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20220510preview/machine_extension.py +1 -1
- pulumi_azure_native/hybridcompute/v20221227/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20221227/machine_extension.py +1 -1
- pulumi_azure_native/hybridcompute/v20221227/private_endpoint_connection.py +1 -1
- pulumi_azure_native/hybridcompute/v20221227/private_link_scope.py +1 -1
- pulumi_azure_native/hybridcompute/v20230620preview/license.py +1 -1
- pulumi_azure_native/hybridcompute/v20230620preview/license_profile.py +1 -1
- pulumi_azure_native/hybridcompute/v20230620preview/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20230620preview/machine_extension.py +1 -1
- pulumi_azure_native/hybridcompute/v20230620preview/private_endpoint_connection.py +1 -1
- pulumi_azure_native/hybridcompute/v20230620preview/private_link_scope.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/license.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/license_profile.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/machine_extension.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/machine_run_command.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/private_endpoint_connection.py +1 -1
- pulumi_azure_native/hybridcompute/v20231003preview/private_link_scope.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/gateway.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/license.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/license_profile.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/machine.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/machine_extension.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/machine_run_command.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/private_endpoint_connection.py +1 -1
- pulumi_azure_native/hybridcompute/v20240331preview/private_link_scope.py +1 -1
- pulumi_azure_native/hybridcompute/v20240520preview/__init__.py +26 -0
- pulumi_azure_native/hybridcompute/v20240520preview/_enums.py +172 -0
- pulumi_azure_native/hybridcompute/v20240520preview/_inputs.py +1408 -0
- pulumi_azure_native/hybridcompute/v20240520preview/gateway.py +311 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_gateway.py +209 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_license.py +196 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_license_profile.py +357 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_machine.py +591 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_machine_extension.py +162 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_machine_run_command.py +318 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_private_endpoint_connection.py +136 -0
- pulumi_azure_native/hybridcompute/v20240520preview/get_private_link_scope.py +157 -0
- pulumi_azure_native/hybridcompute/v20240520preview/license.py +321 -0
- pulumi_azure_native/hybridcompute/v20240520preview/license_profile.py +500 -0
- pulumi_azure_native/hybridcompute/v20240520preview/machine.py +850 -0
- pulumi_azure_native/hybridcompute/v20240520preview/machine_extension.py +274 -0
- pulumi_azure_native/hybridcompute/v20240520preview/machine_run_command.py +587 -0
- pulumi_azure_native/hybridcompute/v20240520preview/outputs.py +3204 -0
- pulumi_azure_native/hybridcompute/v20240520preview/private_endpoint_connection.py +215 -0
- pulumi_azure_native/hybridcompute/v20240520preview/private_link_scope.py +253 -0
- pulumi_azure_native/pulumi-plugin.json +1 -1
- pulumi_azure_native/scvmm/get_guest_agent.py +2 -2
- pulumi_azure_native/scvmm/get_vm_instance_guest_agent.py +0 -4
- pulumi_azure_native/scvmm/guest_agent.py +2 -2
- pulumi_azure_native/scvmm/v20231007/__init__.py +2 -2
- pulumi_azure_native/scvmm/v20231007/_enums.py +49 -4
- pulumi_azure_native/scvmm/v20231007/_inputs.py +56 -145
- pulumi_azure_native/scvmm/v20231007/cloud.py +6 -6
- pulumi_azure_native/scvmm/v20231007/get_cloud.py +10 -10
- pulumi_azure_native/scvmm/v20231007/{get_vm_instance_guest_agent.py → get_guest_agent.py} +16 -16
- pulumi_azure_native/scvmm/v20231007/get_inventory_item.py +4 -4
- pulumi_azure_native/scvmm/v20231007/get_virtual_machine_instance.py +4 -4
- pulumi_azure_native/scvmm/v20231007/get_vmm_server.py +6 -6
- pulumi_azure_native/scvmm/v20231007/{vm_instance_guest_agent.py → guest_agent.py} +18 -18
- pulumi_azure_native/scvmm/v20231007/inventory_item.py +5 -5
- pulumi_azure_native/scvmm/v20231007/outputs.py +96 -100
- pulumi_azure_native/scvmm/v20231007/virtual_machine_instance.py +19 -19
- pulumi_azure_native/scvmm/v20231007/vmm_server.py +13 -13
- pulumi_azure_native/scvmm/vm_instance_guest_agent.py +0 -4
- pulumi_azure_native/storage/v20230501/_enums.py +2 -0
- pulumi_azure_native/verifiedid/__init__.py +18 -0
- pulumi_azure_native/verifiedid/authority.py +234 -0
- pulumi_azure_native/verifiedid/get_authority.py +159 -0
- pulumi_azure_native/verifiedid/outputs.py +125 -0
- pulumi_azure_native/verifiedid/v20240126preview/__init__.py +10 -0
- pulumi_azure_native/verifiedid/v20240126preview/authority.py +232 -0
- pulumi_azure_native/verifiedid/v20240126preview/get_authority.py +157 -0
- pulumi_azure_native/verifiedid/v20240126preview/outputs.py +125 -0
- pulumi_azure_native/virtualmachineimages/__init__.py +3 -0
- pulumi_azure_native/virtualmachineimages/get_trigger.py +2 -2
- pulumi_azure_native/virtualmachineimages/get_virtual_machine_image_template.py +2 -2
- pulumi_azure_native/virtualmachineimages/trigger.py +3 -3
- pulumi_azure_native/virtualmachineimages/v20220701/trigger.py +1 -1
- pulumi_azure_native/virtualmachineimages/v20220701/virtual_machine_image_template.py +1 -1
- pulumi_azure_native/virtualmachineimages/v20230701/trigger.py +1 -1
- pulumi_azure_native/virtualmachineimages/v20230701/virtual_machine_image_template.py +1 -1
- pulumi_azure_native/virtualmachineimages/v20240201/__init__.py +14 -0
- pulumi_azure_native/virtualmachineimages/v20240201/_enums.py +60 -0
- pulumi_azure_native/virtualmachineimages/v20240201/_inputs.py +1895 -0
- pulumi_azure_native/virtualmachineimages/v20240201/get_trigger.py +162 -0
- pulumi_azure_native/virtualmachineimages/v20240201/get_virtual_machine_image_template.py +352 -0
- pulumi_azure_native/virtualmachineimages/v20240201/outputs.py +2401 -0
- pulumi_azure_native/virtualmachineimages/v20240201/trigger.py +235 -0
- pulumi_azure_native/virtualmachineimages/v20240201/virtual_machine_image_template.py +619 -0
- pulumi_azure_native/virtualmachineimages/virtual_machine_image_template.py +3 -3
- {pulumi_azure_native-2.43.0a1717057472.dist-info → pulumi_azure_native-2.44.0.dist-info}/METADATA +1 -1
- {pulumi_azure_native-2.43.0a1717057472.dist-info → pulumi_azure_native-2.44.0.dist-info}/RECORD +171 -97
- {pulumi_azure_native-2.43.0a1717057472.dist-info → pulumi_azure_native-2.44.0.dist-info}/WHEEL +0 -0
- {pulumi_azure_native-2.43.0a1717057472.dist-info → pulumi_azure_native-2.44.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,1895 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import copy
|
|
6
|
+
import warnings
|
|
7
|
+
import pulumi
|
|
8
|
+
import pulumi.runtime
|
|
9
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
10
|
+
from ... import _utilities
|
|
11
|
+
from ._enums import *
|
|
12
|
+
|
|
13
|
+
__all__ = [
|
|
14
|
+
'DistributeVersionerLatestArgs',
|
|
15
|
+
'DistributeVersionerSourceArgs',
|
|
16
|
+
'ImageTemplateAutoRunArgs',
|
|
17
|
+
'ImageTemplateFileCustomizerArgs',
|
|
18
|
+
'ImageTemplateFileValidatorArgs',
|
|
19
|
+
'ImageTemplateIdentityArgs',
|
|
20
|
+
'ImageTemplateManagedImageDistributorArgs',
|
|
21
|
+
'ImageTemplateManagedImageSourceArgs',
|
|
22
|
+
'ImageTemplatePlatformImageSourceArgs',
|
|
23
|
+
'ImageTemplatePowerShellCustomizerArgs',
|
|
24
|
+
'ImageTemplatePowerShellValidatorArgs',
|
|
25
|
+
'ImageTemplatePropertiesErrorHandlingArgs',
|
|
26
|
+
'ImageTemplatePropertiesOptimizeArgs',
|
|
27
|
+
'ImageTemplatePropertiesValidateArgs',
|
|
28
|
+
'ImageTemplatePropertiesVmBootArgs',
|
|
29
|
+
'ImageTemplateRestartCustomizerArgs',
|
|
30
|
+
'ImageTemplateSharedImageDistributorArgs',
|
|
31
|
+
'ImageTemplateSharedImageVersionSourceArgs',
|
|
32
|
+
'ImageTemplateShellCustomizerArgs',
|
|
33
|
+
'ImageTemplateShellValidatorArgs',
|
|
34
|
+
'ImageTemplateVhdDistributorArgs',
|
|
35
|
+
'ImageTemplateVmProfileArgs',
|
|
36
|
+
'ImageTemplateWindowsUpdateCustomizerArgs',
|
|
37
|
+
'PlatformImagePurchasePlanArgs',
|
|
38
|
+
'TargetRegionArgs',
|
|
39
|
+
'VirtualNetworkConfigArgs',
|
|
40
|
+
]
|
|
41
|
+
|
|
42
|
+
@pulumi.input_type
|
|
43
|
+
class DistributeVersionerLatestArgs:
|
|
44
|
+
def __init__(__self__, *,
|
|
45
|
+
scheme: pulumi.Input[str],
|
|
46
|
+
major: Optional[pulumi.Input[int]] = None):
|
|
47
|
+
"""
|
|
48
|
+
Generates version number that will be latest based on existing version numbers.
|
|
49
|
+
:param pulumi.Input[str] scheme: Version numbering scheme to be used.
|
|
50
|
+
Expected value is 'Latest'.
|
|
51
|
+
:param pulumi.Input[int] major: Major version for the generated version number. Determine what is "latest" based on versions with this value as the major version. -1 is equivalent to leaving it unset.
|
|
52
|
+
"""
|
|
53
|
+
pulumi.set(__self__, "scheme", 'Latest')
|
|
54
|
+
if major is None:
|
|
55
|
+
major = -1
|
|
56
|
+
if major is not None:
|
|
57
|
+
pulumi.set(__self__, "major", major)
|
|
58
|
+
|
|
59
|
+
@property
|
|
60
|
+
@pulumi.getter
|
|
61
|
+
def scheme(self) -> pulumi.Input[str]:
|
|
62
|
+
"""
|
|
63
|
+
Version numbering scheme to be used.
|
|
64
|
+
Expected value is 'Latest'.
|
|
65
|
+
"""
|
|
66
|
+
return pulumi.get(self, "scheme")
|
|
67
|
+
|
|
68
|
+
@scheme.setter
|
|
69
|
+
def scheme(self, value: pulumi.Input[str]):
|
|
70
|
+
pulumi.set(self, "scheme", value)
|
|
71
|
+
|
|
72
|
+
@property
|
|
73
|
+
@pulumi.getter
|
|
74
|
+
def major(self) -> Optional[pulumi.Input[int]]:
|
|
75
|
+
"""
|
|
76
|
+
Major version for the generated version number. Determine what is "latest" based on versions with this value as the major version. -1 is equivalent to leaving it unset.
|
|
77
|
+
"""
|
|
78
|
+
return pulumi.get(self, "major")
|
|
79
|
+
|
|
80
|
+
@major.setter
|
|
81
|
+
def major(self, value: Optional[pulumi.Input[int]]):
|
|
82
|
+
pulumi.set(self, "major", value)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
@pulumi.input_type
|
|
86
|
+
class DistributeVersionerSourceArgs:
|
|
87
|
+
def __init__(__self__, *,
|
|
88
|
+
scheme: pulumi.Input[str]):
|
|
89
|
+
"""
|
|
90
|
+
Generates version number based on version number of source image
|
|
91
|
+
:param pulumi.Input[str] scheme: Version numbering scheme to be used.
|
|
92
|
+
Expected value is 'Source'.
|
|
93
|
+
"""
|
|
94
|
+
pulumi.set(__self__, "scheme", 'Source')
|
|
95
|
+
|
|
96
|
+
@property
|
|
97
|
+
@pulumi.getter
|
|
98
|
+
def scheme(self) -> pulumi.Input[str]:
|
|
99
|
+
"""
|
|
100
|
+
Version numbering scheme to be used.
|
|
101
|
+
Expected value is 'Source'.
|
|
102
|
+
"""
|
|
103
|
+
return pulumi.get(self, "scheme")
|
|
104
|
+
|
|
105
|
+
@scheme.setter
|
|
106
|
+
def scheme(self, value: pulumi.Input[str]):
|
|
107
|
+
pulumi.set(self, "scheme", value)
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
@pulumi.input_type
|
|
111
|
+
class ImageTemplateAutoRunArgs:
|
|
112
|
+
def __init__(__self__, *,
|
|
113
|
+
state: Optional[pulumi.Input['AutoRunState']] = None):
|
|
114
|
+
"""
|
|
115
|
+
Indicates if the image template needs to be built on create/update
|
|
116
|
+
:param pulumi.Input['AutoRunState'] state: Enabling this field will trigger an automatic build on image template creation or update.
|
|
117
|
+
"""
|
|
118
|
+
if state is not None:
|
|
119
|
+
pulumi.set(__self__, "state", state)
|
|
120
|
+
|
|
121
|
+
@property
|
|
122
|
+
@pulumi.getter
|
|
123
|
+
def state(self) -> Optional[pulumi.Input['AutoRunState']]:
|
|
124
|
+
"""
|
|
125
|
+
Enabling this field will trigger an automatic build on image template creation or update.
|
|
126
|
+
"""
|
|
127
|
+
return pulumi.get(self, "state")
|
|
128
|
+
|
|
129
|
+
@state.setter
|
|
130
|
+
def state(self, value: Optional[pulumi.Input['AutoRunState']]):
|
|
131
|
+
pulumi.set(self, "state", value)
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
@pulumi.input_type
|
|
135
|
+
class ImageTemplateFileCustomizerArgs:
|
|
136
|
+
def __init__(__self__, *,
|
|
137
|
+
type: pulumi.Input[str],
|
|
138
|
+
destination: Optional[pulumi.Input[str]] = None,
|
|
139
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
140
|
+
sha256_checksum: Optional[pulumi.Input[str]] = None,
|
|
141
|
+
source_uri: Optional[pulumi.Input[str]] = None):
|
|
142
|
+
"""
|
|
143
|
+
Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner
|
|
144
|
+
:param pulumi.Input[str] type: The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
145
|
+
Expected value is 'File'.
|
|
146
|
+
:param pulumi.Input[str] destination: The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM
|
|
147
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this customization step does
|
|
148
|
+
:param pulumi.Input[str] sha256_checksum: SHA256 checksum of the file provided in the sourceUri field above
|
|
149
|
+
:param pulumi.Input[str] source_uri: The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc
|
|
150
|
+
"""
|
|
151
|
+
pulumi.set(__self__, "type", 'File')
|
|
152
|
+
if destination is not None:
|
|
153
|
+
pulumi.set(__self__, "destination", destination)
|
|
154
|
+
if name is not None:
|
|
155
|
+
pulumi.set(__self__, "name", name)
|
|
156
|
+
if sha256_checksum is None:
|
|
157
|
+
sha256_checksum = ''
|
|
158
|
+
if sha256_checksum is not None:
|
|
159
|
+
pulumi.set(__self__, "sha256_checksum", sha256_checksum)
|
|
160
|
+
if source_uri is not None:
|
|
161
|
+
pulumi.set(__self__, "source_uri", source_uri)
|
|
162
|
+
|
|
163
|
+
@property
|
|
164
|
+
@pulumi.getter
|
|
165
|
+
def type(self) -> pulumi.Input[str]:
|
|
166
|
+
"""
|
|
167
|
+
The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
168
|
+
Expected value is 'File'.
|
|
169
|
+
"""
|
|
170
|
+
return pulumi.get(self, "type")
|
|
171
|
+
|
|
172
|
+
@type.setter
|
|
173
|
+
def type(self, value: pulumi.Input[str]):
|
|
174
|
+
pulumi.set(self, "type", value)
|
|
175
|
+
|
|
176
|
+
@property
|
|
177
|
+
@pulumi.getter
|
|
178
|
+
def destination(self) -> Optional[pulumi.Input[str]]:
|
|
179
|
+
"""
|
|
180
|
+
The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM
|
|
181
|
+
"""
|
|
182
|
+
return pulumi.get(self, "destination")
|
|
183
|
+
|
|
184
|
+
@destination.setter
|
|
185
|
+
def destination(self, value: Optional[pulumi.Input[str]]):
|
|
186
|
+
pulumi.set(self, "destination", value)
|
|
187
|
+
|
|
188
|
+
@property
|
|
189
|
+
@pulumi.getter
|
|
190
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
191
|
+
"""
|
|
192
|
+
Friendly Name to provide context on what this customization step does
|
|
193
|
+
"""
|
|
194
|
+
return pulumi.get(self, "name")
|
|
195
|
+
|
|
196
|
+
@name.setter
|
|
197
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
198
|
+
pulumi.set(self, "name", value)
|
|
199
|
+
|
|
200
|
+
@property
|
|
201
|
+
@pulumi.getter(name="sha256Checksum")
|
|
202
|
+
def sha256_checksum(self) -> Optional[pulumi.Input[str]]:
|
|
203
|
+
"""
|
|
204
|
+
SHA256 checksum of the file provided in the sourceUri field above
|
|
205
|
+
"""
|
|
206
|
+
return pulumi.get(self, "sha256_checksum")
|
|
207
|
+
|
|
208
|
+
@sha256_checksum.setter
|
|
209
|
+
def sha256_checksum(self, value: Optional[pulumi.Input[str]]):
|
|
210
|
+
pulumi.set(self, "sha256_checksum", value)
|
|
211
|
+
|
|
212
|
+
@property
|
|
213
|
+
@pulumi.getter(name="sourceUri")
|
|
214
|
+
def source_uri(self) -> Optional[pulumi.Input[str]]:
|
|
215
|
+
"""
|
|
216
|
+
The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc
|
|
217
|
+
"""
|
|
218
|
+
return pulumi.get(self, "source_uri")
|
|
219
|
+
|
|
220
|
+
@source_uri.setter
|
|
221
|
+
def source_uri(self, value: Optional[pulumi.Input[str]]):
|
|
222
|
+
pulumi.set(self, "source_uri", value)
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
@pulumi.input_type
|
|
226
|
+
class ImageTemplateFileValidatorArgs:
|
|
227
|
+
def __init__(__self__, *,
|
|
228
|
+
type: pulumi.Input[str],
|
|
229
|
+
destination: Optional[pulumi.Input[str]] = None,
|
|
230
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
231
|
+
sha256_checksum: Optional[pulumi.Input[str]] = None,
|
|
232
|
+
source_uri: Optional[pulumi.Input[str]] = None):
|
|
233
|
+
"""
|
|
234
|
+
Uploads files required for validation to VMs (Linux, Windows). Corresponds to Packer file provisioner
|
|
235
|
+
:param pulumi.Input[str] type: The type of validation you want to use on the Image. For example, "Shell" can be shell validation
|
|
236
|
+
Expected value is 'File'.
|
|
237
|
+
:param pulumi.Input[str] destination: The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM
|
|
238
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this validation step does
|
|
239
|
+
:param pulumi.Input[str] sha256_checksum: SHA256 checksum of the file provided in the sourceUri field above
|
|
240
|
+
:param pulumi.Input[str] source_uri: The URI of the file to be uploaded to the VM for validation. It can be a github link, Azure Storage URI (authorized or SAS), etc
|
|
241
|
+
"""
|
|
242
|
+
pulumi.set(__self__, "type", 'File')
|
|
243
|
+
if destination is not None:
|
|
244
|
+
pulumi.set(__self__, "destination", destination)
|
|
245
|
+
if name is not None:
|
|
246
|
+
pulumi.set(__self__, "name", name)
|
|
247
|
+
if sha256_checksum is None:
|
|
248
|
+
sha256_checksum = ''
|
|
249
|
+
if sha256_checksum is not None:
|
|
250
|
+
pulumi.set(__self__, "sha256_checksum", sha256_checksum)
|
|
251
|
+
if source_uri is not None:
|
|
252
|
+
pulumi.set(__self__, "source_uri", source_uri)
|
|
253
|
+
|
|
254
|
+
@property
|
|
255
|
+
@pulumi.getter
|
|
256
|
+
def type(self) -> pulumi.Input[str]:
|
|
257
|
+
"""
|
|
258
|
+
The type of validation you want to use on the Image. For example, "Shell" can be shell validation
|
|
259
|
+
Expected value is 'File'.
|
|
260
|
+
"""
|
|
261
|
+
return pulumi.get(self, "type")
|
|
262
|
+
|
|
263
|
+
@type.setter
|
|
264
|
+
def type(self, value: pulumi.Input[str]):
|
|
265
|
+
pulumi.set(self, "type", value)
|
|
266
|
+
|
|
267
|
+
@property
|
|
268
|
+
@pulumi.getter
|
|
269
|
+
def destination(self) -> Optional[pulumi.Input[str]]:
|
|
270
|
+
"""
|
|
271
|
+
The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM
|
|
272
|
+
"""
|
|
273
|
+
return pulumi.get(self, "destination")
|
|
274
|
+
|
|
275
|
+
@destination.setter
|
|
276
|
+
def destination(self, value: Optional[pulumi.Input[str]]):
|
|
277
|
+
pulumi.set(self, "destination", value)
|
|
278
|
+
|
|
279
|
+
@property
|
|
280
|
+
@pulumi.getter
|
|
281
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
282
|
+
"""
|
|
283
|
+
Friendly Name to provide context on what this validation step does
|
|
284
|
+
"""
|
|
285
|
+
return pulumi.get(self, "name")
|
|
286
|
+
|
|
287
|
+
@name.setter
|
|
288
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
289
|
+
pulumi.set(self, "name", value)
|
|
290
|
+
|
|
291
|
+
@property
|
|
292
|
+
@pulumi.getter(name="sha256Checksum")
|
|
293
|
+
def sha256_checksum(self) -> Optional[pulumi.Input[str]]:
|
|
294
|
+
"""
|
|
295
|
+
SHA256 checksum of the file provided in the sourceUri field above
|
|
296
|
+
"""
|
|
297
|
+
return pulumi.get(self, "sha256_checksum")
|
|
298
|
+
|
|
299
|
+
@sha256_checksum.setter
|
|
300
|
+
def sha256_checksum(self, value: Optional[pulumi.Input[str]]):
|
|
301
|
+
pulumi.set(self, "sha256_checksum", value)
|
|
302
|
+
|
|
303
|
+
@property
|
|
304
|
+
@pulumi.getter(name="sourceUri")
|
|
305
|
+
def source_uri(self) -> Optional[pulumi.Input[str]]:
|
|
306
|
+
"""
|
|
307
|
+
The URI of the file to be uploaded to the VM for validation. It can be a github link, Azure Storage URI (authorized or SAS), etc
|
|
308
|
+
"""
|
|
309
|
+
return pulumi.get(self, "source_uri")
|
|
310
|
+
|
|
311
|
+
@source_uri.setter
|
|
312
|
+
def source_uri(self, value: Optional[pulumi.Input[str]]):
|
|
313
|
+
pulumi.set(self, "source_uri", value)
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
@pulumi.input_type
|
|
317
|
+
class ImageTemplateIdentityArgs:
|
|
318
|
+
def __init__(__self__, *,
|
|
319
|
+
type: Optional[pulumi.Input['ResourceIdentityType']] = None,
|
|
320
|
+
user_assigned_identities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
|
321
|
+
"""
|
|
322
|
+
Identity for the image template.
|
|
323
|
+
:param pulumi.Input['ResourceIdentityType'] type: The type of identity used for the image template. The type 'None' will remove any identities from the image template.
|
|
324
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] user_assigned_identities: The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
|
|
325
|
+
"""
|
|
326
|
+
if type is not None:
|
|
327
|
+
pulumi.set(__self__, "type", type)
|
|
328
|
+
if user_assigned_identities is not None:
|
|
329
|
+
pulumi.set(__self__, "user_assigned_identities", user_assigned_identities)
|
|
330
|
+
|
|
331
|
+
@property
|
|
332
|
+
@pulumi.getter
|
|
333
|
+
def type(self) -> Optional[pulumi.Input['ResourceIdentityType']]:
|
|
334
|
+
"""
|
|
335
|
+
The type of identity used for the image template. The type 'None' will remove any identities from the image template.
|
|
336
|
+
"""
|
|
337
|
+
return pulumi.get(self, "type")
|
|
338
|
+
|
|
339
|
+
@type.setter
|
|
340
|
+
def type(self, value: Optional[pulumi.Input['ResourceIdentityType']]):
|
|
341
|
+
pulumi.set(self, "type", value)
|
|
342
|
+
|
|
343
|
+
@property
|
|
344
|
+
@pulumi.getter(name="userAssignedIdentities")
|
|
345
|
+
def user_assigned_identities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
346
|
+
"""
|
|
347
|
+
The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
|
|
348
|
+
"""
|
|
349
|
+
return pulumi.get(self, "user_assigned_identities")
|
|
350
|
+
|
|
351
|
+
@user_assigned_identities.setter
|
|
352
|
+
def user_assigned_identities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
353
|
+
pulumi.set(self, "user_assigned_identities", value)
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
@pulumi.input_type
|
|
357
|
+
class ImageTemplateManagedImageDistributorArgs:
|
|
358
|
+
def __init__(__self__, *,
|
|
359
|
+
image_id: pulumi.Input[str],
|
|
360
|
+
location: pulumi.Input[str],
|
|
361
|
+
run_output_name: pulumi.Input[str],
|
|
362
|
+
type: pulumi.Input[str],
|
|
363
|
+
artifact_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
|
|
364
|
+
"""
|
|
365
|
+
Distribute as a Managed Disk Image.
|
|
366
|
+
:param pulumi.Input[str] image_id: Resource Id of the Managed Disk Image
|
|
367
|
+
:param pulumi.Input[str] location: Azure location for the image, should match if image already exists
|
|
368
|
+
:param pulumi.Input[str] run_output_name: The name to be used for the associated RunOutput.
|
|
369
|
+
:param pulumi.Input[str] type: Type of distribution.
|
|
370
|
+
Expected value is 'ManagedImage'.
|
|
371
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] artifact_tags: Tags that will be applied to the artifact once it has been created/updated by the distributor.
|
|
372
|
+
"""
|
|
373
|
+
pulumi.set(__self__, "image_id", image_id)
|
|
374
|
+
pulumi.set(__self__, "location", location)
|
|
375
|
+
pulumi.set(__self__, "run_output_name", run_output_name)
|
|
376
|
+
pulumi.set(__self__, "type", 'ManagedImage')
|
|
377
|
+
if artifact_tags is not None:
|
|
378
|
+
pulumi.set(__self__, "artifact_tags", artifact_tags)
|
|
379
|
+
|
|
380
|
+
@property
|
|
381
|
+
@pulumi.getter(name="imageId")
|
|
382
|
+
def image_id(self) -> pulumi.Input[str]:
|
|
383
|
+
"""
|
|
384
|
+
Resource Id of the Managed Disk Image
|
|
385
|
+
"""
|
|
386
|
+
return pulumi.get(self, "image_id")
|
|
387
|
+
|
|
388
|
+
@image_id.setter
|
|
389
|
+
def image_id(self, value: pulumi.Input[str]):
|
|
390
|
+
pulumi.set(self, "image_id", value)
|
|
391
|
+
|
|
392
|
+
@property
|
|
393
|
+
@pulumi.getter
|
|
394
|
+
def location(self) -> pulumi.Input[str]:
|
|
395
|
+
"""
|
|
396
|
+
Azure location for the image, should match if image already exists
|
|
397
|
+
"""
|
|
398
|
+
return pulumi.get(self, "location")
|
|
399
|
+
|
|
400
|
+
@location.setter
|
|
401
|
+
def location(self, value: pulumi.Input[str]):
|
|
402
|
+
pulumi.set(self, "location", value)
|
|
403
|
+
|
|
404
|
+
@property
|
|
405
|
+
@pulumi.getter(name="runOutputName")
|
|
406
|
+
def run_output_name(self) -> pulumi.Input[str]:
|
|
407
|
+
"""
|
|
408
|
+
The name to be used for the associated RunOutput.
|
|
409
|
+
"""
|
|
410
|
+
return pulumi.get(self, "run_output_name")
|
|
411
|
+
|
|
412
|
+
@run_output_name.setter
|
|
413
|
+
def run_output_name(self, value: pulumi.Input[str]):
|
|
414
|
+
pulumi.set(self, "run_output_name", value)
|
|
415
|
+
|
|
416
|
+
@property
|
|
417
|
+
@pulumi.getter
|
|
418
|
+
def type(self) -> pulumi.Input[str]:
|
|
419
|
+
"""
|
|
420
|
+
Type of distribution.
|
|
421
|
+
Expected value is 'ManagedImage'.
|
|
422
|
+
"""
|
|
423
|
+
return pulumi.get(self, "type")
|
|
424
|
+
|
|
425
|
+
@type.setter
|
|
426
|
+
def type(self, value: pulumi.Input[str]):
|
|
427
|
+
pulumi.set(self, "type", value)
|
|
428
|
+
|
|
429
|
+
@property
|
|
430
|
+
@pulumi.getter(name="artifactTags")
|
|
431
|
+
def artifact_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
432
|
+
"""
|
|
433
|
+
Tags that will be applied to the artifact once it has been created/updated by the distributor.
|
|
434
|
+
"""
|
|
435
|
+
return pulumi.get(self, "artifact_tags")
|
|
436
|
+
|
|
437
|
+
@artifact_tags.setter
|
|
438
|
+
def artifact_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
439
|
+
pulumi.set(self, "artifact_tags", value)
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
@pulumi.input_type
|
|
443
|
+
class ImageTemplateManagedImageSourceArgs:
|
|
444
|
+
def __init__(__self__, *,
|
|
445
|
+
image_id: pulumi.Input[str],
|
|
446
|
+
type: pulumi.Input[str]):
|
|
447
|
+
"""
|
|
448
|
+
Describes an image source that is a managed image in customer subscription. This image must reside in the same subscription and region as the Image Builder template.
|
|
449
|
+
:param pulumi.Input[str] image_id: ARM resource id of the managed image in customer subscription
|
|
450
|
+
:param pulumi.Input[str] type: Specifies the type of source image you want to start with.
|
|
451
|
+
Expected value is 'ManagedImage'.
|
|
452
|
+
"""
|
|
453
|
+
pulumi.set(__self__, "image_id", image_id)
|
|
454
|
+
pulumi.set(__self__, "type", 'ManagedImage')
|
|
455
|
+
|
|
456
|
+
@property
|
|
457
|
+
@pulumi.getter(name="imageId")
|
|
458
|
+
def image_id(self) -> pulumi.Input[str]:
|
|
459
|
+
"""
|
|
460
|
+
ARM resource id of the managed image in customer subscription
|
|
461
|
+
"""
|
|
462
|
+
return pulumi.get(self, "image_id")
|
|
463
|
+
|
|
464
|
+
@image_id.setter
|
|
465
|
+
def image_id(self, value: pulumi.Input[str]):
|
|
466
|
+
pulumi.set(self, "image_id", value)
|
|
467
|
+
|
|
468
|
+
@property
|
|
469
|
+
@pulumi.getter
|
|
470
|
+
def type(self) -> pulumi.Input[str]:
|
|
471
|
+
"""
|
|
472
|
+
Specifies the type of source image you want to start with.
|
|
473
|
+
Expected value is 'ManagedImage'.
|
|
474
|
+
"""
|
|
475
|
+
return pulumi.get(self, "type")
|
|
476
|
+
|
|
477
|
+
@type.setter
|
|
478
|
+
def type(self, value: pulumi.Input[str]):
|
|
479
|
+
pulumi.set(self, "type", value)
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
@pulumi.input_type
|
|
483
|
+
class ImageTemplatePlatformImageSourceArgs:
|
|
484
|
+
def __init__(__self__, *,
|
|
485
|
+
type: pulumi.Input[str],
|
|
486
|
+
offer: Optional[pulumi.Input[str]] = None,
|
|
487
|
+
plan_info: Optional[pulumi.Input['PlatformImagePurchasePlanArgs']] = None,
|
|
488
|
+
publisher: Optional[pulumi.Input[str]] = None,
|
|
489
|
+
sku: Optional[pulumi.Input[str]] = None,
|
|
490
|
+
version: Optional[pulumi.Input[str]] = None):
|
|
491
|
+
"""
|
|
492
|
+
Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
493
|
+
:param pulumi.Input[str] type: Specifies the type of source image you want to start with.
|
|
494
|
+
Expected value is 'PlatformImage'.
|
|
495
|
+
:param pulumi.Input[str] offer: Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
496
|
+
:param pulumi.Input['PlatformImagePurchasePlanArgs'] plan_info: Optional configuration of purchase plan for platform image.
|
|
497
|
+
:param pulumi.Input[str] publisher: Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
498
|
+
:param pulumi.Input[str] sku: Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
499
|
+
:param pulumi.Input[str] version: Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted.
|
|
500
|
+
"""
|
|
501
|
+
pulumi.set(__self__, "type", 'PlatformImage')
|
|
502
|
+
if offer is not None:
|
|
503
|
+
pulumi.set(__self__, "offer", offer)
|
|
504
|
+
if plan_info is not None:
|
|
505
|
+
pulumi.set(__self__, "plan_info", plan_info)
|
|
506
|
+
if publisher is not None:
|
|
507
|
+
pulumi.set(__self__, "publisher", publisher)
|
|
508
|
+
if sku is not None:
|
|
509
|
+
pulumi.set(__self__, "sku", sku)
|
|
510
|
+
if version is not None:
|
|
511
|
+
pulumi.set(__self__, "version", version)
|
|
512
|
+
|
|
513
|
+
@property
|
|
514
|
+
@pulumi.getter
|
|
515
|
+
def type(self) -> pulumi.Input[str]:
|
|
516
|
+
"""
|
|
517
|
+
Specifies the type of source image you want to start with.
|
|
518
|
+
Expected value is 'PlatformImage'.
|
|
519
|
+
"""
|
|
520
|
+
return pulumi.get(self, "type")
|
|
521
|
+
|
|
522
|
+
@type.setter
|
|
523
|
+
def type(self, value: pulumi.Input[str]):
|
|
524
|
+
pulumi.set(self, "type", value)
|
|
525
|
+
|
|
526
|
+
@property
|
|
527
|
+
@pulumi.getter
|
|
528
|
+
def offer(self) -> Optional[pulumi.Input[str]]:
|
|
529
|
+
"""
|
|
530
|
+
Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
531
|
+
"""
|
|
532
|
+
return pulumi.get(self, "offer")
|
|
533
|
+
|
|
534
|
+
@offer.setter
|
|
535
|
+
def offer(self, value: Optional[pulumi.Input[str]]):
|
|
536
|
+
pulumi.set(self, "offer", value)
|
|
537
|
+
|
|
538
|
+
@property
|
|
539
|
+
@pulumi.getter(name="planInfo")
|
|
540
|
+
def plan_info(self) -> Optional[pulumi.Input['PlatformImagePurchasePlanArgs']]:
|
|
541
|
+
"""
|
|
542
|
+
Optional configuration of purchase plan for platform image.
|
|
543
|
+
"""
|
|
544
|
+
return pulumi.get(self, "plan_info")
|
|
545
|
+
|
|
546
|
+
@plan_info.setter
|
|
547
|
+
def plan_info(self, value: Optional[pulumi.Input['PlatformImagePurchasePlanArgs']]):
|
|
548
|
+
pulumi.set(self, "plan_info", value)
|
|
549
|
+
|
|
550
|
+
@property
|
|
551
|
+
@pulumi.getter
|
|
552
|
+
def publisher(self) -> Optional[pulumi.Input[str]]:
|
|
553
|
+
"""
|
|
554
|
+
Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
555
|
+
"""
|
|
556
|
+
return pulumi.get(self, "publisher")
|
|
557
|
+
|
|
558
|
+
@publisher.setter
|
|
559
|
+
def publisher(self, value: Optional[pulumi.Input[str]]):
|
|
560
|
+
pulumi.set(self, "publisher", value)
|
|
561
|
+
|
|
562
|
+
@property
|
|
563
|
+
@pulumi.getter
|
|
564
|
+
def sku(self) -> Optional[pulumi.Input[str]]:
|
|
565
|
+
"""
|
|
566
|
+
Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).
|
|
567
|
+
"""
|
|
568
|
+
return pulumi.get(self, "sku")
|
|
569
|
+
|
|
570
|
+
@sku.setter
|
|
571
|
+
def sku(self, value: Optional[pulumi.Input[str]]):
|
|
572
|
+
pulumi.set(self, "sku", value)
|
|
573
|
+
|
|
574
|
+
@property
|
|
575
|
+
@pulumi.getter
|
|
576
|
+
def version(self) -> Optional[pulumi.Input[str]]:
|
|
577
|
+
"""
|
|
578
|
+
Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted.
|
|
579
|
+
"""
|
|
580
|
+
return pulumi.get(self, "version")
|
|
581
|
+
|
|
582
|
+
@version.setter
|
|
583
|
+
def version(self, value: Optional[pulumi.Input[str]]):
|
|
584
|
+
pulumi.set(self, "version", value)
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
@pulumi.input_type
|
|
588
|
+
class ImageTemplatePowerShellCustomizerArgs:
|
|
589
|
+
def __init__(__self__, *,
|
|
590
|
+
type: pulumi.Input[str],
|
|
591
|
+
inline: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
592
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
593
|
+
run_as_system: Optional[pulumi.Input[bool]] = None,
|
|
594
|
+
run_elevated: Optional[pulumi.Input[bool]] = None,
|
|
595
|
+
script_uri: Optional[pulumi.Input[str]] = None,
|
|
596
|
+
sha256_checksum: Optional[pulumi.Input[str]] = None,
|
|
597
|
+
valid_exit_codes: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None):
|
|
598
|
+
"""
|
|
599
|
+
Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.
|
|
600
|
+
:param pulumi.Input[str] type: The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
601
|
+
Expected value is 'PowerShell'.
|
|
602
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] inline: Array of PowerShell commands to execute
|
|
603
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this customization step does
|
|
604
|
+
:param pulumi.Input[bool] run_as_system: If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.
|
|
605
|
+
:param pulumi.Input[bool] run_elevated: If specified, the PowerShell script will be run with elevated privileges
|
|
606
|
+
:param pulumi.Input[str] script_uri: URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc
|
|
607
|
+
:param pulumi.Input[str] sha256_checksum: SHA256 checksum of the power shell script provided in the scriptUri field above
|
|
608
|
+
:param pulumi.Input[Sequence[pulumi.Input[int]]] valid_exit_codes: Valid exit codes for the PowerShell script. [Default: 0]
|
|
609
|
+
"""
|
|
610
|
+
pulumi.set(__self__, "type", 'PowerShell')
|
|
611
|
+
if inline is not None:
|
|
612
|
+
pulumi.set(__self__, "inline", inline)
|
|
613
|
+
if name is not None:
|
|
614
|
+
pulumi.set(__self__, "name", name)
|
|
615
|
+
if run_as_system is None:
|
|
616
|
+
run_as_system = False
|
|
617
|
+
if run_as_system is not None:
|
|
618
|
+
pulumi.set(__self__, "run_as_system", run_as_system)
|
|
619
|
+
if run_elevated is None:
|
|
620
|
+
run_elevated = False
|
|
621
|
+
if run_elevated is not None:
|
|
622
|
+
pulumi.set(__self__, "run_elevated", run_elevated)
|
|
623
|
+
if script_uri is not None:
|
|
624
|
+
pulumi.set(__self__, "script_uri", script_uri)
|
|
625
|
+
if sha256_checksum is None:
|
|
626
|
+
sha256_checksum = ''
|
|
627
|
+
if sha256_checksum is not None:
|
|
628
|
+
pulumi.set(__self__, "sha256_checksum", sha256_checksum)
|
|
629
|
+
if valid_exit_codes is not None:
|
|
630
|
+
pulumi.set(__self__, "valid_exit_codes", valid_exit_codes)
|
|
631
|
+
|
|
632
|
+
@property
|
|
633
|
+
@pulumi.getter
|
|
634
|
+
def type(self) -> pulumi.Input[str]:
|
|
635
|
+
"""
|
|
636
|
+
The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
637
|
+
Expected value is 'PowerShell'.
|
|
638
|
+
"""
|
|
639
|
+
return pulumi.get(self, "type")
|
|
640
|
+
|
|
641
|
+
@type.setter
|
|
642
|
+
def type(self, value: pulumi.Input[str]):
|
|
643
|
+
pulumi.set(self, "type", value)
|
|
644
|
+
|
|
645
|
+
@property
|
|
646
|
+
@pulumi.getter
|
|
647
|
+
def inline(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
648
|
+
"""
|
|
649
|
+
Array of PowerShell commands to execute
|
|
650
|
+
"""
|
|
651
|
+
return pulumi.get(self, "inline")
|
|
652
|
+
|
|
653
|
+
@inline.setter
|
|
654
|
+
def inline(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
655
|
+
pulumi.set(self, "inline", value)
|
|
656
|
+
|
|
657
|
+
@property
|
|
658
|
+
@pulumi.getter
|
|
659
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
660
|
+
"""
|
|
661
|
+
Friendly Name to provide context on what this customization step does
|
|
662
|
+
"""
|
|
663
|
+
return pulumi.get(self, "name")
|
|
664
|
+
|
|
665
|
+
@name.setter
|
|
666
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
667
|
+
pulumi.set(self, "name", value)
|
|
668
|
+
|
|
669
|
+
@property
|
|
670
|
+
@pulumi.getter(name="runAsSystem")
|
|
671
|
+
def run_as_system(self) -> Optional[pulumi.Input[bool]]:
|
|
672
|
+
"""
|
|
673
|
+
If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.
|
|
674
|
+
"""
|
|
675
|
+
return pulumi.get(self, "run_as_system")
|
|
676
|
+
|
|
677
|
+
@run_as_system.setter
|
|
678
|
+
def run_as_system(self, value: Optional[pulumi.Input[bool]]):
|
|
679
|
+
pulumi.set(self, "run_as_system", value)
|
|
680
|
+
|
|
681
|
+
@property
|
|
682
|
+
@pulumi.getter(name="runElevated")
|
|
683
|
+
def run_elevated(self) -> Optional[pulumi.Input[bool]]:
|
|
684
|
+
"""
|
|
685
|
+
If specified, the PowerShell script will be run with elevated privileges
|
|
686
|
+
"""
|
|
687
|
+
return pulumi.get(self, "run_elevated")
|
|
688
|
+
|
|
689
|
+
@run_elevated.setter
|
|
690
|
+
def run_elevated(self, value: Optional[pulumi.Input[bool]]):
|
|
691
|
+
pulumi.set(self, "run_elevated", value)
|
|
692
|
+
|
|
693
|
+
@property
|
|
694
|
+
@pulumi.getter(name="scriptUri")
|
|
695
|
+
def script_uri(self) -> Optional[pulumi.Input[str]]:
|
|
696
|
+
"""
|
|
697
|
+
URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc
|
|
698
|
+
"""
|
|
699
|
+
return pulumi.get(self, "script_uri")
|
|
700
|
+
|
|
701
|
+
@script_uri.setter
|
|
702
|
+
def script_uri(self, value: Optional[pulumi.Input[str]]):
|
|
703
|
+
pulumi.set(self, "script_uri", value)
|
|
704
|
+
|
|
705
|
+
@property
|
|
706
|
+
@pulumi.getter(name="sha256Checksum")
|
|
707
|
+
def sha256_checksum(self) -> Optional[pulumi.Input[str]]:
|
|
708
|
+
"""
|
|
709
|
+
SHA256 checksum of the power shell script provided in the scriptUri field above
|
|
710
|
+
"""
|
|
711
|
+
return pulumi.get(self, "sha256_checksum")
|
|
712
|
+
|
|
713
|
+
@sha256_checksum.setter
|
|
714
|
+
def sha256_checksum(self, value: Optional[pulumi.Input[str]]):
|
|
715
|
+
pulumi.set(self, "sha256_checksum", value)
|
|
716
|
+
|
|
717
|
+
@property
|
|
718
|
+
@pulumi.getter(name="validExitCodes")
|
|
719
|
+
def valid_exit_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
|
|
720
|
+
"""
|
|
721
|
+
Valid exit codes for the PowerShell script. [Default: 0]
|
|
722
|
+
"""
|
|
723
|
+
return pulumi.get(self, "valid_exit_codes")
|
|
724
|
+
|
|
725
|
+
@valid_exit_codes.setter
|
|
726
|
+
def valid_exit_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
|
|
727
|
+
pulumi.set(self, "valid_exit_codes", value)
|
|
728
|
+
|
|
729
|
+
|
|
730
|
+
@pulumi.input_type
|
|
731
|
+
class ImageTemplatePowerShellValidatorArgs:
|
|
732
|
+
def __init__(__self__, *,
|
|
733
|
+
type: pulumi.Input[str],
|
|
734
|
+
inline: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
735
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
736
|
+
run_as_system: Optional[pulumi.Input[bool]] = None,
|
|
737
|
+
run_elevated: Optional[pulumi.Input[bool]] = None,
|
|
738
|
+
script_uri: Optional[pulumi.Input[str]] = None,
|
|
739
|
+
sha256_checksum: Optional[pulumi.Input[str]] = None,
|
|
740
|
+
valid_exit_codes: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None):
|
|
741
|
+
"""
|
|
742
|
+
Runs the specified PowerShell script during the validation phase (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.
|
|
743
|
+
:param pulumi.Input[str] type: The type of validation you want to use on the Image. For example, "Shell" can be shell validation
|
|
744
|
+
Expected value is 'PowerShell'.
|
|
745
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] inline: Array of PowerShell commands to execute
|
|
746
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this validation step does
|
|
747
|
+
:param pulumi.Input[bool] run_as_system: If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.
|
|
748
|
+
:param pulumi.Input[bool] run_elevated: If specified, the PowerShell script will be run with elevated privileges
|
|
749
|
+
:param pulumi.Input[str] script_uri: URI of the PowerShell script to be run for validation. It can be a github link, Azure Storage URI, etc
|
|
750
|
+
:param pulumi.Input[str] sha256_checksum: SHA256 checksum of the power shell script provided in the scriptUri field above
|
|
751
|
+
:param pulumi.Input[Sequence[pulumi.Input[int]]] valid_exit_codes: Valid exit codes for the PowerShell script. [Default: 0]
|
|
752
|
+
"""
|
|
753
|
+
pulumi.set(__self__, "type", 'PowerShell')
|
|
754
|
+
if inline is not None:
|
|
755
|
+
pulumi.set(__self__, "inline", inline)
|
|
756
|
+
if name is not None:
|
|
757
|
+
pulumi.set(__self__, "name", name)
|
|
758
|
+
if run_as_system is None:
|
|
759
|
+
run_as_system = False
|
|
760
|
+
if run_as_system is not None:
|
|
761
|
+
pulumi.set(__self__, "run_as_system", run_as_system)
|
|
762
|
+
if run_elevated is None:
|
|
763
|
+
run_elevated = False
|
|
764
|
+
if run_elevated is not None:
|
|
765
|
+
pulumi.set(__self__, "run_elevated", run_elevated)
|
|
766
|
+
if script_uri is not None:
|
|
767
|
+
pulumi.set(__self__, "script_uri", script_uri)
|
|
768
|
+
if sha256_checksum is None:
|
|
769
|
+
sha256_checksum = ''
|
|
770
|
+
if sha256_checksum is not None:
|
|
771
|
+
pulumi.set(__self__, "sha256_checksum", sha256_checksum)
|
|
772
|
+
if valid_exit_codes is not None:
|
|
773
|
+
pulumi.set(__self__, "valid_exit_codes", valid_exit_codes)
|
|
774
|
+
|
|
775
|
+
@property
|
|
776
|
+
@pulumi.getter
|
|
777
|
+
def type(self) -> pulumi.Input[str]:
|
|
778
|
+
"""
|
|
779
|
+
The type of validation you want to use on the Image. For example, "Shell" can be shell validation
|
|
780
|
+
Expected value is 'PowerShell'.
|
|
781
|
+
"""
|
|
782
|
+
return pulumi.get(self, "type")
|
|
783
|
+
|
|
784
|
+
@type.setter
|
|
785
|
+
def type(self, value: pulumi.Input[str]):
|
|
786
|
+
pulumi.set(self, "type", value)
|
|
787
|
+
|
|
788
|
+
@property
|
|
789
|
+
@pulumi.getter
|
|
790
|
+
def inline(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
791
|
+
"""
|
|
792
|
+
Array of PowerShell commands to execute
|
|
793
|
+
"""
|
|
794
|
+
return pulumi.get(self, "inline")
|
|
795
|
+
|
|
796
|
+
@inline.setter
|
|
797
|
+
def inline(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
798
|
+
pulumi.set(self, "inline", value)
|
|
799
|
+
|
|
800
|
+
@property
|
|
801
|
+
@pulumi.getter
|
|
802
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
803
|
+
"""
|
|
804
|
+
Friendly Name to provide context on what this validation step does
|
|
805
|
+
"""
|
|
806
|
+
return pulumi.get(self, "name")
|
|
807
|
+
|
|
808
|
+
@name.setter
|
|
809
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
810
|
+
pulumi.set(self, "name", value)
|
|
811
|
+
|
|
812
|
+
@property
|
|
813
|
+
@pulumi.getter(name="runAsSystem")
|
|
814
|
+
def run_as_system(self) -> Optional[pulumi.Input[bool]]:
|
|
815
|
+
"""
|
|
816
|
+
If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.
|
|
817
|
+
"""
|
|
818
|
+
return pulumi.get(self, "run_as_system")
|
|
819
|
+
|
|
820
|
+
@run_as_system.setter
|
|
821
|
+
def run_as_system(self, value: Optional[pulumi.Input[bool]]):
|
|
822
|
+
pulumi.set(self, "run_as_system", value)
|
|
823
|
+
|
|
824
|
+
@property
|
|
825
|
+
@pulumi.getter(name="runElevated")
|
|
826
|
+
def run_elevated(self) -> Optional[pulumi.Input[bool]]:
|
|
827
|
+
"""
|
|
828
|
+
If specified, the PowerShell script will be run with elevated privileges
|
|
829
|
+
"""
|
|
830
|
+
return pulumi.get(self, "run_elevated")
|
|
831
|
+
|
|
832
|
+
@run_elevated.setter
|
|
833
|
+
def run_elevated(self, value: Optional[pulumi.Input[bool]]):
|
|
834
|
+
pulumi.set(self, "run_elevated", value)
|
|
835
|
+
|
|
836
|
+
@property
|
|
837
|
+
@pulumi.getter(name="scriptUri")
|
|
838
|
+
def script_uri(self) -> Optional[pulumi.Input[str]]:
|
|
839
|
+
"""
|
|
840
|
+
URI of the PowerShell script to be run for validation. It can be a github link, Azure Storage URI, etc
|
|
841
|
+
"""
|
|
842
|
+
return pulumi.get(self, "script_uri")
|
|
843
|
+
|
|
844
|
+
@script_uri.setter
|
|
845
|
+
def script_uri(self, value: Optional[pulumi.Input[str]]):
|
|
846
|
+
pulumi.set(self, "script_uri", value)
|
|
847
|
+
|
|
848
|
+
@property
|
|
849
|
+
@pulumi.getter(name="sha256Checksum")
|
|
850
|
+
def sha256_checksum(self) -> Optional[pulumi.Input[str]]:
|
|
851
|
+
"""
|
|
852
|
+
SHA256 checksum of the power shell script provided in the scriptUri field above
|
|
853
|
+
"""
|
|
854
|
+
return pulumi.get(self, "sha256_checksum")
|
|
855
|
+
|
|
856
|
+
@sha256_checksum.setter
|
|
857
|
+
def sha256_checksum(self, value: Optional[pulumi.Input[str]]):
|
|
858
|
+
pulumi.set(self, "sha256_checksum", value)
|
|
859
|
+
|
|
860
|
+
@property
|
|
861
|
+
@pulumi.getter(name="validExitCodes")
|
|
862
|
+
def valid_exit_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
|
|
863
|
+
"""
|
|
864
|
+
Valid exit codes for the PowerShell script. [Default: 0]
|
|
865
|
+
"""
|
|
866
|
+
return pulumi.get(self, "valid_exit_codes")
|
|
867
|
+
|
|
868
|
+
@valid_exit_codes.setter
|
|
869
|
+
def valid_exit_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
|
|
870
|
+
pulumi.set(self, "valid_exit_codes", value)
|
|
871
|
+
|
|
872
|
+
|
|
873
|
+
@pulumi.input_type
|
|
874
|
+
class ImageTemplatePropertiesErrorHandlingArgs:
|
|
875
|
+
def __init__(__self__, *,
|
|
876
|
+
on_customizer_error: Optional[pulumi.Input[Union[str, 'OnBuildError']]] = None,
|
|
877
|
+
on_validation_error: Optional[pulumi.Input[Union[str, 'OnBuildError']]] = None):
|
|
878
|
+
"""
|
|
879
|
+
Error handling options upon a build failure
|
|
880
|
+
:param pulumi.Input[Union[str, 'OnBuildError']] on_customizer_error: If there is a customizer error and this field is set to 'cleanup', the build VM and associated network resources will be cleaned up. This is the default behavior. If there is a customizer error and this field is set to 'abort', the build VM will be preserved.
|
|
881
|
+
:param pulumi.Input[Union[str, 'OnBuildError']] on_validation_error: If there is a validation error and this field is set to 'cleanup', the build VM and associated network resources will be cleaned up. This is the default behavior. If there is a validation error and this field is set to 'abort', the build VM will be preserved.
|
|
882
|
+
"""
|
|
883
|
+
if on_customizer_error is None:
|
|
884
|
+
on_customizer_error = 'cleanup'
|
|
885
|
+
if on_customizer_error is not None:
|
|
886
|
+
pulumi.set(__self__, "on_customizer_error", on_customizer_error)
|
|
887
|
+
if on_validation_error is None:
|
|
888
|
+
on_validation_error = 'cleanup'
|
|
889
|
+
if on_validation_error is not None:
|
|
890
|
+
pulumi.set(__self__, "on_validation_error", on_validation_error)
|
|
891
|
+
|
|
892
|
+
@property
|
|
893
|
+
@pulumi.getter(name="onCustomizerError")
|
|
894
|
+
def on_customizer_error(self) -> Optional[pulumi.Input[Union[str, 'OnBuildError']]]:
|
|
895
|
+
"""
|
|
896
|
+
If there is a customizer error and this field is set to 'cleanup', the build VM and associated network resources will be cleaned up. This is the default behavior. If there is a customizer error and this field is set to 'abort', the build VM will be preserved.
|
|
897
|
+
"""
|
|
898
|
+
return pulumi.get(self, "on_customizer_error")
|
|
899
|
+
|
|
900
|
+
@on_customizer_error.setter
|
|
901
|
+
def on_customizer_error(self, value: Optional[pulumi.Input[Union[str, 'OnBuildError']]]):
|
|
902
|
+
pulumi.set(self, "on_customizer_error", value)
|
|
903
|
+
|
|
904
|
+
@property
|
|
905
|
+
@pulumi.getter(name="onValidationError")
|
|
906
|
+
def on_validation_error(self) -> Optional[pulumi.Input[Union[str, 'OnBuildError']]]:
|
|
907
|
+
"""
|
|
908
|
+
If there is a validation error and this field is set to 'cleanup', the build VM and associated network resources will be cleaned up. This is the default behavior. If there is a validation error and this field is set to 'abort', the build VM will be preserved.
|
|
909
|
+
"""
|
|
910
|
+
return pulumi.get(self, "on_validation_error")
|
|
911
|
+
|
|
912
|
+
@on_validation_error.setter
|
|
913
|
+
def on_validation_error(self, value: Optional[pulumi.Input[Union[str, 'OnBuildError']]]):
|
|
914
|
+
pulumi.set(self, "on_validation_error", value)
|
|
915
|
+
|
|
916
|
+
|
|
917
|
+
@pulumi.input_type
|
|
918
|
+
class ImageTemplatePropertiesOptimizeArgs:
|
|
919
|
+
def __init__(__self__, *,
|
|
920
|
+
vm_boot: Optional[pulumi.Input['ImageTemplatePropertiesVmBootArgs']] = None):
|
|
921
|
+
"""
|
|
922
|
+
Specifies optimization to be performed on image.
|
|
923
|
+
:param pulumi.Input['ImageTemplatePropertiesVmBootArgs'] vm_boot: Optimization is applied on the image for a faster VM boot.
|
|
924
|
+
"""
|
|
925
|
+
if vm_boot is not None:
|
|
926
|
+
pulumi.set(__self__, "vm_boot", vm_boot)
|
|
927
|
+
|
|
928
|
+
@property
|
|
929
|
+
@pulumi.getter(name="vmBoot")
|
|
930
|
+
def vm_boot(self) -> Optional[pulumi.Input['ImageTemplatePropertiesVmBootArgs']]:
|
|
931
|
+
"""
|
|
932
|
+
Optimization is applied on the image for a faster VM boot.
|
|
933
|
+
"""
|
|
934
|
+
return pulumi.get(self, "vm_boot")
|
|
935
|
+
|
|
936
|
+
@vm_boot.setter
|
|
937
|
+
def vm_boot(self, value: Optional[pulumi.Input['ImageTemplatePropertiesVmBootArgs']]):
|
|
938
|
+
pulumi.set(self, "vm_boot", value)
|
|
939
|
+
|
|
940
|
+
|
|
941
|
+
@pulumi.input_type
|
|
942
|
+
class ImageTemplatePropertiesValidateArgs:
|
|
943
|
+
def __init__(__self__, *,
|
|
944
|
+
continue_distribute_on_failure: Optional[pulumi.Input[bool]] = None,
|
|
945
|
+
in_vm_validations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ImageTemplateFileValidatorArgs', 'ImageTemplatePowerShellValidatorArgs', 'ImageTemplateShellValidatorArgs']]]]] = None,
|
|
946
|
+
source_validation_only: Optional[pulumi.Input[bool]] = None):
|
|
947
|
+
"""
|
|
948
|
+
Configuration options and list of validations to be performed on the resulting image.
|
|
949
|
+
:param pulumi.Input[bool] continue_distribute_on_failure: If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]
|
|
950
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['ImageTemplateFileValidatorArgs', 'ImageTemplatePowerShellValidatorArgs', 'ImageTemplateShellValidatorArgs']]]] in_vm_validations: List of validations to be performed.
|
|
951
|
+
:param pulumi.Input[bool] source_validation_only: If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.
|
|
952
|
+
"""
|
|
953
|
+
if continue_distribute_on_failure is None:
|
|
954
|
+
continue_distribute_on_failure = False
|
|
955
|
+
if continue_distribute_on_failure is not None:
|
|
956
|
+
pulumi.set(__self__, "continue_distribute_on_failure", continue_distribute_on_failure)
|
|
957
|
+
if in_vm_validations is not None:
|
|
958
|
+
pulumi.set(__self__, "in_vm_validations", in_vm_validations)
|
|
959
|
+
if source_validation_only is None:
|
|
960
|
+
source_validation_only = False
|
|
961
|
+
if source_validation_only is not None:
|
|
962
|
+
pulumi.set(__self__, "source_validation_only", source_validation_only)
|
|
963
|
+
|
|
964
|
+
@property
|
|
965
|
+
@pulumi.getter(name="continueDistributeOnFailure")
|
|
966
|
+
def continue_distribute_on_failure(self) -> Optional[pulumi.Input[bool]]:
|
|
967
|
+
"""
|
|
968
|
+
If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]
|
|
969
|
+
"""
|
|
970
|
+
return pulumi.get(self, "continue_distribute_on_failure")
|
|
971
|
+
|
|
972
|
+
@continue_distribute_on_failure.setter
|
|
973
|
+
def continue_distribute_on_failure(self, value: Optional[pulumi.Input[bool]]):
|
|
974
|
+
pulumi.set(self, "continue_distribute_on_failure", value)
|
|
975
|
+
|
|
976
|
+
@property
|
|
977
|
+
@pulumi.getter(name="inVMValidations")
|
|
978
|
+
def in_vm_validations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[Union['ImageTemplateFileValidatorArgs', 'ImageTemplatePowerShellValidatorArgs', 'ImageTemplateShellValidatorArgs']]]]]:
|
|
979
|
+
"""
|
|
980
|
+
List of validations to be performed.
|
|
981
|
+
"""
|
|
982
|
+
return pulumi.get(self, "in_vm_validations")
|
|
983
|
+
|
|
984
|
+
@in_vm_validations.setter
|
|
985
|
+
def in_vm_validations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ImageTemplateFileValidatorArgs', 'ImageTemplatePowerShellValidatorArgs', 'ImageTemplateShellValidatorArgs']]]]]):
|
|
986
|
+
pulumi.set(self, "in_vm_validations", value)
|
|
987
|
+
|
|
988
|
+
@property
|
|
989
|
+
@pulumi.getter(name="sourceValidationOnly")
|
|
990
|
+
def source_validation_only(self) -> Optional[pulumi.Input[bool]]:
|
|
991
|
+
"""
|
|
992
|
+
If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.
|
|
993
|
+
"""
|
|
994
|
+
return pulumi.get(self, "source_validation_only")
|
|
995
|
+
|
|
996
|
+
@source_validation_only.setter
|
|
997
|
+
def source_validation_only(self, value: Optional[pulumi.Input[bool]]):
|
|
998
|
+
pulumi.set(self, "source_validation_only", value)
|
|
999
|
+
|
|
1000
|
+
|
|
1001
|
+
@pulumi.input_type
|
|
1002
|
+
class ImageTemplatePropertiesVmBootArgs:
|
|
1003
|
+
def __init__(__self__, *,
|
|
1004
|
+
state: Optional[pulumi.Input['VMBootOptimizationState']] = None):
|
|
1005
|
+
"""
|
|
1006
|
+
Optimization is applied on the image for a faster VM boot.
|
|
1007
|
+
:param pulumi.Input['VMBootOptimizationState'] state: Enabling this field will improve VM boot time by optimizing the final customized image output.
|
|
1008
|
+
"""
|
|
1009
|
+
if state is not None:
|
|
1010
|
+
pulumi.set(__self__, "state", state)
|
|
1011
|
+
|
|
1012
|
+
@property
|
|
1013
|
+
@pulumi.getter
|
|
1014
|
+
def state(self) -> Optional[pulumi.Input['VMBootOptimizationState']]:
|
|
1015
|
+
"""
|
|
1016
|
+
Enabling this field will improve VM boot time by optimizing the final customized image output.
|
|
1017
|
+
"""
|
|
1018
|
+
return pulumi.get(self, "state")
|
|
1019
|
+
|
|
1020
|
+
@state.setter
|
|
1021
|
+
def state(self, value: Optional[pulumi.Input['VMBootOptimizationState']]):
|
|
1022
|
+
pulumi.set(self, "state", value)
|
|
1023
|
+
|
|
1024
|
+
|
|
1025
|
+
@pulumi.input_type
|
|
1026
|
+
class ImageTemplateRestartCustomizerArgs:
|
|
1027
|
+
def __init__(__self__, *,
|
|
1028
|
+
type: pulumi.Input[str],
|
|
1029
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
1030
|
+
restart_check_command: Optional[pulumi.Input[str]] = None,
|
|
1031
|
+
restart_command: Optional[pulumi.Input[str]] = None,
|
|
1032
|
+
restart_timeout: Optional[pulumi.Input[str]] = None):
|
|
1033
|
+
"""
|
|
1034
|
+
Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner
|
|
1035
|
+
:param pulumi.Input[str] type: The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
1036
|
+
Expected value is 'WindowsRestart'.
|
|
1037
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this customization step does
|
|
1038
|
+
:param pulumi.Input[str] restart_check_command: Command to check if restart succeeded [Default: '']
|
|
1039
|
+
:param pulumi.Input[str] restart_command: Command to execute the restart [Default: 'shutdown /r /f /t 0 /c "packer restart"']
|
|
1040
|
+
:param pulumi.Input[str] restart_timeout: Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']
|
|
1041
|
+
"""
|
|
1042
|
+
pulumi.set(__self__, "type", 'WindowsRestart')
|
|
1043
|
+
if name is not None:
|
|
1044
|
+
pulumi.set(__self__, "name", name)
|
|
1045
|
+
if restart_check_command is not None:
|
|
1046
|
+
pulumi.set(__self__, "restart_check_command", restart_check_command)
|
|
1047
|
+
if restart_command is not None:
|
|
1048
|
+
pulumi.set(__self__, "restart_command", restart_command)
|
|
1049
|
+
if restart_timeout is not None:
|
|
1050
|
+
pulumi.set(__self__, "restart_timeout", restart_timeout)
|
|
1051
|
+
|
|
1052
|
+
@property
|
|
1053
|
+
@pulumi.getter
|
|
1054
|
+
def type(self) -> pulumi.Input[str]:
|
|
1055
|
+
"""
|
|
1056
|
+
The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
1057
|
+
Expected value is 'WindowsRestart'.
|
|
1058
|
+
"""
|
|
1059
|
+
return pulumi.get(self, "type")
|
|
1060
|
+
|
|
1061
|
+
@type.setter
|
|
1062
|
+
def type(self, value: pulumi.Input[str]):
|
|
1063
|
+
pulumi.set(self, "type", value)
|
|
1064
|
+
|
|
1065
|
+
@property
|
|
1066
|
+
@pulumi.getter
|
|
1067
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
1068
|
+
"""
|
|
1069
|
+
Friendly Name to provide context on what this customization step does
|
|
1070
|
+
"""
|
|
1071
|
+
return pulumi.get(self, "name")
|
|
1072
|
+
|
|
1073
|
+
@name.setter
|
|
1074
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
1075
|
+
pulumi.set(self, "name", value)
|
|
1076
|
+
|
|
1077
|
+
@property
|
|
1078
|
+
@pulumi.getter(name="restartCheckCommand")
|
|
1079
|
+
def restart_check_command(self) -> Optional[pulumi.Input[str]]:
|
|
1080
|
+
"""
|
|
1081
|
+
Command to check if restart succeeded [Default: '']
|
|
1082
|
+
"""
|
|
1083
|
+
return pulumi.get(self, "restart_check_command")
|
|
1084
|
+
|
|
1085
|
+
@restart_check_command.setter
|
|
1086
|
+
def restart_check_command(self, value: Optional[pulumi.Input[str]]):
|
|
1087
|
+
pulumi.set(self, "restart_check_command", value)
|
|
1088
|
+
|
|
1089
|
+
@property
|
|
1090
|
+
@pulumi.getter(name="restartCommand")
|
|
1091
|
+
def restart_command(self) -> Optional[pulumi.Input[str]]:
|
|
1092
|
+
"""
|
|
1093
|
+
Command to execute the restart [Default: 'shutdown /r /f /t 0 /c "packer restart"']
|
|
1094
|
+
"""
|
|
1095
|
+
return pulumi.get(self, "restart_command")
|
|
1096
|
+
|
|
1097
|
+
@restart_command.setter
|
|
1098
|
+
def restart_command(self, value: Optional[pulumi.Input[str]]):
|
|
1099
|
+
pulumi.set(self, "restart_command", value)
|
|
1100
|
+
|
|
1101
|
+
@property
|
|
1102
|
+
@pulumi.getter(name="restartTimeout")
|
|
1103
|
+
def restart_timeout(self) -> Optional[pulumi.Input[str]]:
|
|
1104
|
+
"""
|
|
1105
|
+
Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']
|
|
1106
|
+
"""
|
|
1107
|
+
return pulumi.get(self, "restart_timeout")
|
|
1108
|
+
|
|
1109
|
+
@restart_timeout.setter
|
|
1110
|
+
def restart_timeout(self, value: Optional[pulumi.Input[str]]):
|
|
1111
|
+
pulumi.set(self, "restart_timeout", value)
|
|
1112
|
+
|
|
1113
|
+
|
|
1114
|
+
@pulumi.input_type
|
|
1115
|
+
class ImageTemplateSharedImageDistributorArgs:
|
|
1116
|
+
def __init__(__self__, *,
|
|
1117
|
+
gallery_image_id: pulumi.Input[str],
|
|
1118
|
+
run_output_name: pulumi.Input[str],
|
|
1119
|
+
type: pulumi.Input[str],
|
|
1120
|
+
artifact_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1121
|
+
exclude_from_latest: Optional[pulumi.Input[bool]] = None,
|
|
1122
|
+
replication_regions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1123
|
+
storage_account_type: Optional[pulumi.Input[Union[str, 'SharedImageStorageAccountType']]] = None,
|
|
1124
|
+
target_regions: Optional[pulumi.Input[Sequence[pulumi.Input['TargetRegionArgs']]]] = None,
|
|
1125
|
+
versioning: Optional[pulumi.Input[Union['DistributeVersionerLatestArgs', 'DistributeVersionerSourceArgs']]] = None):
|
|
1126
|
+
"""
|
|
1127
|
+
Distribute via Azure Compute Gallery.
|
|
1128
|
+
:param pulumi.Input[str] gallery_image_id: Resource Id of the Azure Compute Gallery image
|
|
1129
|
+
:param pulumi.Input[str] run_output_name: The name to be used for the associated RunOutput.
|
|
1130
|
+
:param pulumi.Input[str] type: Type of distribution.
|
|
1131
|
+
Expected value is 'SharedImage'.
|
|
1132
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] artifact_tags: Tags that will be applied to the artifact once it has been created/updated by the distributor.
|
|
1133
|
+
:param pulumi.Input[bool] exclude_from_latest: Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).
|
|
1134
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] replication_regions: [Deprecated] A list of regions that the image will be replicated to. This list can be specified only if targetRegions is not specified. This field is deprecated - use targetRegions instead.
|
|
1135
|
+
:param pulumi.Input[Union[str, 'SharedImageStorageAccountType']] storage_account_type: [Deprecated] Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS). This field can be specified only if replicationRegions is specified. This field is deprecated - use targetRegions instead.
|
|
1136
|
+
:param pulumi.Input[Sequence[pulumi.Input['TargetRegionArgs']]] target_regions: The target regions where the distributed Image Version is going to be replicated to. This object supersedes replicationRegions and can be specified only if replicationRegions is not specified.
|
|
1137
|
+
:param pulumi.Input[Union['DistributeVersionerLatestArgs', 'DistributeVersionerSourceArgs']] versioning: Describes how to generate new x.y.z version number for distribution.
|
|
1138
|
+
"""
|
|
1139
|
+
pulumi.set(__self__, "gallery_image_id", gallery_image_id)
|
|
1140
|
+
pulumi.set(__self__, "run_output_name", run_output_name)
|
|
1141
|
+
pulumi.set(__self__, "type", 'SharedImage')
|
|
1142
|
+
if artifact_tags is not None:
|
|
1143
|
+
pulumi.set(__self__, "artifact_tags", artifact_tags)
|
|
1144
|
+
if exclude_from_latest is None:
|
|
1145
|
+
exclude_from_latest = False
|
|
1146
|
+
if exclude_from_latest is not None:
|
|
1147
|
+
pulumi.set(__self__, "exclude_from_latest", exclude_from_latest)
|
|
1148
|
+
if replication_regions is not None:
|
|
1149
|
+
pulumi.set(__self__, "replication_regions", replication_regions)
|
|
1150
|
+
if storage_account_type is not None:
|
|
1151
|
+
pulumi.set(__self__, "storage_account_type", storage_account_type)
|
|
1152
|
+
if target_regions is not None:
|
|
1153
|
+
pulumi.set(__self__, "target_regions", target_regions)
|
|
1154
|
+
if versioning is not None:
|
|
1155
|
+
pulumi.set(__self__, "versioning", versioning)
|
|
1156
|
+
|
|
1157
|
+
@property
|
|
1158
|
+
@pulumi.getter(name="galleryImageId")
|
|
1159
|
+
def gallery_image_id(self) -> pulumi.Input[str]:
|
|
1160
|
+
"""
|
|
1161
|
+
Resource Id of the Azure Compute Gallery image
|
|
1162
|
+
"""
|
|
1163
|
+
return pulumi.get(self, "gallery_image_id")
|
|
1164
|
+
|
|
1165
|
+
@gallery_image_id.setter
|
|
1166
|
+
def gallery_image_id(self, value: pulumi.Input[str]):
|
|
1167
|
+
pulumi.set(self, "gallery_image_id", value)
|
|
1168
|
+
|
|
1169
|
+
@property
|
|
1170
|
+
@pulumi.getter(name="runOutputName")
|
|
1171
|
+
def run_output_name(self) -> pulumi.Input[str]:
|
|
1172
|
+
"""
|
|
1173
|
+
The name to be used for the associated RunOutput.
|
|
1174
|
+
"""
|
|
1175
|
+
return pulumi.get(self, "run_output_name")
|
|
1176
|
+
|
|
1177
|
+
@run_output_name.setter
|
|
1178
|
+
def run_output_name(self, value: pulumi.Input[str]):
|
|
1179
|
+
pulumi.set(self, "run_output_name", value)
|
|
1180
|
+
|
|
1181
|
+
@property
|
|
1182
|
+
@pulumi.getter
|
|
1183
|
+
def type(self) -> pulumi.Input[str]:
|
|
1184
|
+
"""
|
|
1185
|
+
Type of distribution.
|
|
1186
|
+
Expected value is 'SharedImage'.
|
|
1187
|
+
"""
|
|
1188
|
+
return pulumi.get(self, "type")
|
|
1189
|
+
|
|
1190
|
+
@type.setter
|
|
1191
|
+
def type(self, value: pulumi.Input[str]):
|
|
1192
|
+
pulumi.set(self, "type", value)
|
|
1193
|
+
|
|
1194
|
+
@property
|
|
1195
|
+
@pulumi.getter(name="artifactTags")
|
|
1196
|
+
def artifact_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
1197
|
+
"""
|
|
1198
|
+
Tags that will be applied to the artifact once it has been created/updated by the distributor.
|
|
1199
|
+
"""
|
|
1200
|
+
return pulumi.get(self, "artifact_tags")
|
|
1201
|
+
|
|
1202
|
+
@artifact_tags.setter
|
|
1203
|
+
def artifact_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
1204
|
+
pulumi.set(self, "artifact_tags", value)
|
|
1205
|
+
|
|
1206
|
+
@property
|
|
1207
|
+
@pulumi.getter(name="excludeFromLatest")
|
|
1208
|
+
def exclude_from_latest(self) -> Optional[pulumi.Input[bool]]:
|
|
1209
|
+
"""
|
|
1210
|
+
Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).
|
|
1211
|
+
"""
|
|
1212
|
+
return pulumi.get(self, "exclude_from_latest")
|
|
1213
|
+
|
|
1214
|
+
@exclude_from_latest.setter
|
|
1215
|
+
def exclude_from_latest(self, value: Optional[pulumi.Input[bool]]):
|
|
1216
|
+
pulumi.set(self, "exclude_from_latest", value)
|
|
1217
|
+
|
|
1218
|
+
@property
|
|
1219
|
+
@pulumi.getter(name="replicationRegions")
|
|
1220
|
+
def replication_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1221
|
+
"""
|
|
1222
|
+
[Deprecated] A list of regions that the image will be replicated to. This list can be specified only if targetRegions is not specified. This field is deprecated - use targetRegions instead.
|
|
1223
|
+
"""
|
|
1224
|
+
return pulumi.get(self, "replication_regions")
|
|
1225
|
+
|
|
1226
|
+
@replication_regions.setter
|
|
1227
|
+
def replication_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1228
|
+
pulumi.set(self, "replication_regions", value)
|
|
1229
|
+
|
|
1230
|
+
@property
|
|
1231
|
+
@pulumi.getter(name="storageAccountType")
|
|
1232
|
+
def storage_account_type(self) -> Optional[pulumi.Input[Union[str, 'SharedImageStorageAccountType']]]:
|
|
1233
|
+
"""
|
|
1234
|
+
[Deprecated] Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS). This field can be specified only if replicationRegions is specified. This field is deprecated - use targetRegions instead.
|
|
1235
|
+
"""
|
|
1236
|
+
return pulumi.get(self, "storage_account_type")
|
|
1237
|
+
|
|
1238
|
+
@storage_account_type.setter
|
|
1239
|
+
def storage_account_type(self, value: Optional[pulumi.Input[Union[str, 'SharedImageStorageAccountType']]]):
|
|
1240
|
+
pulumi.set(self, "storage_account_type", value)
|
|
1241
|
+
|
|
1242
|
+
@property
|
|
1243
|
+
@pulumi.getter(name="targetRegions")
|
|
1244
|
+
def target_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TargetRegionArgs']]]]:
|
|
1245
|
+
"""
|
|
1246
|
+
The target regions where the distributed Image Version is going to be replicated to. This object supersedes replicationRegions and can be specified only if replicationRegions is not specified.
|
|
1247
|
+
"""
|
|
1248
|
+
return pulumi.get(self, "target_regions")
|
|
1249
|
+
|
|
1250
|
+
@target_regions.setter
|
|
1251
|
+
def target_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TargetRegionArgs']]]]):
|
|
1252
|
+
pulumi.set(self, "target_regions", value)
|
|
1253
|
+
|
|
1254
|
+
@property
|
|
1255
|
+
@pulumi.getter
|
|
1256
|
+
def versioning(self) -> Optional[pulumi.Input[Union['DistributeVersionerLatestArgs', 'DistributeVersionerSourceArgs']]]:
|
|
1257
|
+
"""
|
|
1258
|
+
Describes how to generate new x.y.z version number for distribution.
|
|
1259
|
+
"""
|
|
1260
|
+
return pulumi.get(self, "versioning")
|
|
1261
|
+
|
|
1262
|
+
@versioning.setter
|
|
1263
|
+
def versioning(self, value: Optional[pulumi.Input[Union['DistributeVersionerLatestArgs', 'DistributeVersionerSourceArgs']]]):
|
|
1264
|
+
pulumi.set(self, "versioning", value)
|
|
1265
|
+
|
|
1266
|
+
|
|
1267
|
+
@pulumi.input_type
|
|
1268
|
+
class ImageTemplateSharedImageVersionSourceArgs:
|
|
1269
|
+
def __init__(__self__, *,
|
|
1270
|
+
image_version_id: pulumi.Input[str],
|
|
1271
|
+
type: pulumi.Input[str]):
|
|
1272
|
+
"""
|
|
1273
|
+
Describes an image source that is an image version in an Azure Compute Gallery or a Direct Shared Gallery.
|
|
1274
|
+
:param pulumi.Input[str] image_version_id: ARM resource id of the image version. When image version name is 'latest', the version is evaluated when the image build takes place.
|
|
1275
|
+
:param pulumi.Input[str] type: Specifies the type of source image you want to start with.
|
|
1276
|
+
Expected value is 'SharedImageVersion'.
|
|
1277
|
+
"""
|
|
1278
|
+
pulumi.set(__self__, "image_version_id", image_version_id)
|
|
1279
|
+
pulumi.set(__self__, "type", 'SharedImageVersion')
|
|
1280
|
+
|
|
1281
|
+
@property
|
|
1282
|
+
@pulumi.getter(name="imageVersionId")
|
|
1283
|
+
def image_version_id(self) -> pulumi.Input[str]:
|
|
1284
|
+
"""
|
|
1285
|
+
ARM resource id of the image version. When image version name is 'latest', the version is evaluated when the image build takes place.
|
|
1286
|
+
"""
|
|
1287
|
+
return pulumi.get(self, "image_version_id")
|
|
1288
|
+
|
|
1289
|
+
@image_version_id.setter
|
|
1290
|
+
def image_version_id(self, value: pulumi.Input[str]):
|
|
1291
|
+
pulumi.set(self, "image_version_id", value)
|
|
1292
|
+
|
|
1293
|
+
@property
|
|
1294
|
+
@pulumi.getter
|
|
1295
|
+
def type(self) -> pulumi.Input[str]:
|
|
1296
|
+
"""
|
|
1297
|
+
Specifies the type of source image you want to start with.
|
|
1298
|
+
Expected value is 'SharedImageVersion'.
|
|
1299
|
+
"""
|
|
1300
|
+
return pulumi.get(self, "type")
|
|
1301
|
+
|
|
1302
|
+
@type.setter
|
|
1303
|
+
def type(self, value: pulumi.Input[str]):
|
|
1304
|
+
pulumi.set(self, "type", value)
|
|
1305
|
+
|
|
1306
|
+
|
|
1307
|
+
@pulumi.input_type
|
|
1308
|
+
class ImageTemplateShellCustomizerArgs:
|
|
1309
|
+
def __init__(__self__, *,
|
|
1310
|
+
type: pulumi.Input[str],
|
|
1311
|
+
inline: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1312
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
1313
|
+
script_uri: Optional[pulumi.Input[str]] = None,
|
|
1314
|
+
sha256_checksum: Optional[pulumi.Input[str]] = None):
|
|
1315
|
+
"""
|
|
1316
|
+
Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.
|
|
1317
|
+
:param pulumi.Input[str] type: The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
1318
|
+
Expected value is 'Shell'.
|
|
1319
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] inline: Array of shell commands to execute
|
|
1320
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this customization step does
|
|
1321
|
+
:param pulumi.Input[str] script_uri: URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc
|
|
1322
|
+
:param pulumi.Input[str] sha256_checksum: SHA256 checksum of the shell script provided in the scriptUri field
|
|
1323
|
+
"""
|
|
1324
|
+
pulumi.set(__self__, "type", 'Shell')
|
|
1325
|
+
if inline is not None:
|
|
1326
|
+
pulumi.set(__self__, "inline", inline)
|
|
1327
|
+
if name is not None:
|
|
1328
|
+
pulumi.set(__self__, "name", name)
|
|
1329
|
+
if script_uri is not None:
|
|
1330
|
+
pulumi.set(__self__, "script_uri", script_uri)
|
|
1331
|
+
if sha256_checksum is None:
|
|
1332
|
+
sha256_checksum = ''
|
|
1333
|
+
if sha256_checksum is not None:
|
|
1334
|
+
pulumi.set(__self__, "sha256_checksum", sha256_checksum)
|
|
1335
|
+
|
|
1336
|
+
@property
|
|
1337
|
+
@pulumi.getter
|
|
1338
|
+
def type(self) -> pulumi.Input[str]:
|
|
1339
|
+
"""
|
|
1340
|
+
The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
1341
|
+
Expected value is 'Shell'.
|
|
1342
|
+
"""
|
|
1343
|
+
return pulumi.get(self, "type")
|
|
1344
|
+
|
|
1345
|
+
@type.setter
|
|
1346
|
+
def type(self, value: pulumi.Input[str]):
|
|
1347
|
+
pulumi.set(self, "type", value)
|
|
1348
|
+
|
|
1349
|
+
@property
|
|
1350
|
+
@pulumi.getter
|
|
1351
|
+
def inline(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1352
|
+
"""
|
|
1353
|
+
Array of shell commands to execute
|
|
1354
|
+
"""
|
|
1355
|
+
return pulumi.get(self, "inline")
|
|
1356
|
+
|
|
1357
|
+
@inline.setter
|
|
1358
|
+
def inline(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1359
|
+
pulumi.set(self, "inline", value)
|
|
1360
|
+
|
|
1361
|
+
@property
|
|
1362
|
+
@pulumi.getter
|
|
1363
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
1364
|
+
"""
|
|
1365
|
+
Friendly Name to provide context on what this customization step does
|
|
1366
|
+
"""
|
|
1367
|
+
return pulumi.get(self, "name")
|
|
1368
|
+
|
|
1369
|
+
@name.setter
|
|
1370
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
1371
|
+
pulumi.set(self, "name", value)
|
|
1372
|
+
|
|
1373
|
+
@property
|
|
1374
|
+
@pulumi.getter(name="scriptUri")
|
|
1375
|
+
def script_uri(self) -> Optional[pulumi.Input[str]]:
|
|
1376
|
+
"""
|
|
1377
|
+
URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc
|
|
1378
|
+
"""
|
|
1379
|
+
return pulumi.get(self, "script_uri")
|
|
1380
|
+
|
|
1381
|
+
@script_uri.setter
|
|
1382
|
+
def script_uri(self, value: Optional[pulumi.Input[str]]):
|
|
1383
|
+
pulumi.set(self, "script_uri", value)
|
|
1384
|
+
|
|
1385
|
+
@property
|
|
1386
|
+
@pulumi.getter(name="sha256Checksum")
|
|
1387
|
+
def sha256_checksum(self) -> Optional[pulumi.Input[str]]:
|
|
1388
|
+
"""
|
|
1389
|
+
SHA256 checksum of the shell script provided in the scriptUri field
|
|
1390
|
+
"""
|
|
1391
|
+
return pulumi.get(self, "sha256_checksum")
|
|
1392
|
+
|
|
1393
|
+
@sha256_checksum.setter
|
|
1394
|
+
def sha256_checksum(self, value: Optional[pulumi.Input[str]]):
|
|
1395
|
+
pulumi.set(self, "sha256_checksum", value)
|
|
1396
|
+
|
|
1397
|
+
|
|
1398
|
+
@pulumi.input_type
|
|
1399
|
+
class ImageTemplateShellValidatorArgs:
|
|
1400
|
+
def __init__(__self__, *,
|
|
1401
|
+
type: pulumi.Input[str],
|
|
1402
|
+
inline: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1403
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
1404
|
+
script_uri: Optional[pulumi.Input[str]] = None,
|
|
1405
|
+
sha256_checksum: Optional[pulumi.Input[str]] = None):
|
|
1406
|
+
"""
|
|
1407
|
+
Runs the specified shell script during the validation phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.
|
|
1408
|
+
:param pulumi.Input[str] type: The type of validation you want to use on the Image. For example, "Shell" can be shell validation
|
|
1409
|
+
Expected value is 'Shell'.
|
|
1410
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] inline: Array of shell commands to execute
|
|
1411
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this validation step does
|
|
1412
|
+
:param pulumi.Input[str] script_uri: URI of the shell script to be run for validation. It can be a github link, Azure Storage URI, etc
|
|
1413
|
+
:param pulumi.Input[str] sha256_checksum: SHA256 checksum of the shell script provided in the scriptUri field
|
|
1414
|
+
"""
|
|
1415
|
+
pulumi.set(__self__, "type", 'Shell')
|
|
1416
|
+
if inline is not None:
|
|
1417
|
+
pulumi.set(__self__, "inline", inline)
|
|
1418
|
+
if name is not None:
|
|
1419
|
+
pulumi.set(__self__, "name", name)
|
|
1420
|
+
if script_uri is not None:
|
|
1421
|
+
pulumi.set(__self__, "script_uri", script_uri)
|
|
1422
|
+
if sha256_checksum is None:
|
|
1423
|
+
sha256_checksum = ''
|
|
1424
|
+
if sha256_checksum is not None:
|
|
1425
|
+
pulumi.set(__self__, "sha256_checksum", sha256_checksum)
|
|
1426
|
+
|
|
1427
|
+
@property
|
|
1428
|
+
@pulumi.getter
|
|
1429
|
+
def type(self) -> pulumi.Input[str]:
|
|
1430
|
+
"""
|
|
1431
|
+
The type of validation you want to use on the Image. For example, "Shell" can be shell validation
|
|
1432
|
+
Expected value is 'Shell'.
|
|
1433
|
+
"""
|
|
1434
|
+
return pulumi.get(self, "type")
|
|
1435
|
+
|
|
1436
|
+
@type.setter
|
|
1437
|
+
def type(self, value: pulumi.Input[str]):
|
|
1438
|
+
pulumi.set(self, "type", value)
|
|
1439
|
+
|
|
1440
|
+
@property
|
|
1441
|
+
@pulumi.getter
|
|
1442
|
+
def inline(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1443
|
+
"""
|
|
1444
|
+
Array of shell commands to execute
|
|
1445
|
+
"""
|
|
1446
|
+
return pulumi.get(self, "inline")
|
|
1447
|
+
|
|
1448
|
+
@inline.setter
|
|
1449
|
+
def inline(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1450
|
+
pulumi.set(self, "inline", value)
|
|
1451
|
+
|
|
1452
|
+
@property
|
|
1453
|
+
@pulumi.getter
|
|
1454
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
1455
|
+
"""
|
|
1456
|
+
Friendly Name to provide context on what this validation step does
|
|
1457
|
+
"""
|
|
1458
|
+
return pulumi.get(self, "name")
|
|
1459
|
+
|
|
1460
|
+
@name.setter
|
|
1461
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
1462
|
+
pulumi.set(self, "name", value)
|
|
1463
|
+
|
|
1464
|
+
@property
|
|
1465
|
+
@pulumi.getter(name="scriptUri")
|
|
1466
|
+
def script_uri(self) -> Optional[pulumi.Input[str]]:
|
|
1467
|
+
"""
|
|
1468
|
+
URI of the shell script to be run for validation. It can be a github link, Azure Storage URI, etc
|
|
1469
|
+
"""
|
|
1470
|
+
return pulumi.get(self, "script_uri")
|
|
1471
|
+
|
|
1472
|
+
@script_uri.setter
|
|
1473
|
+
def script_uri(self, value: Optional[pulumi.Input[str]]):
|
|
1474
|
+
pulumi.set(self, "script_uri", value)
|
|
1475
|
+
|
|
1476
|
+
@property
|
|
1477
|
+
@pulumi.getter(name="sha256Checksum")
|
|
1478
|
+
def sha256_checksum(self) -> Optional[pulumi.Input[str]]:
|
|
1479
|
+
"""
|
|
1480
|
+
SHA256 checksum of the shell script provided in the scriptUri field
|
|
1481
|
+
"""
|
|
1482
|
+
return pulumi.get(self, "sha256_checksum")
|
|
1483
|
+
|
|
1484
|
+
@sha256_checksum.setter
|
|
1485
|
+
def sha256_checksum(self, value: Optional[pulumi.Input[str]]):
|
|
1486
|
+
pulumi.set(self, "sha256_checksum", value)
|
|
1487
|
+
|
|
1488
|
+
|
|
1489
|
+
@pulumi.input_type
|
|
1490
|
+
class ImageTemplateVhdDistributorArgs:
|
|
1491
|
+
def __init__(__self__, *,
|
|
1492
|
+
run_output_name: pulumi.Input[str],
|
|
1493
|
+
type: pulumi.Input[str],
|
|
1494
|
+
artifact_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1495
|
+
uri: Optional[pulumi.Input[str]] = None):
|
|
1496
|
+
"""
|
|
1497
|
+
Distribute via VHD in a storage account.
|
|
1498
|
+
:param pulumi.Input[str] run_output_name: The name to be used for the associated RunOutput.
|
|
1499
|
+
:param pulumi.Input[str] type: Type of distribution.
|
|
1500
|
+
Expected value is 'VHD'.
|
|
1501
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] artifact_tags: Tags that will be applied to the artifact once it has been created/updated by the distributor.
|
|
1502
|
+
:param pulumi.Input[str] uri: Optional Azure Storage URI for the distributed VHD blob. Omit to use the default (empty string) in which case VHD would be published to the storage account in the staging resource group.
|
|
1503
|
+
"""
|
|
1504
|
+
pulumi.set(__self__, "run_output_name", run_output_name)
|
|
1505
|
+
pulumi.set(__self__, "type", 'VHD')
|
|
1506
|
+
if artifact_tags is not None:
|
|
1507
|
+
pulumi.set(__self__, "artifact_tags", artifact_tags)
|
|
1508
|
+
if uri is not None:
|
|
1509
|
+
pulumi.set(__self__, "uri", uri)
|
|
1510
|
+
|
|
1511
|
+
@property
|
|
1512
|
+
@pulumi.getter(name="runOutputName")
|
|
1513
|
+
def run_output_name(self) -> pulumi.Input[str]:
|
|
1514
|
+
"""
|
|
1515
|
+
The name to be used for the associated RunOutput.
|
|
1516
|
+
"""
|
|
1517
|
+
return pulumi.get(self, "run_output_name")
|
|
1518
|
+
|
|
1519
|
+
@run_output_name.setter
|
|
1520
|
+
def run_output_name(self, value: pulumi.Input[str]):
|
|
1521
|
+
pulumi.set(self, "run_output_name", value)
|
|
1522
|
+
|
|
1523
|
+
@property
|
|
1524
|
+
@pulumi.getter
|
|
1525
|
+
def type(self) -> pulumi.Input[str]:
|
|
1526
|
+
"""
|
|
1527
|
+
Type of distribution.
|
|
1528
|
+
Expected value is 'VHD'.
|
|
1529
|
+
"""
|
|
1530
|
+
return pulumi.get(self, "type")
|
|
1531
|
+
|
|
1532
|
+
@type.setter
|
|
1533
|
+
def type(self, value: pulumi.Input[str]):
|
|
1534
|
+
pulumi.set(self, "type", value)
|
|
1535
|
+
|
|
1536
|
+
@property
|
|
1537
|
+
@pulumi.getter(name="artifactTags")
|
|
1538
|
+
def artifact_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
1539
|
+
"""
|
|
1540
|
+
Tags that will be applied to the artifact once it has been created/updated by the distributor.
|
|
1541
|
+
"""
|
|
1542
|
+
return pulumi.get(self, "artifact_tags")
|
|
1543
|
+
|
|
1544
|
+
@artifact_tags.setter
|
|
1545
|
+
def artifact_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
1546
|
+
pulumi.set(self, "artifact_tags", value)
|
|
1547
|
+
|
|
1548
|
+
@property
|
|
1549
|
+
@pulumi.getter
|
|
1550
|
+
def uri(self) -> Optional[pulumi.Input[str]]:
|
|
1551
|
+
"""
|
|
1552
|
+
Optional Azure Storage URI for the distributed VHD blob. Omit to use the default (empty string) in which case VHD would be published to the storage account in the staging resource group.
|
|
1553
|
+
"""
|
|
1554
|
+
return pulumi.get(self, "uri")
|
|
1555
|
+
|
|
1556
|
+
@uri.setter
|
|
1557
|
+
def uri(self, value: Optional[pulumi.Input[str]]):
|
|
1558
|
+
pulumi.set(self, "uri", value)
|
|
1559
|
+
|
|
1560
|
+
|
|
1561
|
+
@pulumi.input_type
|
|
1562
|
+
class ImageTemplateVmProfileArgs:
|
|
1563
|
+
def __init__(__self__, *,
|
|
1564
|
+
os_disk_size_gb: Optional[pulumi.Input[int]] = None,
|
|
1565
|
+
user_assigned_identities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1566
|
+
vm_size: Optional[pulumi.Input[str]] = None,
|
|
1567
|
+
vnet_config: Optional[pulumi.Input['VirtualNetworkConfigArgs']] = None):
|
|
1568
|
+
"""
|
|
1569
|
+
Describes the virtual machines used to build and validate images
|
|
1570
|
+
:param pulumi.Input[int] os_disk_size_gb: Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.
|
|
1571
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] user_assigned_identities: Optional array of resource IDs of user assigned managed identities to be configured on the build VM and validation VM. This may include the identity of the image template.
|
|
1572
|
+
:param pulumi.Input[str] vm_size: Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).
|
|
1573
|
+
:param pulumi.Input['VirtualNetworkConfigArgs'] vnet_config: Optional configuration of the virtual network to use to deploy the build VM and validation VM in. Omit if no specific virtual network needs to be used.
|
|
1574
|
+
"""
|
|
1575
|
+
if os_disk_size_gb is None:
|
|
1576
|
+
os_disk_size_gb = 0
|
|
1577
|
+
if os_disk_size_gb is not None:
|
|
1578
|
+
pulumi.set(__self__, "os_disk_size_gb", os_disk_size_gb)
|
|
1579
|
+
if user_assigned_identities is not None:
|
|
1580
|
+
pulumi.set(__self__, "user_assigned_identities", user_assigned_identities)
|
|
1581
|
+
if vm_size is None:
|
|
1582
|
+
vm_size = ''
|
|
1583
|
+
if vm_size is not None:
|
|
1584
|
+
pulumi.set(__self__, "vm_size", vm_size)
|
|
1585
|
+
if vnet_config is not None:
|
|
1586
|
+
pulumi.set(__self__, "vnet_config", vnet_config)
|
|
1587
|
+
|
|
1588
|
+
@property
|
|
1589
|
+
@pulumi.getter(name="osDiskSizeGB")
|
|
1590
|
+
def os_disk_size_gb(self) -> Optional[pulumi.Input[int]]:
|
|
1591
|
+
"""
|
|
1592
|
+
Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.
|
|
1593
|
+
"""
|
|
1594
|
+
return pulumi.get(self, "os_disk_size_gb")
|
|
1595
|
+
|
|
1596
|
+
@os_disk_size_gb.setter
|
|
1597
|
+
def os_disk_size_gb(self, value: Optional[pulumi.Input[int]]):
|
|
1598
|
+
pulumi.set(self, "os_disk_size_gb", value)
|
|
1599
|
+
|
|
1600
|
+
@property
|
|
1601
|
+
@pulumi.getter(name="userAssignedIdentities")
|
|
1602
|
+
def user_assigned_identities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1603
|
+
"""
|
|
1604
|
+
Optional array of resource IDs of user assigned managed identities to be configured on the build VM and validation VM. This may include the identity of the image template.
|
|
1605
|
+
"""
|
|
1606
|
+
return pulumi.get(self, "user_assigned_identities")
|
|
1607
|
+
|
|
1608
|
+
@user_assigned_identities.setter
|
|
1609
|
+
def user_assigned_identities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1610
|
+
pulumi.set(self, "user_assigned_identities", value)
|
|
1611
|
+
|
|
1612
|
+
@property
|
|
1613
|
+
@pulumi.getter(name="vmSize")
|
|
1614
|
+
def vm_size(self) -> Optional[pulumi.Input[str]]:
|
|
1615
|
+
"""
|
|
1616
|
+
Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).
|
|
1617
|
+
"""
|
|
1618
|
+
return pulumi.get(self, "vm_size")
|
|
1619
|
+
|
|
1620
|
+
@vm_size.setter
|
|
1621
|
+
def vm_size(self, value: Optional[pulumi.Input[str]]):
|
|
1622
|
+
pulumi.set(self, "vm_size", value)
|
|
1623
|
+
|
|
1624
|
+
@property
|
|
1625
|
+
@pulumi.getter(name="vnetConfig")
|
|
1626
|
+
def vnet_config(self) -> Optional[pulumi.Input['VirtualNetworkConfigArgs']]:
|
|
1627
|
+
"""
|
|
1628
|
+
Optional configuration of the virtual network to use to deploy the build VM and validation VM in. Omit if no specific virtual network needs to be used.
|
|
1629
|
+
"""
|
|
1630
|
+
return pulumi.get(self, "vnet_config")
|
|
1631
|
+
|
|
1632
|
+
@vnet_config.setter
|
|
1633
|
+
def vnet_config(self, value: Optional[pulumi.Input['VirtualNetworkConfigArgs']]):
|
|
1634
|
+
pulumi.set(self, "vnet_config", value)
|
|
1635
|
+
|
|
1636
|
+
|
|
1637
|
+
@pulumi.input_type
|
|
1638
|
+
class ImageTemplateWindowsUpdateCustomizerArgs:
|
|
1639
|
+
def __init__(__self__, *,
|
|
1640
|
+
type: pulumi.Input[str],
|
|
1641
|
+
filters: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1642
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
1643
|
+
search_criteria: Optional[pulumi.Input[str]] = None,
|
|
1644
|
+
update_limit: Optional[pulumi.Input[int]] = None):
|
|
1645
|
+
"""
|
|
1646
|
+
Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)
|
|
1647
|
+
:param pulumi.Input[str] type: The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
1648
|
+
Expected value is 'WindowsUpdate'.
|
|
1649
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] filters: Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.
|
|
1650
|
+
:param pulumi.Input[str] name: Friendly Name to provide context on what this customization step does
|
|
1651
|
+
:param pulumi.Input[str] search_criteria: Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.
|
|
1652
|
+
:param pulumi.Input[int] update_limit: Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)
|
|
1653
|
+
"""
|
|
1654
|
+
pulumi.set(__self__, "type", 'WindowsUpdate')
|
|
1655
|
+
if filters is not None:
|
|
1656
|
+
pulumi.set(__self__, "filters", filters)
|
|
1657
|
+
if name is not None:
|
|
1658
|
+
pulumi.set(__self__, "name", name)
|
|
1659
|
+
if search_criteria is not None:
|
|
1660
|
+
pulumi.set(__self__, "search_criteria", search_criteria)
|
|
1661
|
+
if update_limit is None:
|
|
1662
|
+
update_limit = 0
|
|
1663
|
+
if update_limit is not None:
|
|
1664
|
+
pulumi.set(__self__, "update_limit", update_limit)
|
|
1665
|
+
|
|
1666
|
+
@property
|
|
1667
|
+
@pulumi.getter
|
|
1668
|
+
def type(self) -> pulumi.Input[str]:
|
|
1669
|
+
"""
|
|
1670
|
+
The type of customization tool you want to use on the Image. For example, "Shell" can be shell customizer
|
|
1671
|
+
Expected value is 'WindowsUpdate'.
|
|
1672
|
+
"""
|
|
1673
|
+
return pulumi.get(self, "type")
|
|
1674
|
+
|
|
1675
|
+
@type.setter
|
|
1676
|
+
def type(self, value: pulumi.Input[str]):
|
|
1677
|
+
pulumi.set(self, "type", value)
|
|
1678
|
+
|
|
1679
|
+
@property
|
|
1680
|
+
@pulumi.getter
|
|
1681
|
+
def filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1682
|
+
"""
|
|
1683
|
+
Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.
|
|
1684
|
+
"""
|
|
1685
|
+
return pulumi.get(self, "filters")
|
|
1686
|
+
|
|
1687
|
+
@filters.setter
|
|
1688
|
+
def filters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1689
|
+
pulumi.set(self, "filters", value)
|
|
1690
|
+
|
|
1691
|
+
@property
|
|
1692
|
+
@pulumi.getter
|
|
1693
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
1694
|
+
"""
|
|
1695
|
+
Friendly Name to provide context on what this customization step does
|
|
1696
|
+
"""
|
|
1697
|
+
return pulumi.get(self, "name")
|
|
1698
|
+
|
|
1699
|
+
@name.setter
|
|
1700
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
1701
|
+
pulumi.set(self, "name", value)
|
|
1702
|
+
|
|
1703
|
+
@property
|
|
1704
|
+
@pulumi.getter(name="searchCriteria")
|
|
1705
|
+
def search_criteria(self) -> Optional[pulumi.Input[str]]:
|
|
1706
|
+
"""
|
|
1707
|
+
Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.
|
|
1708
|
+
"""
|
|
1709
|
+
return pulumi.get(self, "search_criteria")
|
|
1710
|
+
|
|
1711
|
+
@search_criteria.setter
|
|
1712
|
+
def search_criteria(self, value: Optional[pulumi.Input[str]]):
|
|
1713
|
+
pulumi.set(self, "search_criteria", value)
|
|
1714
|
+
|
|
1715
|
+
@property
|
|
1716
|
+
@pulumi.getter(name="updateLimit")
|
|
1717
|
+
def update_limit(self) -> Optional[pulumi.Input[int]]:
|
|
1718
|
+
"""
|
|
1719
|
+
Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)
|
|
1720
|
+
"""
|
|
1721
|
+
return pulumi.get(self, "update_limit")
|
|
1722
|
+
|
|
1723
|
+
@update_limit.setter
|
|
1724
|
+
def update_limit(self, value: Optional[pulumi.Input[int]]):
|
|
1725
|
+
pulumi.set(self, "update_limit", value)
|
|
1726
|
+
|
|
1727
|
+
|
|
1728
|
+
@pulumi.input_type
|
|
1729
|
+
class PlatformImagePurchasePlanArgs:
|
|
1730
|
+
def __init__(__self__, *,
|
|
1731
|
+
plan_name: pulumi.Input[str],
|
|
1732
|
+
plan_product: pulumi.Input[str],
|
|
1733
|
+
plan_publisher: pulumi.Input[str]):
|
|
1734
|
+
"""
|
|
1735
|
+
Purchase plan configuration for platform image.
|
|
1736
|
+
:param pulumi.Input[str] plan_name: Name of the purchase plan.
|
|
1737
|
+
:param pulumi.Input[str] plan_product: Product of the purchase plan.
|
|
1738
|
+
:param pulumi.Input[str] plan_publisher: Publisher of the purchase plan.
|
|
1739
|
+
"""
|
|
1740
|
+
pulumi.set(__self__, "plan_name", plan_name)
|
|
1741
|
+
pulumi.set(__self__, "plan_product", plan_product)
|
|
1742
|
+
pulumi.set(__self__, "plan_publisher", plan_publisher)
|
|
1743
|
+
|
|
1744
|
+
@property
|
|
1745
|
+
@pulumi.getter(name="planName")
|
|
1746
|
+
def plan_name(self) -> pulumi.Input[str]:
|
|
1747
|
+
"""
|
|
1748
|
+
Name of the purchase plan.
|
|
1749
|
+
"""
|
|
1750
|
+
return pulumi.get(self, "plan_name")
|
|
1751
|
+
|
|
1752
|
+
@plan_name.setter
|
|
1753
|
+
def plan_name(self, value: pulumi.Input[str]):
|
|
1754
|
+
pulumi.set(self, "plan_name", value)
|
|
1755
|
+
|
|
1756
|
+
@property
|
|
1757
|
+
@pulumi.getter(name="planProduct")
|
|
1758
|
+
def plan_product(self) -> pulumi.Input[str]:
|
|
1759
|
+
"""
|
|
1760
|
+
Product of the purchase plan.
|
|
1761
|
+
"""
|
|
1762
|
+
return pulumi.get(self, "plan_product")
|
|
1763
|
+
|
|
1764
|
+
@plan_product.setter
|
|
1765
|
+
def plan_product(self, value: pulumi.Input[str]):
|
|
1766
|
+
pulumi.set(self, "plan_product", value)
|
|
1767
|
+
|
|
1768
|
+
@property
|
|
1769
|
+
@pulumi.getter(name="planPublisher")
|
|
1770
|
+
def plan_publisher(self) -> pulumi.Input[str]:
|
|
1771
|
+
"""
|
|
1772
|
+
Publisher of the purchase plan.
|
|
1773
|
+
"""
|
|
1774
|
+
return pulumi.get(self, "plan_publisher")
|
|
1775
|
+
|
|
1776
|
+
@plan_publisher.setter
|
|
1777
|
+
def plan_publisher(self, value: pulumi.Input[str]):
|
|
1778
|
+
pulumi.set(self, "plan_publisher", value)
|
|
1779
|
+
|
|
1780
|
+
|
|
1781
|
+
@pulumi.input_type
|
|
1782
|
+
class TargetRegionArgs:
|
|
1783
|
+
def __init__(__self__, *,
|
|
1784
|
+
name: pulumi.Input[str],
|
|
1785
|
+
replica_count: Optional[pulumi.Input[int]] = None,
|
|
1786
|
+
storage_account_type: Optional[pulumi.Input[Union[str, 'SharedImageStorageAccountType']]] = None):
|
|
1787
|
+
"""
|
|
1788
|
+
Describes the target region information.
|
|
1789
|
+
:param pulumi.Input[str] name: The name of the region.
|
|
1790
|
+
:param pulumi.Input[int] replica_count: The number of replicas of the Image Version to be created in this region. Omit to use the default (1).
|
|
1791
|
+
:param pulumi.Input[Union[str, 'SharedImageStorageAccountType']] storage_account_type: Specifies the storage account type to be used to store the image in this region. Omit to use the default (Standard_LRS).
|
|
1792
|
+
"""
|
|
1793
|
+
pulumi.set(__self__, "name", name)
|
|
1794
|
+
if replica_count is None:
|
|
1795
|
+
replica_count = 1
|
|
1796
|
+
if replica_count is not None:
|
|
1797
|
+
pulumi.set(__self__, "replica_count", replica_count)
|
|
1798
|
+
if storage_account_type is not None:
|
|
1799
|
+
pulumi.set(__self__, "storage_account_type", storage_account_type)
|
|
1800
|
+
|
|
1801
|
+
@property
|
|
1802
|
+
@pulumi.getter
|
|
1803
|
+
def name(self) -> pulumi.Input[str]:
|
|
1804
|
+
"""
|
|
1805
|
+
The name of the region.
|
|
1806
|
+
"""
|
|
1807
|
+
return pulumi.get(self, "name")
|
|
1808
|
+
|
|
1809
|
+
@name.setter
|
|
1810
|
+
def name(self, value: pulumi.Input[str]):
|
|
1811
|
+
pulumi.set(self, "name", value)
|
|
1812
|
+
|
|
1813
|
+
@property
|
|
1814
|
+
@pulumi.getter(name="replicaCount")
|
|
1815
|
+
def replica_count(self) -> Optional[pulumi.Input[int]]:
|
|
1816
|
+
"""
|
|
1817
|
+
The number of replicas of the Image Version to be created in this region. Omit to use the default (1).
|
|
1818
|
+
"""
|
|
1819
|
+
return pulumi.get(self, "replica_count")
|
|
1820
|
+
|
|
1821
|
+
@replica_count.setter
|
|
1822
|
+
def replica_count(self, value: Optional[pulumi.Input[int]]):
|
|
1823
|
+
pulumi.set(self, "replica_count", value)
|
|
1824
|
+
|
|
1825
|
+
@property
|
|
1826
|
+
@pulumi.getter(name="storageAccountType")
|
|
1827
|
+
def storage_account_type(self) -> Optional[pulumi.Input[Union[str, 'SharedImageStorageAccountType']]]:
|
|
1828
|
+
"""
|
|
1829
|
+
Specifies the storage account type to be used to store the image in this region. Omit to use the default (Standard_LRS).
|
|
1830
|
+
"""
|
|
1831
|
+
return pulumi.get(self, "storage_account_type")
|
|
1832
|
+
|
|
1833
|
+
@storage_account_type.setter
|
|
1834
|
+
def storage_account_type(self, value: Optional[pulumi.Input[Union[str, 'SharedImageStorageAccountType']]]):
|
|
1835
|
+
pulumi.set(self, "storage_account_type", value)
|
|
1836
|
+
|
|
1837
|
+
|
|
1838
|
+
@pulumi.input_type
|
|
1839
|
+
class VirtualNetworkConfigArgs:
|
|
1840
|
+
def __init__(__self__, *,
|
|
1841
|
+
container_instance_subnet_id: Optional[pulumi.Input[str]] = None,
|
|
1842
|
+
proxy_vm_size: Optional[pulumi.Input[str]] = None,
|
|
1843
|
+
subnet_id: Optional[pulumi.Input[str]] = None):
|
|
1844
|
+
"""
|
|
1845
|
+
Virtual Network configuration.
|
|
1846
|
+
:param pulumi.Input[str] container_instance_subnet_id: Resource id of a pre-existing subnet on which Azure Container Instance will be deployed for Isolated Builds. This field may be specified only if `subnetId` is also specified and must be on the same Virtual Network as the subnet specified in `subnetId`.
|
|
1847
|
+
:param pulumi.Input[str] proxy_vm_size: Size of the proxy virtual machine used to pass traffic to the build VM and validation VM. This must not be specified if `containerInstanceSubnetId` is specified because no proxy virtual machine is deployed in that case. Omit or specify empty string to use the default (Standard_A1_v2).
|
|
1848
|
+
:param pulumi.Input[str] subnet_id: Resource id of a pre-existing subnet on which the build VM and validation VM will be deployed
|
|
1849
|
+
"""
|
|
1850
|
+
if container_instance_subnet_id is not None:
|
|
1851
|
+
pulumi.set(__self__, "container_instance_subnet_id", container_instance_subnet_id)
|
|
1852
|
+
if proxy_vm_size is None:
|
|
1853
|
+
proxy_vm_size = ''
|
|
1854
|
+
if proxy_vm_size is not None:
|
|
1855
|
+
pulumi.set(__self__, "proxy_vm_size", proxy_vm_size)
|
|
1856
|
+
if subnet_id is not None:
|
|
1857
|
+
pulumi.set(__self__, "subnet_id", subnet_id)
|
|
1858
|
+
|
|
1859
|
+
@property
|
|
1860
|
+
@pulumi.getter(name="containerInstanceSubnetId")
|
|
1861
|
+
def container_instance_subnet_id(self) -> Optional[pulumi.Input[str]]:
|
|
1862
|
+
"""
|
|
1863
|
+
Resource id of a pre-existing subnet on which Azure Container Instance will be deployed for Isolated Builds. This field may be specified only if `subnetId` is also specified and must be on the same Virtual Network as the subnet specified in `subnetId`.
|
|
1864
|
+
"""
|
|
1865
|
+
return pulumi.get(self, "container_instance_subnet_id")
|
|
1866
|
+
|
|
1867
|
+
@container_instance_subnet_id.setter
|
|
1868
|
+
def container_instance_subnet_id(self, value: Optional[pulumi.Input[str]]):
|
|
1869
|
+
pulumi.set(self, "container_instance_subnet_id", value)
|
|
1870
|
+
|
|
1871
|
+
@property
|
|
1872
|
+
@pulumi.getter(name="proxyVmSize")
|
|
1873
|
+
def proxy_vm_size(self) -> Optional[pulumi.Input[str]]:
|
|
1874
|
+
"""
|
|
1875
|
+
Size of the proxy virtual machine used to pass traffic to the build VM and validation VM. This must not be specified if `containerInstanceSubnetId` is specified because no proxy virtual machine is deployed in that case. Omit or specify empty string to use the default (Standard_A1_v2).
|
|
1876
|
+
"""
|
|
1877
|
+
return pulumi.get(self, "proxy_vm_size")
|
|
1878
|
+
|
|
1879
|
+
@proxy_vm_size.setter
|
|
1880
|
+
def proxy_vm_size(self, value: Optional[pulumi.Input[str]]):
|
|
1881
|
+
pulumi.set(self, "proxy_vm_size", value)
|
|
1882
|
+
|
|
1883
|
+
@property
|
|
1884
|
+
@pulumi.getter(name="subnetId")
|
|
1885
|
+
def subnet_id(self) -> Optional[pulumi.Input[str]]:
|
|
1886
|
+
"""
|
|
1887
|
+
Resource id of a pre-existing subnet on which the build VM and validation VM will be deployed
|
|
1888
|
+
"""
|
|
1889
|
+
return pulumi.get(self, "subnet_id")
|
|
1890
|
+
|
|
1891
|
+
@subnet_id.setter
|
|
1892
|
+
def subnet_id(self, value: Optional[pulumi.Input[str]]):
|
|
1893
|
+
pulumi.set(self, "subnet_id", value)
|
|
1894
|
+
|
|
1895
|
+
|