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

com.pulumi.aws.sagemaker.inputs.EndpointDeploymentConfigBlueGreenUpdatePolicyArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

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.aws.sagemaker.inputs;

import com.pulumi.aws.sagemaker.inputs.EndpointDeploymentConfigBlueGreenUpdatePolicyTrafficRoutingConfigurationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final EndpointDeploymentConfigBlueGreenUpdatePolicyArgs Empty = new EndpointDeploymentConfigBlueGreenUpdatePolicyArgs();

    @Import(name="maximumExecutionTimeoutInSeconds")
    private @Nullable Output maximumExecutionTimeoutInSeconds;

    public Optional> maximumExecutionTimeoutInSeconds() {
        return Optional.ofNullable(this.maximumExecutionTimeoutInSeconds);
    }

    /**
     * Additional waiting time in seconds after the completion of an endpoint deployment before terminating the old endpoint fleet. Default is `0`. Valid values are between `0` and `3600`.
     * 
     */
    @Import(name="terminationWaitInSeconds")
    private @Nullable Output terminationWaitInSeconds;

    /**
     * @return Additional waiting time in seconds after the completion of an endpoint deployment before terminating the old endpoint fleet. Default is `0`. Valid values are between `0` and `3600`.
     * 
     */
    public Optional> terminationWaitInSeconds() {
        return Optional.ofNullable(this.terminationWaitInSeconds);
    }

    /**
     * Defines the traffic routing strategy to shift traffic from the old fleet to the new fleet during an endpoint deployment. See Traffic Routing Configuration.
     * 
     */
    @Import(name="trafficRoutingConfiguration", required=true)
    private Output trafficRoutingConfiguration;

    /**
     * @return Defines the traffic routing strategy to shift traffic from the old fleet to the new fleet during an endpoint deployment. See Traffic Routing Configuration.
     * 
     */
    public Output trafficRoutingConfiguration() {
        return this.trafficRoutingConfiguration;
    }

    private EndpointDeploymentConfigBlueGreenUpdatePolicyArgs() {}

    private EndpointDeploymentConfigBlueGreenUpdatePolicyArgs(EndpointDeploymentConfigBlueGreenUpdatePolicyArgs $) {
        this.maximumExecutionTimeoutInSeconds = $.maximumExecutionTimeoutInSeconds;
        this.terminationWaitInSeconds = $.terminationWaitInSeconds;
        this.trafficRoutingConfiguration = $.trafficRoutingConfiguration;
    }

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

    public static final class Builder {
        private EndpointDeploymentConfigBlueGreenUpdatePolicyArgs $;

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

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

        public Builder maximumExecutionTimeoutInSeconds(@Nullable Output maximumExecutionTimeoutInSeconds) {
            $.maximumExecutionTimeoutInSeconds = maximumExecutionTimeoutInSeconds;
            return this;
        }

        public Builder maximumExecutionTimeoutInSeconds(Integer maximumExecutionTimeoutInSeconds) {
            return maximumExecutionTimeoutInSeconds(Output.of(maximumExecutionTimeoutInSeconds));
        }

        /**
         * @param terminationWaitInSeconds Additional waiting time in seconds after the completion of an endpoint deployment before terminating the old endpoint fleet. Default is `0`. Valid values are between `0` and `3600`.
         * 
         * @return builder
         * 
         */
        public Builder terminationWaitInSeconds(@Nullable Output terminationWaitInSeconds) {
            $.terminationWaitInSeconds = terminationWaitInSeconds;
            return this;
        }

        /**
         * @param terminationWaitInSeconds Additional waiting time in seconds after the completion of an endpoint deployment before terminating the old endpoint fleet. Default is `0`. Valid values are between `0` and `3600`.
         * 
         * @return builder
         * 
         */
        public Builder terminationWaitInSeconds(Integer terminationWaitInSeconds) {
            return terminationWaitInSeconds(Output.of(terminationWaitInSeconds));
        }

        /**
         * @param trafficRoutingConfiguration Defines the traffic routing strategy to shift traffic from the old fleet to the new fleet during an endpoint deployment. See Traffic Routing Configuration.
         * 
         * @return builder
         * 
         */
        public Builder trafficRoutingConfiguration(Output trafficRoutingConfiguration) {
            $.trafficRoutingConfiguration = trafficRoutingConfiguration;
            return this;
        }

        /**
         * @param trafficRoutingConfiguration Defines the traffic routing strategy to shift traffic from the old fleet to the new fleet during an endpoint deployment. See Traffic Routing Configuration.
         * 
         * @return builder
         * 
         */
        public Builder trafficRoutingConfiguration(EndpointDeploymentConfigBlueGreenUpdatePolicyTrafficRoutingConfigurationArgs trafficRoutingConfiguration) {
            return trafficRoutingConfiguration(Output.of(trafficRoutingConfiguration));
        }

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

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy