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

com.pulumi.aws.apigateway.inputs.DeploymentState 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.apigateway.inputs;

import com.pulumi.aws.apigateway.inputs.DeploymentCanarySettingsArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final DeploymentState Empty = new DeploymentState();

    /**
     * Input configuration for the canary deployment when the deployment is a canary release deployment.
     * See `canary_settings below.
     * Has no effect when `stage_name` is not set.
     * 
     * @deprecated
     * The attribute "canary_settings" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
     * 
     */
    @Deprecated /* The attribute ""canary_settings"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
    @Import(name="canarySettings")
    private @Nullable Output canarySettings;

    /**
     * @return Input configuration for the canary deployment when the deployment is a canary release deployment.
     * See `canary_settings below.
     * Has no effect when `stage_name` is not set.
     * 
     * @deprecated
     * The attribute "canary_settings" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
     * 
     */
    @Deprecated /* The attribute ""canary_settings"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
    public Optional> canarySettings() {
        return Optional.ofNullable(this.canarySettings);
    }

    /**
     * Creation date of the deployment
     * 
     */
    @Import(name="createdDate")
    private @Nullable Output createdDate;

    /**
     * @return Creation date of the deployment
     * 
     */
    public Optional> createdDate() {
        return Optional.ofNullable(this.createdDate);
    }

    /**
     * Description of the deployment
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Description of the deployment
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * Execution ARN to be used in `lambda_permission`'s `source_arn`
     * when allowing API Gateway to invoke a Lambda function,
     * e.g., `arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod`
     * 
     */
    @Import(name="executionArn")
    private @Nullable Output executionArn;

    /**
     * @return Execution ARN to be used in `lambda_permission`'s `source_arn`
     * when allowing API Gateway to invoke a Lambda function,
     * e.g., `arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod`
     * 
     */
    public Optional> executionArn() {
        return Optional.ofNullable(this.executionArn);
    }

    /**
     * URL to invoke the API pointing to the stage,
     * e.g., `https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod`
     * 
     */
    @Import(name="invokeUrl")
    private @Nullable Output invokeUrl;

    /**
     * @return URL to invoke the API pointing to the stage,
     * e.g., `https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod`
     * 
     */
    public Optional> invokeUrl() {
        return Optional.ofNullable(this.invokeUrl);
    }

    /**
     * REST API identifier.
     * 
     */
    @Import(name="restApi")
    private @Nullable Output restApi;

    /**
     * @return REST API identifier.
     * 
     */
    public Optional> restApi() {
        return Optional.ofNullable(this.restApi);
    }

    /**
     * Description to set on the stage managed by the `stage_name` argument.
     * Has no effect when `stage_name` is not set.
     * 
     * @deprecated
     * The attribute "stage_description" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
     * 
     */
    @Deprecated /* The attribute ""stage_description"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
    @Import(name="stageDescription")
    private @Nullable Output stageDescription;

    /**
     * @return Description to set on the stage managed by the `stage_name` argument.
     * Has no effect when `stage_name` is not set.
     * 
     * @deprecated
     * The attribute "stage_description" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
     * 
     */
    @Deprecated /* The attribute ""stage_description"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
    public Optional> stageDescription() {
        return Optional.ofNullable(this.stageDescription);
    }

    /**
     * Name of the stage to create with this deployment.
     * If the specified stage already exists, it will be updated to point to the new deployment.
     * We recommend using the `aws.apigateway.Stage` resource instead to manage stages.
     * 
     * @deprecated
     * The attribute "stage_name" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
     * 
     */
    @Deprecated /* The attribute ""stage_name"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
    @Import(name="stageName")
    private @Nullable Output stageName;

    /**
     * @return Name of the stage to create with this deployment.
     * If the specified stage already exists, it will be updated to point to the new deployment.
     * We recommend using the `aws.apigateway.Stage` resource instead to manage stages.
     * 
     * @deprecated
     * The attribute "stage_name" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
     * 
     */
    @Deprecated /* The attribute ""stage_name"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
    public Optional> stageName() {
        return Optional.ofNullable(this.stageName);
    }

    /**
     * Map of arbitrary keys and values that, when changed, will trigger a redeployment.
     * 
     */
    @Import(name="triggers")
    private @Nullable Output> triggers;

    /**
     * @return Map of arbitrary keys and values that, when changed, will trigger a redeployment.
     * 
     */
    public Optional>> triggers() {
        return Optional.ofNullable(this.triggers);
    }

    /**
     * Map to set on the stage managed by the `stage_name` argument.
     * 
     */
    @Import(name="variables")
    private @Nullable Output> variables;

    /**
     * @return Map to set on the stage managed by the `stage_name` argument.
     * 
     */
    public Optional>> variables() {
        return Optional.ofNullable(this.variables);
    }

    private DeploymentState() {}

    private DeploymentState(DeploymentState $) {
        this.canarySettings = $.canarySettings;
        this.createdDate = $.createdDate;
        this.description = $.description;
        this.executionArn = $.executionArn;
        this.invokeUrl = $.invokeUrl;
        this.restApi = $.restApi;
        this.stageDescription = $.stageDescription;
        this.stageName = $.stageName;
        this.triggers = $.triggers;
        this.variables = $.variables;
    }

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

    public static final class Builder {
        private DeploymentState $;

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

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

        /**
         * @param canarySettings Input configuration for the canary deployment when the deployment is a canary release deployment.
         * See `canary_settings below.
         * Has no effect when `stage_name` is not set.
         * 
         * @return builder
         * 
         * @deprecated
         * The attribute "canary_settings" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
         * 
         */
        @Deprecated /* The attribute ""canary_settings"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
        public Builder canarySettings(@Nullable Output canarySettings) {
            $.canarySettings = canarySettings;
            return this;
        }

        /**
         * @param canarySettings Input configuration for the canary deployment when the deployment is a canary release deployment.
         * See `canary_settings below.
         * Has no effect when `stage_name` is not set.
         * 
         * @return builder
         * 
         * @deprecated
         * The attribute "canary_settings" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
         * 
         */
        @Deprecated /* The attribute ""canary_settings"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
        public Builder canarySettings(DeploymentCanarySettingsArgs canarySettings) {
            return canarySettings(Output.of(canarySettings));
        }

        /**
         * @param createdDate Creation date of the deployment
         * 
         * @return builder
         * 
         */
        public Builder createdDate(@Nullable Output createdDate) {
            $.createdDate = createdDate;
            return this;
        }

        /**
         * @param createdDate Creation date of the deployment
         * 
         * @return builder
         * 
         */
        public Builder createdDate(String createdDate) {
            return createdDate(Output.of(createdDate));
        }

        /**
         * @param description Description of the deployment
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Description of the deployment
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param executionArn Execution ARN to be used in `lambda_permission`'s `source_arn`
         * when allowing API Gateway to invoke a Lambda function,
         * e.g., `arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod`
         * 
         * @return builder
         * 
         */
        public Builder executionArn(@Nullable Output executionArn) {
            $.executionArn = executionArn;
            return this;
        }

        /**
         * @param executionArn Execution ARN to be used in `lambda_permission`'s `source_arn`
         * when allowing API Gateway to invoke a Lambda function,
         * e.g., `arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod`
         * 
         * @return builder
         * 
         */
        public Builder executionArn(String executionArn) {
            return executionArn(Output.of(executionArn));
        }

        /**
         * @param invokeUrl URL to invoke the API pointing to the stage,
         * e.g., `https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod`
         * 
         * @return builder
         * 
         */
        public Builder invokeUrl(@Nullable Output invokeUrl) {
            $.invokeUrl = invokeUrl;
            return this;
        }

        /**
         * @param invokeUrl URL to invoke the API pointing to the stage,
         * e.g., `https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod`
         * 
         * @return builder
         * 
         */
        public Builder invokeUrl(String invokeUrl) {
            return invokeUrl(Output.of(invokeUrl));
        }

        /**
         * @param restApi REST API identifier.
         * 
         * @return builder
         * 
         */
        public Builder restApi(@Nullable Output restApi) {
            $.restApi = restApi;
            return this;
        }

        /**
         * @param restApi REST API identifier.
         * 
         * @return builder
         * 
         */
        public Builder restApi(String restApi) {
            return restApi(Output.of(restApi));
        }

        /**
         * @param stageDescription Description to set on the stage managed by the `stage_name` argument.
         * Has no effect when `stage_name` is not set.
         * 
         * @return builder
         * 
         * @deprecated
         * The attribute "stage_description" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
         * 
         */
        @Deprecated /* The attribute ""stage_description"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
        public Builder stageDescription(@Nullable Output stageDescription) {
            $.stageDescription = stageDescription;
            return this;
        }

        /**
         * @param stageDescription Description to set on the stage managed by the `stage_name` argument.
         * Has no effect when `stage_name` is not set.
         * 
         * @return builder
         * 
         * @deprecated
         * The attribute "stage_description" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
         * 
         */
        @Deprecated /* The attribute ""stage_description"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
        public Builder stageDescription(String stageDescription) {
            return stageDescription(Output.of(stageDescription));
        }

        /**
         * @param stageName Name of the stage to create with this deployment.
         * If the specified stage already exists, it will be updated to point to the new deployment.
         * We recommend using the `aws.apigateway.Stage` resource instead to manage stages.
         * 
         * @return builder
         * 
         * @deprecated
         * The attribute "stage_name" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
         * 
         */
        @Deprecated /* The attribute ""stage_name"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
        public Builder stageName(@Nullable Output stageName) {
            $.stageName = stageName;
            return this;
        }

        /**
         * @param stageName Name of the stage to create with this deployment.
         * If the specified stage already exists, it will be updated to point to the new deployment.
         * We recommend using the `aws.apigateway.Stage` resource instead to manage stages.
         * 
         * @return builder
         * 
         * @deprecated
         * The attribute "stage_name" will be removed in a future major version. Use an explicit "aws.apigateway.Stage" instead.
         * 
         */
        @Deprecated /* The attribute ""stage_name"" will be removed in a future major version. Use an explicit ""aws.apigateway.Stage"" instead. */
        public Builder stageName(String stageName) {
            return stageName(Output.of(stageName));
        }

        /**
         * @param triggers Map of arbitrary keys and values that, when changed, will trigger a redeployment.
         * 
         * @return builder
         * 
         */
        public Builder triggers(@Nullable Output> triggers) {
            $.triggers = triggers;
            return this;
        }

        /**
         * @param triggers Map of arbitrary keys and values that, when changed, will trigger a redeployment.
         * 
         * @return builder
         * 
         */
        public Builder triggers(Map triggers) {
            return triggers(Output.of(triggers));
        }

        /**
         * @param variables Map to set on the stage managed by the `stage_name` argument.
         * 
         * @return builder
         * 
         */
        public Builder variables(@Nullable Output> variables) {
            $.variables = variables;
            return this;
        }

        /**
         * @param variables Map to set on the stage managed by the `stage_name` argument.
         * 
         * @return builder
         * 
         */
        public Builder variables(Map variables) {
            return variables(Output.of(variables));
        }

        public DeploymentState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy