
com.pulumi.azurenative.virtualmachineimages.outputs.ImageTemplateVmProfileResponse Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.virtualmachineimages.outputs;
import com.pulumi.azurenative.virtualmachineimages.outputs.VirtualNetworkConfigResponse;
import com.pulumi.core.annotations.CustomType;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class ImageTemplateVmProfileResponse {
/**
* @return Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.
*
*/
private @Nullable Integer osDiskSizeGB;
/**
* @return 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.
*
*/
private @Nullable List userAssignedIdentities;
/**
* @return 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).
*
*/
private @Nullable String vmSize;
/**
* @return 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.
*
*/
private @Nullable VirtualNetworkConfigResponse vnetConfig;
private ImageTemplateVmProfileResponse() {}
/**
* @return Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.
*
*/
public Optional osDiskSizeGB() {
return Optional.ofNullable(this.osDiskSizeGB);
}
/**
* @return 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.
*
*/
public List userAssignedIdentities() {
return this.userAssignedIdentities == null ? List.of() : this.userAssignedIdentities;
}
/**
* @return 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).
*
*/
public Optional vmSize() {
return Optional.ofNullable(this.vmSize);
}
/**
* @return 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.
*
*/
public Optional vnetConfig() {
return Optional.ofNullable(this.vnetConfig);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ImageTemplateVmProfileResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable Integer osDiskSizeGB;
private @Nullable List userAssignedIdentities;
private @Nullable String vmSize;
private @Nullable VirtualNetworkConfigResponse vnetConfig;
public Builder() {}
public Builder(ImageTemplateVmProfileResponse defaults) {
Objects.requireNonNull(defaults);
this.osDiskSizeGB = defaults.osDiskSizeGB;
this.userAssignedIdentities = defaults.userAssignedIdentities;
this.vmSize = defaults.vmSize;
this.vnetConfig = defaults.vnetConfig;
}
@CustomType.Setter
public Builder osDiskSizeGB(@Nullable Integer osDiskSizeGB) {
this.osDiskSizeGB = osDiskSizeGB;
return this;
}
@CustomType.Setter
public Builder userAssignedIdentities(@Nullable List userAssignedIdentities) {
this.userAssignedIdentities = userAssignedIdentities;
return this;
}
public Builder userAssignedIdentities(String... userAssignedIdentities) {
return userAssignedIdentities(List.of(userAssignedIdentities));
}
@CustomType.Setter
public Builder vmSize(@Nullable String vmSize) {
this.vmSize = vmSize;
return this;
}
@CustomType.Setter
public Builder vnetConfig(@Nullable VirtualNetworkConfigResponse vnetConfig) {
this.vnetConfig = vnetConfig;
return this;
}
public ImageTemplateVmProfileResponse build() {
final var _resultValue = new ImageTemplateVmProfileResponse();
_resultValue.osDiskSizeGB = osDiskSizeGB;
_resultValue.userAssignedIdentities = userAssignedIdentities;
_resultValue.vmSize = vmSize;
_resultValue.vnetConfig = vnetConfig;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy