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

com.pulumi.spotinst.aws.inputs.OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs 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.aws.inputs;

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


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

    public static final OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs Empty = new OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs();

    /**
     * Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
     * 
     */
    @Import(name="batchMinHealthyPercentage")
    private @Nullable Output batchMinHealthyPercentage;

    /**
     * @return Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
     * 
     */
    public Optional> batchMinHealthyPercentage() {
        return Optional.ofNullable(this.batchMinHealthyPercentage);
    }

    /**
     * Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
     * 
     */
    @Import(name="batchSizePercentage")
    private @Nullable Output batchSizePercentage;

    /**
     * @return Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
     * 
     */
    public Optional> batchSizePercentage() {
        return Optional.ofNullable(this.batchSizePercentage);
    }

    /**
     * Add a `comment` description for the roll. The `comment` is limited to 256 chars
     * 
     */
    @Import(name="comment")
    private @Nullable Output comment;

    /**
     * @return Add a `comment` description for the roll. The `comment` is limited to 256 chars
     * 
     */
    public Optional> comment() {
        return Optional.ofNullable(this.comment);
    }

    /**
     * During the roll, if the parameter is set to true we honor PDB during the instance replacement.
     * 
     */
    @Import(name="respectPdb")
    private @Nullable Output respectPdb;

    /**
     * @return During the roll, if the parameter is set to true we honor PDB during the instance replacement.
     * 
     */
    public Optional> respectPdb() {
        return Optional.ofNullable(this.respectPdb);
    }

    private OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs() {}

    private OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs(OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs $) {
        this.batchMinHealthyPercentage = $.batchMinHealthyPercentage;
        this.batchSizePercentage = $.batchSizePercentage;
        this.comment = $.comment;
        this.respectPdb = $.respectPdb;
    }

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

    public static final class Builder {
        private OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs $;

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

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

        /**
         * @param batchMinHealthyPercentage Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
         * 
         * @return builder
         * 
         */
        public Builder batchMinHealthyPercentage(@Nullable Output batchMinHealthyPercentage) {
            $.batchMinHealthyPercentage = batchMinHealthyPercentage;
            return this;
        }

        /**
         * @param batchMinHealthyPercentage Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
         * 
         * @return builder
         * 
         */
        public Builder batchMinHealthyPercentage(Integer batchMinHealthyPercentage) {
            return batchMinHealthyPercentage(Output.of(batchMinHealthyPercentage));
        }

        /**
         * @param batchSizePercentage Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
         * 
         * @return builder
         * 
         */
        public Builder batchSizePercentage(@Nullable Output batchSizePercentage) {
            $.batchSizePercentage = batchSizePercentage;
            return this;
        }

        /**
         * @param batchSizePercentage Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
         * 
         * @return builder
         * 
         */
        public Builder batchSizePercentage(Integer batchSizePercentage) {
            return batchSizePercentage(Output.of(batchSizePercentage));
        }

        /**
         * @param comment Add a `comment` description for the roll. The `comment` is limited to 256 chars
         * 
         * @return builder
         * 
         */
        public Builder comment(@Nullable Output comment) {
            $.comment = comment;
            return this;
        }

        /**
         * @param comment Add a `comment` description for the roll. The `comment` is limited to 256 chars
         * 
         * @return builder
         * 
         */
        public Builder comment(String comment) {
            return comment(Output.of(comment));
        }

        /**
         * @param respectPdb During the roll, if the parameter is set to true we honor PDB during the instance replacement.
         * 
         * @return builder
         * 
         */
        public Builder respectPdb(@Nullable Output respectPdb) {
            $.respectPdb = respectPdb;
            return this;
        }

        /**
         * @param respectPdb During the roll, if the parameter is set to true we honor PDB during the instance replacement.
         * 
         * @return builder
         * 
         */
        public Builder respectPdb(Boolean respectPdb) {
            return respectPdb(Output.of(respectPdb));
        }

        public OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy