com.pulumi.azure.containerservice.outputs.KubernetesClusterWindowsProfile Maven / Gradle / Ivy
// *** 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.azure.containerservice.outputs;
import com.pulumi.azure.containerservice.outputs.KubernetesClusterWindowsProfileGmsa;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class KubernetesClusterWindowsProfile {
/**
* @return The Admin Password for Windows VMs. Length must be between 14 and 123 characters.
*
*/
private String adminPassword;
/**
* @return The Admin Username for Windows VMs. Changing this forces a new resource to be created.
*
*/
private String adminUsername;
/**
* @return A `gmsa` block as defined below.
*
*/
private @Nullable KubernetesClusterWindowsProfileGmsa gmsa;
/**
* @return Specifies the type of on-premise license which should be used for Node Pool Windows Virtual Machine. At this time the only possible value is `Windows_Server`.
*
*/
private @Nullable String license;
private KubernetesClusterWindowsProfile() {}
/**
* @return The Admin Password for Windows VMs. Length must be between 14 and 123 characters.
*
*/
public String adminPassword() {
return this.adminPassword;
}
/**
* @return The Admin Username for Windows VMs. Changing this forces a new resource to be created.
*
*/
public String adminUsername() {
return this.adminUsername;
}
/**
* @return A `gmsa` block as defined below.
*
*/
public Optional gmsa() {
return Optional.ofNullable(this.gmsa);
}
/**
* @return Specifies the type of on-premise license which should be used for Node Pool Windows Virtual Machine. At this time the only possible value is `Windows_Server`.
*
*/
public Optional license() {
return Optional.ofNullable(this.license);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(KubernetesClusterWindowsProfile defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String adminPassword;
private String adminUsername;
private @Nullable KubernetesClusterWindowsProfileGmsa gmsa;
private @Nullable String license;
public Builder() {}
public Builder(KubernetesClusterWindowsProfile defaults) {
Objects.requireNonNull(defaults);
this.adminPassword = defaults.adminPassword;
this.adminUsername = defaults.adminUsername;
this.gmsa = defaults.gmsa;
this.license = defaults.license;
}
@CustomType.Setter
public Builder adminPassword(String adminPassword) {
if (adminPassword == null) {
throw new MissingRequiredPropertyException("KubernetesClusterWindowsProfile", "adminPassword");
}
this.adminPassword = adminPassword;
return this;
}
@CustomType.Setter
public Builder adminUsername(String adminUsername) {
if (adminUsername == null) {
throw new MissingRequiredPropertyException("KubernetesClusterWindowsProfile", "adminUsername");
}
this.adminUsername = adminUsername;
return this;
}
@CustomType.Setter
public Builder gmsa(@Nullable KubernetesClusterWindowsProfileGmsa gmsa) {
this.gmsa = gmsa;
return this;
}
@CustomType.Setter
public Builder license(@Nullable String license) {
this.license = license;
return this;
}
public KubernetesClusterWindowsProfile build() {
final var _resultValue = new KubernetesClusterWindowsProfile();
_resultValue.adminPassword = adminPassword;
_resultValue.adminUsername = adminUsername;
_resultValue.gmsa = gmsa;
_resultValue.license = license;
return _resultValue;
}
}
}