
com.pulumi.vsphere.outputs.GuestOsCustomizationSpec Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of vsphere Show documentation
Show all versions of vsphere Show documentation
A Pulumi package for creating vsphere 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.vsphere.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.vsphere.outputs.GuestOsCustomizationSpecLinuxOptions;
import com.pulumi.vsphere.outputs.GuestOsCustomizationSpecNetworkInterface;
import com.pulumi.vsphere.outputs.GuestOsCustomizationSpecWindowsOptions;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class GuestOsCustomizationSpec {
/**
* @return The list of DNS servers for a virtual network adapter with a static IP address.
*
*/
private @Nullable List dnsServerLists;
/**
* @return A list of DNS search domains to add to the DNS configuration on the virtual machine.
*
*/
private @Nullable List dnsSuffixLists;
/**
* @return The IPv4 default gateway when using network_interface customization on the virtual machine. This address must be local to a static IPv4 address configured in an interface sub-resource.
*
*/
private @Nullable String ipv4Gateway;
/**
* @return The IPv6 default gateway when using network_interface customization on the virtual machine. This address must be local to a static IPv4 address configured in an interface sub-resource.
*
*/
private @Nullable String ipv6Gateway;
/**
* @return A list of configuration options specific to Linux virtual machines.
*
*/
private @Nullable GuestOsCustomizationSpecLinuxOptions linuxOptions;
/**
* @return A specification of network interface configuration options.
*
*/
private @Nullable List networkInterfaces;
/**
* @return A list of configuration options specific to Windows virtual machines.
*
*/
private @Nullable GuestOsCustomizationSpecWindowsOptions windowsOptions;
/**
* @return Use this option to specify a windows sysprep file directly.
*
*/
private @Nullable String windowsSysprepText;
private GuestOsCustomizationSpec() {}
/**
* @return The list of DNS servers for a virtual network adapter with a static IP address.
*
*/
public List dnsServerLists() {
return this.dnsServerLists == null ? List.of() : this.dnsServerLists;
}
/**
* @return A list of DNS search domains to add to the DNS configuration on the virtual machine.
*
*/
public List dnsSuffixLists() {
return this.dnsSuffixLists == null ? List.of() : this.dnsSuffixLists;
}
/**
* @return The IPv4 default gateway when using network_interface customization on the virtual machine. This address must be local to a static IPv4 address configured in an interface sub-resource.
*
*/
public Optional ipv4Gateway() {
return Optional.ofNullable(this.ipv4Gateway);
}
/**
* @return The IPv6 default gateway when using network_interface customization on the virtual machine. This address must be local to a static IPv4 address configured in an interface sub-resource.
*
*/
public Optional ipv6Gateway() {
return Optional.ofNullable(this.ipv6Gateway);
}
/**
* @return A list of configuration options specific to Linux virtual machines.
*
*/
public Optional linuxOptions() {
return Optional.ofNullable(this.linuxOptions);
}
/**
* @return A specification of network interface configuration options.
*
*/
public List networkInterfaces() {
return this.networkInterfaces == null ? List.of() : this.networkInterfaces;
}
/**
* @return A list of configuration options specific to Windows virtual machines.
*
*/
public Optional windowsOptions() {
return Optional.ofNullable(this.windowsOptions);
}
/**
* @return Use this option to specify a windows sysprep file directly.
*
*/
public Optional windowsSysprepText() {
return Optional.ofNullable(this.windowsSysprepText);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GuestOsCustomizationSpec defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable List dnsServerLists;
private @Nullable List dnsSuffixLists;
private @Nullable String ipv4Gateway;
private @Nullable String ipv6Gateway;
private @Nullable GuestOsCustomizationSpecLinuxOptions linuxOptions;
private @Nullable List networkInterfaces;
private @Nullable GuestOsCustomizationSpecWindowsOptions windowsOptions;
private @Nullable String windowsSysprepText;
public Builder() {}
public Builder(GuestOsCustomizationSpec defaults) {
Objects.requireNonNull(defaults);
this.dnsServerLists = defaults.dnsServerLists;
this.dnsSuffixLists = defaults.dnsSuffixLists;
this.ipv4Gateway = defaults.ipv4Gateway;
this.ipv6Gateway = defaults.ipv6Gateway;
this.linuxOptions = defaults.linuxOptions;
this.networkInterfaces = defaults.networkInterfaces;
this.windowsOptions = defaults.windowsOptions;
this.windowsSysprepText = defaults.windowsSysprepText;
}
@CustomType.Setter
public Builder dnsServerLists(@Nullable List dnsServerLists) {
this.dnsServerLists = dnsServerLists;
return this;
}
public Builder dnsServerLists(String... dnsServerLists) {
return dnsServerLists(List.of(dnsServerLists));
}
@CustomType.Setter
public Builder dnsSuffixLists(@Nullable List dnsSuffixLists) {
this.dnsSuffixLists = dnsSuffixLists;
return this;
}
public Builder dnsSuffixLists(String... dnsSuffixLists) {
return dnsSuffixLists(List.of(dnsSuffixLists));
}
@CustomType.Setter
public Builder ipv4Gateway(@Nullable String ipv4Gateway) {
this.ipv4Gateway = ipv4Gateway;
return this;
}
@CustomType.Setter
public Builder ipv6Gateway(@Nullable String ipv6Gateway) {
this.ipv6Gateway = ipv6Gateway;
return this;
}
@CustomType.Setter
public Builder linuxOptions(@Nullable GuestOsCustomizationSpecLinuxOptions linuxOptions) {
this.linuxOptions = linuxOptions;
return this;
}
@CustomType.Setter
public Builder networkInterfaces(@Nullable List networkInterfaces) {
this.networkInterfaces = networkInterfaces;
return this;
}
public Builder networkInterfaces(GuestOsCustomizationSpecNetworkInterface... networkInterfaces) {
return networkInterfaces(List.of(networkInterfaces));
}
@CustomType.Setter
public Builder windowsOptions(@Nullable GuestOsCustomizationSpecWindowsOptions windowsOptions) {
this.windowsOptions = windowsOptions;
return this;
}
@CustomType.Setter
public Builder windowsSysprepText(@Nullable String windowsSysprepText) {
this.windowsSysprepText = windowsSysprepText;
return this;
}
public GuestOsCustomizationSpec build() {
final var _resultValue = new GuestOsCustomizationSpec();
_resultValue.dnsServerLists = dnsServerLists;
_resultValue.dnsSuffixLists = dnsSuffixLists;
_resultValue.ipv4Gateway = ipv4Gateway;
_resultValue.ipv6Gateway = ipv6Gateway;
_resultValue.linuxOptions = linuxOptions;
_resultValue.networkInterfaces = networkInterfaces;
_resultValue.windowsOptions = windowsOptions;
_resultValue.windowsSysprepText = windowsSysprepText;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy