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

com.pulumi.spotinst.azure.inputs.OceanNpHeadroomArgs Maven / Gradle / Ivy

The 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.spotinst.azure.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final OceanNpHeadroomArgs Empty = new OceanNpHeadroomArgs();

    /**
     * Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
     * 
     */
    @Import(name="cpuPerUnit")
    private @Nullable Output cpuPerUnit;

    /**
     * @return Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
     * 
     */
    public Optional> cpuPerUnit() {
        return Optional.ofNullable(this.cpuPerUnit);
    }

    /**
     * Amount of GPU to allocate for headroom unit.
     * 
     */
    @Import(name="gpuPerUnit")
    private @Nullable Output gpuPerUnit;

    /**
     * @return Amount of GPU to allocate for headroom unit.
     * 
     */
    public Optional> gpuPerUnit() {
        return Optional.ofNullable(this.gpuPerUnit);
    }

    /**
     * Configure the amount of memory (MiB) to allocate the headroom.
     * 
     */
    @Import(name="memoryPerUnit")
    private @Nullable Output memoryPerUnit;

    /**
     * @return Configure the amount of memory (MiB) to allocate the headroom.
     * 
     */
    public Optional> memoryPerUnit() {
        return Optional.ofNullable(this.memoryPerUnit);
    }

    /**
     * The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
     * 
     */
    @Import(name="numOfUnits")
    private @Nullable Output numOfUnits;

    /**
     * @return The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
     * 
     */
    public Optional> numOfUnits() {
        return Optional.ofNullable(this.numOfUnits);
    }

    private OceanNpHeadroomArgs() {}

    private OceanNpHeadroomArgs(OceanNpHeadroomArgs $) {
        this.cpuPerUnit = $.cpuPerUnit;
        this.gpuPerUnit = $.gpuPerUnit;
        this.memoryPerUnit = $.memoryPerUnit;
        this.numOfUnits = $.numOfUnits;
    }

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

    public static final class Builder {
        private OceanNpHeadroomArgs $;

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

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

        /**
         * @param cpuPerUnit Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
         * 
         * @return builder
         * 
         */
        public Builder cpuPerUnit(@Nullable Output cpuPerUnit) {
            $.cpuPerUnit = cpuPerUnit;
            return this;
        }

        /**
         * @param cpuPerUnit Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
         * 
         * @return builder
         * 
         */
        public Builder cpuPerUnit(Integer cpuPerUnit) {
            return cpuPerUnit(Output.of(cpuPerUnit));
        }

        /**
         * @param gpuPerUnit Amount of GPU to allocate for headroom unit.
         * 
         * @return builder
         * 
         */
        public Builder gpuPerUnit(@Nullable Output gpuPerUnit) {
            $.gpuPerUnit = gpuPerUnit;
            return this;
        }

        /**
         * @param gpuPerUnit Amount of GPU to allocate for headroom unit.
         * 
         * @return builder
         * 
         */
        public Builder gpuPerUnit(Integer gpuPerUnit) {
            return gpuPerUnit(Output.of(gpuPerUnit));
        }

        /**
         * @param memoryPerUnit Configure the amount of memory (MiB) to allocate the headroom.
         * 
         * @return builder
         * 
         */
        public Builder memoryPerUnit(@Nullable Output memoryPerUnit) {
            $.memoryPerUnit = memoryPerUnit;
            return this;
        }

        /**
         * @param memoryPerUnit Configure the amount of memory (MiB) to allocate the headroom.
         * 
         * @return builder
         * 
         */
        public Builder memoryPerUnit(Integer memoryPerUnit) {
            return memoryPerUnit(Output.of(memoryPerUnit));
        }

        /**
         * @param numOfUnits The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
         * 
         * @return builder
         * 
         */
        public Builder numOfUnits(@Nullable Output numOfUnits) {
            $.numOfUnits = numOfUnits;
            return this;
        }

        /**
         * @param numOfUnits The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
         * 
         * @return builder
         * 
         */
        public Builder numOfUnits(Integer numOfUnits) {
            return numOfUnits(Output.of(numOfUnits));
        }

        public OceanNpHeadroomArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy