Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs Maven / Gradle / Ivy
Go to download
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.compute.inputs;
import com.pulumi.azurenative.compute.inputs.LinuxConfigurationArgs;
import com.pulumi.azurenative.compute.inputs.VaultSecretGroupArgs;
import com.pulumi.azurenative.compute.inputs.WindowsConfigurationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
/**
* Describes a virtual machine scale set OS profile.
*
*/
public final class VirtualMachineScaleSetOSProfileArgs extends com.pulumi.resources.ResourceArgs {
public static final VirtualMachineScaleSetOSProfileArgs Empty = new VirtualMachineScaleSetOSProfileArgs();
/**
* Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\W_]) <br><br> **Disallowed values:** "abc{@literal @}123", "P{@literal @}$$w0rd", "P{@literal @}ssw0rd", "P{@literal @}ssword123", "Pa$$word", "pass{@literal @}word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
*
*/
@Import(name="adminPassword")
private @Nullable Output adminPassword;
/**
* @return Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\W_]) <br><br> **Disallowed values:** "abc{@literal @}123", "P{@literal @}$$w0rd", "P{@literal @}ssw0rd", "P{@literal @}ssword123", "Pa$$word", "pass{@literal @}word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
*
*/
public Optional> adminPassword() {
return Optional.ofNullable(this.adminPassword);
}
/**
* Specifies the name of the administrator account. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters
*
*/
@Import(name="adminUsername")
private @Nullable Output adminUsername;
/**
* @return Specifies the name of the administrator account. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters
*
*/
public Optional> adminUsername() {
return Optional.ofNullable(this.adminUsername);
}
/**
* Specifies whether extension operations should be allowed on the virtual machine scale set. This may only be set to False when no extensions are present on the virtual machine scale set.
*
*/
@Import(name="allowExtensionOperations")
private @Nullable Output allowExtensionOperations;
/**
* @return Specifies whether extension operations should be allowed on the virtual machine scale set. This may only be set to False when no extensions are present on the virtual machine scale set.
*
*/
public Optional> allowExtensionOperations() {
return Optional.ofNullable(this.allowExtensionOperations);
}
/**
* Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long.
*
*/
@Import(name="computerNamePrefix")
private @Nullable Output computerNamePrefix;
/**
* @return Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long.
*
*/
public Optional> computerNamePrefix() {
return Optional.ofNullable(this.computerNamePrefix);
}
/**
* Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)
*
*/
@Import(name="customData")
private @Nullable Output customData;
/**
* @return Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)
*
*/
public Optional> customData() {
return Optional.ofNullable(this.customData);
}
/**
* Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*
*/
@Import(name="linuxConfiguration")
private @Nullable Output linuxConfiguration;
/**
* @return Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*
*/
public Optional> linuxConfiguration() {
return Optional.ofNullable(this.linuxConfiguration);
}
/**
* Optional property which must either be set to True or omitted.
*
*/
@Import(name="requireGuestProvisionSignal")
private @Nullable Output requireGuestProvisionSignal;
/**
* @return Optional property which must either be set to True or omitted.
*
*/
public Optional> requireGuestProvisionSignal() {
return Optional.ofNullable(this.requireGuestProvisionSignal);
}
/**
* Specifies set of certificates that should be installed onto the virtual machines in the scale set. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*
*/
@Import(name="secrets")
private @Nullable Output> secrets;
/**
* @return Specifies set of certificates that should be installed onto the virtual machines in the scale set. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*
*/
public Optional>> secrets() {
return Optional.ofNullable(this.secrets);
}
/**
* Specifies Windows operating system settings on the virtual machine.
*
*/
@Import(name="windowsConfiguration")
private @Nullable Output windowsConfiguration;
/**
* @return Specifies Windows operating system settings on the virtual machine.
*
*/
public Optional> windowsConfiguration() {
return Optional.ofNullable(this.windowsConfiguration);
}
private VirtualMachineScaleSetOSProfileArgs() {}
private VirtualMachineScaleSetOSProfileArgs(VirtualMachineScaleSetOSProfileArgs $) {
this.adminPassword = $.adminPassword;
this.adminUsername = $.adminUsername;
this.allowExtensionOperations = $.allowExtensionOperations;
this.computerNamePrefix = $.computerNamePrefix;
this.customData = $.customData;
this.linuxConfiguration = $.linuxConfiguration;
this.requireGuestProvisionSignal = $.requireGuestProvisionSignal;
this.secrets = $.secrets;
this.windowsConfiguration = $.windowsConfiguration;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(VirtualMachineScaleSetOSProfileArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private VirtualMachineScaleSetOSProfileArgs $;
public Builder() {
$ = new VirtualMachineScaleSetOSProfileArgs();
}
public Builder(VirtualMachineScaleSetOSProfileArgs defaults) {
$ = new VirtualMachineScaleSetOSProfileArgs(Objects.requireNonNull(defaults));
}
/**
* @param adminPassword Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\W_]) <br><br> **Disallowed values:** "abc{@literal @}123", "P{@literal @}$$w0rd", "P{@literal @}ssw0rd", "P{@literal @}ssword123", "Pa$$word", "pass{@literal @}word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
*
* @return builder
*
*/
public Builder adminPassword(@Nullable Output adminPassword) {
$.adminPassword = adminPassword;
return this;
}
/**
* @param adminPassword Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\W_]) <br><br> **Disallowed values:** "abc{@literal @}123", "P{@literal @}$$w0rd", "P{@literal @}ssw0rd", "P{@literal @}ssword123", "Pa$$word", "pass{@literal @}word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
*
* @return builder
*
*/
public Builder adminPassword(String adminPassword) {
return adminPassword(Output.of(adminPassword));
}
/**
* @param adminUsername Specifies the name of the administrator account. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters
*
* @return builder
*
*/
public Builder adminUsername(@Nullable Output adminUsername) {
$.adminUsername = adminUsername;
return this;
}
/**
* @param adminUsername Specifies the name of the administrator account. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters
*
* @return builder
*
*/
public Builder adminUsername(String adminUsername) {
return adminUsername(Output.of(adminUsername));
}
/**
* @param allowExtensionOperations Specifies whether extension operations should be allowed on the virtual machine scale set. This may only be set to False when no extensions are present on the virtual machine scale set.
*
* @return builder
*
*/
public Builder allowExtensionOperations(@Nullable Output allowExtensionOperations) {
$.allowExtensionOperations = allowExtensionOperations;
return this;
}
/**
* @param allowExtensionOperations Specifies whether extension operations should be allowed on the virtual machine scale set. This may only be set to False when no extensions are present on the virtual machine scale set.
*
* @return builder
*
*/
public Builder allowExtensionOperations(Boolean allowExtensionOperations) {
return allowExtensionOperations(Output.of(allowExtensionOperations));
}
/**
* @param computerNamePrefix Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long.
*
* @return builder
*
*/
public Builder computerNamePrefix(@Nullable Output computerNamePrefix) {
$.computerNamePrefix = computerNamePrefix;
return this;
}
/**
* @param computerNamePrefix Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long.
*
* @return builder
*
*/
public Builder computerNamePrefix(String computerNamePrefix) {
return computerNamePrefix(Output.of(computerNamePrefix));
}
/**
* @param customData Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)
*
* @return builder
*
*/
public Builder customData(@Nullable Output customData) {
$.customData = customData;
return this;
}
/**
* @param customData Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)
*
* @return builder
*
*/
public Builder customData(String customData) {
return customData(Output.of(customData));
}
/**
* @param linuxConfiguration Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*
* @return builder
*
*/
public Builder linuxConfiguration(@Nullable Output linuxConfiguration) {
$.linuxConfiguration = linuxConfiguration;
return this;
}
/**
* @param linuxConfiguration Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*
* @return builder
*
*/
public Builder linuxConfiguration(LinuxConfigurationArgs linuxConfiguration) {
return linuxConfiguration(Output.of(linuxConfiguration));
}
/**
* @param requireGuestProvisionSignal Optional property which must either be set to True or omitted.
*
* @return builder
*
*/
public Builder requireGuestProvisionSignal(@Nullable Output requireGuestProvisionSignal) {
$.requireGuestProvisionSignal = requireGuestProvisionSignal;
return this;
}
/**
* @param requireGuestProvisionSignal Optional property which must either be set to True or omitted.
*
* @return builder
*
*/
public Builder requireGuestProvisionSignal(Boolean requireGuestProvisionSignal) {
return requireGuestProvisionSignal(Output.of(requireGuestProvisionSignal));
}
/**
* @param secrets Specifies set of certificates that should be installed onto the virtual machines in the scale set. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*
* @return builder
*
*/
public Builder secrets(@Nullable Output> secrets) {
$.secrets = secrets;
return this;
}
/**
* @param secrets Specifies set of certificates that should be installed onto the virtual machines in the scale set. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*
* @return builder
*
*/
public Builder secrets(List secrets) {
return secrets(Output.of(secrets));
}
/**
* @param secrets Specifies set of certificates that should be installed onto the virtual machines in the scale set. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*
* @return builder
*
*/
public Builder secrets(VaultSecretGroupArgs... secrets) {
return secrets(List.of(secrets));
}
/**
* @param windowsConfiguration Specifies Windows operating system settings on the virtual machine.
*
* @return builder
*
*/
public Builder windowsConfiguration(@Nullable Output windowsConfiguration) {
$.windowsConfiguration = windowsConfiguration;
return this;
}
/**
* @param windowsConfiguration Specifies Windows operating system settings on the virtual machine.
*
* @return builder
*
*/
public Builder windowsConfiguration(WindowsConfigurationArgs windowsConfiguration) {
return windowsConfiguration(Output.of(windowsConfiguration));
}
public VirtualMachineScaleSetOSProfileArgs build() {
return $;
}
}
}