UNPKG

@pulumi/azure-native

Version:

[![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com) [![NPM version](https://badge.fury.io/js/%40pulumi%2Fazure-native.svg)](https://npmjs.com/package/@pulumi/azure-native) [![Python version](https://badge.fury.io/py/pu

200 lines (199 loc) • 11.3 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Image template is an ARM resource managed by Microsoft.VirtualMachineImages provider * * Uses Azure REST API version 2024-02-01. In version 2.x of the Azure Native provider, it used API version 2022-07-01. * * Other available API versions: 2022-07-01, 2023-07-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native virtualmachineimages [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details. */ export declare class VirtualMachineImageTemplate extends pulumi.CustomResource { /** * Get an existing VirtualMachineImageTemplate resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): VirtualMachineImageTemplate; /** * Returns true if the given object is an instance of VirtualMachineImageTemplate. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is VirtualMachineImageTemplate; /** * Indicates whether or not to automatically run the image template build on template creation or update. */ readonly autoRun: pulumi.Output<outputs.virtualmachineimages.ImageTemplateAutoRunResponse | undefined>; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output<string>; /** * Maximum duration to wait while building the image template (includes all customizations, optimization, validations, and distributions). Omit or specify 0 to use the default (4 hours). */ readonly buildTimeoutInMinutes: pulumi.Output<number | undefined>; /** * Specifies the properties used to describe the customization steps of the image, like Image source etc */ readonly customize: pulumi.Output<(outputs.virtualmachineimages.ImageTemplateFileCustomizerResponse | outputs.virtualmachineimages.ImageTemplatePowerShellCustomizerResponse | outputs.virtualmachineimages.ImageTemplateRestartCustomizerResponse | outputs.virtualmachineimages.ImageTemplateShellCustomizerResponse | outputs.virtualmachineimages.ImageTemplateWindowsUpdateCustomizerResponse)[] | undefined>; /** * The distribution targets where the image output needs to go to. */ readonly distribute: pulumi.Output<(outputs.virtualmachineimages.ImageTemplateManagedImageDistributorResponse | outputs.virtualmachineimages.ImageTemplateSharedImageDistributorResponse | outputs.virtualmachineimages.ImageTemplateVhdDistributorResponse)[]>; /** * Error handling options upon a build failure */ readonly errorHandling: pulumi.Output<outputs.virtualmachineimages.ImageTemplatePropertiesResponseErrorHandling | undefined>; /** * The staging resource group id in the same subscription as the image template that will be used to build the image. This read-only field differs from 'stagingResourceGroup' only if the value specified in the 'stagingResourceGroup' field is empty. */ readonly exactStagingResourceGroup: pulumi.Output<string>; /** * The identity of the image template, if configured. */ readonly identity: pulumi.Output<outputs.virtualmachineimages.ImageTemplateIdentityResponse>; /** * State of 'run' that is currently executing or was last executed. */ readonly lastRunStatus: pulumi.Output<outputs.virtualmachineimages.ImageTemplateLastRunStatusResponse>; /** * The geo-location where the resource lives */ readonly location: pulumi.Output<string>; /** * Tags that will be applied to the resource group and/or resources created by the service. */ readonly managedResourceTags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The name of the resource */ readonly name: pulumi.Output<string>; /** * Specifies optimization to be performed on image. */ readonly optimize: pulumi.Output<outputs.virtualmachineimages.ImageTemplatePropertiesResponseOptimize | undefined>; /** * Provisioning error, if any */ readonly provisioningError: pulumi.Output<outputs.virtualmachineimages.ProvisioningErrorResponse>; /** * Provisioning state of the resource */ readonly provisioningState: pulumi.Output<string>; /** * Specifies the properties used to describe the source image. */ readonly source: pulumi.Output<outputs.virtualmachineimages.ImageTemplateManagedImageSourceResponse | outputs.virtualmachineimages.ImageTemplatePlatformImageSourceResponse | outputs.virtualmachineimages.ImageTemplateSharedImageVersionSourceResponse>; /** * The staging resource group id in the same subscription as the image template that will be used to build the image. If this field is empty, a resource group with a random name will be created. If the resource group specified in this field doesn't exist, it will be created with the same name. If the resource group specified exists, it must be empty and in the same region as the image template. The resource group created will be deleted during template deletion if this field is empty or the resource group specified doesn't exist, but if the resource group specified exists the resources created in the resource group will be deleted during template deletion and the resource group itself will remain. */ readonly stagingResourceGroup: pulumi.Output<string | undefined>; /** * Azure Resource Manager metadata containing createdBy and modifiedBy information. */ readonly systemData: pulumi.Output<outputs.virtualmachineimages.SystemDataResponse>; /** * Resource tags. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ readonly type: pulumi.Output<string>; /** * Configuration options and list of validations to be performed on the resulting image. */ readonly validate: pulumi.Output<outputs.virtualmachineimages.ImageTemplatePropertiesResponseValidate | undefined>; /** * Describes how virtual machine is set up to build images */ readonly vmProfile: pulumi.Output<outputs.virtualmachineimages.ImageTemplateVmProfileResponse | undefined>; /** * Create a VirtualMachineImageTemplate resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: VirtualMachineImageTemplateArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a VirtualMachineImageTemplate resource. */ export interface VirtualMachineImageTemplateArgs { /** * Indicates whether or not to automatically run the image template build on template creation or update. */ autoRun?: pulumi.Input<inputs.virtualmachineimages.ImageTemplateAutoRunArgs>; /** * Maximum duration to wait while building the image template (includes all customizations, optimization, validations, and distributions). Omit or specify 0 to use the default (4 hours). */ buildTimeoutInMinutes?: pulumi.Input<number>; /** * Specifies the properties used to describe the customization steps of the image, like Image source etc */ customize?: pulumi.Input<pulumi.Input<inputs.virtualmachineimages.ImageTemplateFileCustomizerArgs | inputs.virtualmachineimages.ImageTemplatePowerShellCustomizerArgs | inputs.virtualmachineimages.ImageTemplateRestartCustomizerArgs | inputs.virtualmachineimages.ImageTemplateShellCustomizerArgs | inputs.virtualmachineimages.ImageTemplateWindowsUpdateCustomizerArgs>[]>; /** * The distribution targets where the image output needs to go to. */ distribute: pulumi.Input<pulumi.Input<inputs.virtualmachineimages.ImageTemplateManagedImageDistributorArgs | inputs.virtualmachineimages.ImageTemplateSharedImageDistributorArgs | inputs.virtualmachineimages.ImageTemplateVhdDistributorArgs>[]>; /** * Error handling options upon a build failure */ errorHandling?: pulumi.Input<inputs.virtualmachineimages.ImageTemplatePropertiesErrorHandlingArgs>; /** * The identity of the image template, if configured. */ identity: pulumi.Input<inputs.virtualmachineimages.ImageTemplateIdentityArgs>; /** * The name of the image Template */ imageTemplateName?: pulumi.Input<string>; /** * The geo-location where the resource lives */ location?: pulumi.Input<string>; /** * Tags that will be applied to the resource group and/or resources created by the service. */ managedResourceTags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * Specifies optimization to be performed on image. */ optimize?: pulumi.Input<inputs.virtualmachineimages.ImageTemplatePropertiesOptimizeArgs>; /** * The name of the resource group. */ resourceGroupName: pulumi.Input<string>; /** * Specifies the properties used to describe the source image. */ source: pulumi.Input<inputs.virtualmachineimages.ImageTemplateManagedImageSourceArgs | inputs.virtualmachineimages.ImageTemplatePlatformImageSourceArgs | inputs.virtualmachineimages.ImageTemplateSharedImageVersionSourceArgs>; /** * The staging resource group id in the same subscription as the image template that will be used to build the image. If this field is empty, a resource group with a random name will be created. If the resource group specified in this field doesn't exist, it will be created with the same name. If the resource group specified exists, it must be empty and in the same region as the image template. The resource group created will be deleted during template deletion if this field is empty or the resource group specified doesn't exist, but if the resource group specified exists the resources created in the resource group will be deleted during template deletion and the resource group itself will remain. */ stagingResourceGroup?: pulumi.Input<string>; /** * Resource tags. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * Configuration options and list of validations to be performed on the resulting image. */ validate?: pulumi.Input<inputs.virtualmachineimages.ImageTemplatePropertiesValidateArgs>; /** * Describes how virtual machine is set up to build images */ vmProfile?: pulumi.Input<inputs.virtualmachineimages.ImageTemplateVmProfileArgs>; }