All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.vsphere.inputs.GuestOsCustomizationSpecWindowsOptionsArgs Maven / Gradle / Ivy

There is a newer version: 4.13.0-alpha.1731738919
Show newest version
// *** 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.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class GuestOsCustomizationSpecWindowsOptionsArgs extends com.pulumi.resources.ResourceArgs {

    public static final GuestOsCustomizationSpecWindowsOptionsArgs Empty = new GuestOsCustomizationSpecWindowsOptionsArgs();

    /**
     * The new administrator password for this virtual machine.
     * 
     */
    @Import(name="adminPassword")
    private @Nullable Output adminPassword;

    /**
     * @return The new administrator password for this virtual machine.
     * 
     */
    public Optional> adminPassword() {
        return Optional.ofNullable(this.adminPassword);
    }

    /**
     * Specifies whether or not the VM automatically logs on as Administrator.
     * 
     */
    @Import(name="autoLogon")
    private @Nullable Output autoLogon;

    /**
     * @return Specifies whether or not the VM automatically logs on as Administrator.
     * 
     */
    public Optional> autoLogon() {
        return Optional.ofNullable(this.autoLogon);
    }

    /**
     * Specifies how many times the VM should auto-logon the Administrator account when auto_logon is true.
     * 
     */
    @Import(name="autoLogonCount")
    private @Nullable Output autoLogonCount;

    /**
     * @return Specifies how many times the VM should auto-logon the Administrator account when auto_logon is true.
     * 
     */
    public Optional> autoLogonCount() {
        return Optional.ofNullable(this.autoLogonCount);
    }

    /**
     * The host name for this virtual machine.
     * 
     */
    @Import(name="computerName", required=true)
    private Output computerName;

    /**
     * @return The host name for this virtual machine.
     * 
     */
    public Output computerName() {
        return this.computerName;
    }

    /**
     * The password of the domain administrator used to join this virtual machine to the domain.
     * 
     */
    @Import(name="domainAdminPassword")
    private @Nullable Output domainAdminPassword;

    /**
     * @return The password of the domain administrator used to join this virtual machine to the domain.
     * 
     */
    public Optional> domainAdminPassword() {
        return Optional.ofNullable(this.domainAdminPassword);
    }

    /**
     * The user account of the domain administrator used to join this virtual machine to the domain.
     * 
     */
    @Import(name="domainAdminUser")
    private @Nullable Output domainAdminUser;

    /**
     * @return The user account of the domain administrator used to join this virtual machine to the domain.
     * 
     */
    public Optional> domainAdminUser() {
        return Optional.ofNullable(this.domainAdminUser);
    }

    /**
     * The MachineObjectOU which specifies the full LDAP path name of the OU to which the virtual machine belongs.
     * 
     */
    @Import(name="domainOu")
    private @Nullable Output domainOu;

    /**
     * @return The MachineObjectOU which specifies the full LDAP path name of the OU to which the virtual machine belongs.
     * 
     */
    public Optional> domainOu() {
        return Optional.ofNullable(this.domainOu);
    }

    /**
     * The full name of the user of this virtual machine.
     * 
     */
    @Import(name="fullName")
    private @Nullable Output fullName;

    /**
     * @return The full name of the user of this virtual machine.
     * 
     */
    public Optional> fullName() {
        return Optional.ofNullable(this.fullName);
    }

    /**
     * The domain that the virtual machine should join.
     * 
     */
    @Import(name="joinDomain")
    private @Nullable Output joinDomain;

    /**
     * @return The domain that the virtual machine should join.
     * 
     */
    public Optional> joinDomain() {
        return Optional.ofNullable(this.joinDomain);
    }

    /**
     * The organization name this virtual machine is being installed for.
     * 
     */
    @Import(name="organizationName")
    private @Nullable Output organizationName;

    /**
     * @return The organization name this virtual machine is being installed for.
     * 
     */
    public Optional> organizationName() {
        return Optional.ofNullable(this.organizationName);
    }

    /**
     * The product key for this virtual machine.
     * 
     */
    @Import(name="productKey")
    private @Nullable Output productKey;

    /**
     * @return The product key for this virtual machine.
     * 
     */
    public Optional> productKey() {
        return Optional.ofNullable(this.productKey);
    }

    /**
     * A list of commands to run at first user logon, after guest customization.
     * 
     */
    @Import(name="runOnceCommandLists")
    private @Nullable Output> runOnceCommandLists;

    /**
     * @return A list of commands to run at first user logon, after guest customization.
     * 
     */
    public Optional>> runOnceCommandLists() {
        return Optional.ofNullable(this.runOnceCommandLists);
    }

    /**
     * The new time zone for the virtual machine. This is a sysprep-dictated timezone code.
     * 
     */
    @Import(name="timeZone")
    private @Nullable Output timeZone;

    /**
     * @return The new time zone for the virtual machine. This is a sysprep-dictated timezone code.
     * 
     */
    public Optional> timeZone() {
        return Optional.ofNullable(this.timeZone);
    }

    /**
     * The workgroup for this virtual machine if not joining a domain.
     * 
     */
    @Import(name="workgroup")
    private @Nullable Output workgroup;

    /**
     * @return The workgroup for this virtual machine if not joining a domain.
     * 
     */
    public Optional> workgroup() {
        return Optional.ofNullable(this.workgroup);
    }

    private GuestOsCustomizationSpecWindowsOptionsArgs() {}

    private GuestOsCustomizationSpecWindowsOptionsArgs(GuestOsCustomizationSpecWindowsOptionsArgs $) {
        this.adminPassword = $.adminPassword;
        this.autoLogon = $.autoLogon;
        this.autoLogonCount = $.autoLogonCount;
        this.computerName = $.computerName;
        this.domainAdminPassword = $.domainAdminPassword;
        this.domainAdminUser = $.domainAdminUser;
        this.domainOu = $.domainOu;
        this.fullName = $.fullName;
        this.joinDomain = $.joinDomain;
        this.organizationName = $.organizationName;
        this.productKey = $.productKey;
        this.runOnceCommandLists = $.runOnceCommandLists;
        this.timeZone = $.timeZone;
        this.workgroup = $.workgroup;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(GuestOsCustomizationSpecWindowsOptionsArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private GuestOsCustomizationSpecWindowsOptionsArgs $;

        public Builder() {
            $ = new GuestOsCustomizationSpecWindowsOptionsArgs();
        }

        public Builder(GuestOsCustomizationSpecWindowsOptionsArgs defaults) {
            $ = new GuestOsCustomizationSpecWindowsOptionsArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param adminPassword The new administrator password for this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder adminPassword(@Nullable Output adminPassword) {
            $.adminPassword = adminPassword;
            return this;
        }

        /**
         * @param adminPassword The new administrator password for this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder adminPassword(String adminPassword) {
            return adminPassword(Output.of(adminPassword));
        }

        /**
         * @param autoLogon Specifies whether or not the VM automatically logs on as Administrator.
         * 
         * @return builder
         * 
         */
        public Builder autoLogon(@Nullable Output autoLogon) {
            $.autoLogon = autoLogon;
            return this;
        }

        /**
         * @param autoLogon Specifies whether or not the VM automatically logs on as Administrator.
         * 
         * @return builder
         * 
         */
        public Builder autoLogon(Boolean autoLogon) {
            return autoLogon(Output.of(autoLogon));
        }

        /**
         * @param autoLogonCount Specifies how many times the VM should auto-logon the Administrator account when auto_logon is true.
         * 
         * @return builder
         * 
         */
        public Builder autoLogonCount(@Nullable Output autoLogonCount) {
            $.autoLogonCount = autoLogonCount;
            return this;
        }

        /**
         * @param autoLogonCount Specifies how many times the VM should auto-logon the Administrator account when auto_logon is true.
         * 
         * @return builder
         * 
         */
        public Builder autoLogonCount(Integer autoLogonCount) {
            return autoLogonCount(Output.of(autoLogonCount));
        }

        /**
         * @param computerName The host name for this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder computerName(Output computerName) {
            $.computerName = computerName;
            return this;
        }

        /**
         * @param computerName The host name for this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder computerName(String computerName) {
            return computerName(Output.of(computerName));
        }

        /**
         * @param domainAdminPassword The password of the domain administrator used to join this virtual machine to the domain.
         * 
         * @return builder
         * 
         */
        public Builder domainAdminPassword(@Nullable Output domainAdminPassword) {
            $.domainAdminPassword = domainAdminPassword;
            return this;
        }

        /**
         * @param domainAdminPassword The password of the domain administrator used to join this virtual machine to the domain.
         * 
         * @return builder
         * 
         */
        public Builder domainAdminPassword(String domainAdminPassword) {
            return domainAdminPassword(Output.of(domainAdminPassword));
        }

        /**
         * @param domainAdminUser The user account of the domain administrator used to join this virtual machine to the domain.
         * 
         * @return builder
         * 
         */
        public Builder domainAdminUser(@Nullable Output domainAdminUser) {
            $.domainAdminUser = domainAdminUser;
            return this;
        }

        /**
         * @param domainAdminUser The user account of the domain administrator used to join this virtual machine to the domain.
         * 
         * @return builder
         * 
         */
        public Builder domainAdminUser(String domainAdminUser) {
            return domainAdminUser(Output.of(domainAdminUser));
        }

        /**
         * @param domainOu The MachineObjectOU which specifies the full LDAP path name of the OU to which the virtual machine belongs.
         * 
         * @return builder
         * 
         */
        public Builder domainOu(@Nullable Output domainOu) {
            $.domainOu = domainOu;
            return this;
        }

        /**
         * @param domainOu The MachineObjectOU which specifies the full LDAP path name of the OU to which the virtual machine belongs.
         * 
         * @return builder
         * 
         */
        public Builder domainOu(String domainOu) {
            return domainOu(Output.of(domainOu));
        }

        /**
         * @param fullName The full name of the user of this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder fullName(@Nullable Output fullName) {
            $.fullName = fullName;
            return this;
        }

        /**
         * @param fullName The full name of the user of this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder fullName(String fullName) {
            return fullName(Output.of(fullName));
        }

        /**
         * @param joinDomain The domain that the virtual machine should join.
         * 
         * @return builder
         * 
         */
        public Builder joinDomain(@Nullable Output joinDomain) {
            $.joinDomain = joinDomain;
            return this;
        }

        /**
         * @param joinDomain The domain that the virtual machine should join.
         * 
         * @return builder
         * 
         */
        public Builder joinDomain(String joinDomain) {
            return joinDomain(Output.of(joinDomain));
        }

        /**
         * @param organizationName The organization name this virtual machine is being installed for.
         * 
         * @return builder
         * 
         */
        public Builder organizationName(@Nullable Output organizationName) {
            $.organizationName = organizationName;
            return this;
        }

        /**
         * @param organizationName The organization name this virtual machine is being installed for.
         * 
         * @return builder
         * 
         */
        public Builder organizationName(String organizationName) {
            return organizationName(Output.of(organizationName));
        }

        /**
         * @param productKey The product key for this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder productKey(@Nullable Output productKey) {
            $.productKey = productKey;
            return this;
        }

        /**
         * @param productKey The product key for this virtual machine.
         * 
         * @return builder
         * 
         */
        public Builder productKey(String productKey) {
            return productKey(Output.of(productKey));
        }

        /**
         * @param runOnceCommandLists A list of commands to run at first user logon, after guest customization.
         * 
         * @return builder
         * 
         */
        public Builder runOnceCommandLists(@Nullable Output> runOnceCommandLists) {
            $.runOnceCommandLists = runOnceCommandLists;
            return this;
        }

        /**
         * @param runOnceCommandLists A list of commands to run at first user logon, after guest customization.
         * 
         * @return builder
         * 
         */
        public Builder runOnceCommandLists(List runOnceCommandLists) {
            return runOnceCommandLists(Output.of(runOnceCommandLists));
        }

        /**
         * @param runOnceCommandLists A list of commands to run at first user logon, after guest customization.
         * 
         * @return builder
         * 
         */
        public Builder runOnceCommandLists(String... runOnceCommandLists) {
            return runOnceCommandLists(List.of(runOnceCommandLists));
        }

        /**
         * @param timeZone The new time zone for the virtual machine. This is a sysprep-dictated timezone code.
         * 
         * @return builder
         * 
         */
        public Builder timeZone(@Nullable Output timeZone) {
            $.timeZone = timeZone;
            return this;
        }

        /**
         * @param timeZone The new time zone for the virtual machine. This is a sysprep-dictated timezone code.
         * 
         * @return builder
         * 
         */
        public Builder timeZone(Integer timeZone) {
            return timeZone(Output.of(timeZone));
        }

        /**
         * @param workgroup The workgroup for this virtual machine if not joining a domain.
         * 
         * @return builder
         * 
         */
        public Builder workgroup(@Nullable Output workgroup) {
            $.workgroup = workgroup;
            return this;
        }

        /**
         * @param workgroup The workgroup for this virtual machine if not joining a domain.
         * 
         * @return builder
         * 
         */
        public Builder workgroup(String workgroup) {
            return workgroup(Output.of(workgroup));
        }

        public GuestOsCustomizationSpecWindowsOptionsArgs build() {
            if ($.computerName == null) {
                throw new MissingRequiredPropertyException("GuestOsCustomizationSpecWindowsOptionsArgs", "computerName");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy