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

com.pulumi.aws.imagebuilder.inputs.ImagePipelineWorkflowArgs Maven / Gradle / Ivy

// *** 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.imagebuilder.inputs;

import com.pulumi.aws.imagebuilder.inputs.ImagePipelineWorkflowParameterArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final ImagePipelineWorkflowArgs Empty = new ImagePipelineWorkflowArgs();

    /**
     * The action to take if the workflow fails. Must be one of `CONTINUE` or `ABORT`.
     * 
     */
    @Import(name="onFailure")
    private @Nullable Output onFailure;

    /**
     * @return The action to take if the workflow fails. Must be one of `CONTINUE` or `ABORT`.
     * 
     */
    public Optional> onFailure() {
        return Optional.ofNullable(this.onFailure);
    }

    /**
     * The parallel group in which to run a test Workflow.
     * 
     */
    @Import(name="parallelGroup")
    private @Nullable Output parallelGroup;

    /**
     * @return The parallel group in which to run a test Workflow.
     * 
     */
    public Optional> parallelGroup() {
        return Optional.ofNullable(this.parallelGroup);
    }

    /**
     * Configuration block for the workflow parameters. Detailed below.
     * 
     */
    @Import(name="parameters")
    private @Nullable Output> parameters;

    /**
     * @return Configuration block for the workflow parameters. Detailed below.
     * 
     */
    public Optional>> parameters() {
        return Optional.ofNullable(this.parameters);
    }

    /**
     * Amazon Resource Name (ARN) of the Image Builder Workflow.
     * 
     * The following arguments are optional:
     * 
     */
    @Import(name="workflowArn", required=true)
    private Output workflowArn;

    /**
     * @return Amazon Resource Name (ARN) of the Image Builder Workflow.
     * 
     * The following arguments are optional:
     * 
     */
    public Output workflowArn() {
        return this.workflowArn;
    }

    private ImagePipelineWorkflowArgs() {}

    private ImagePipelineWorkflowArgs(ImagePipelineWorkflowArgs $) {
        this.onFailure = $.onFailure;
        this.parallelGroup = $.parallelGroup;
        this.parameters = $.parameters;
        this.workflowArn = $.workflowArn;
    }

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

    public static final class Builder {
        private ImagePipelineWorkflowArgs $;

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

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

        /**
         * @param onFailure The action to take if the workflow fails. Must be one of `CONTINUE` or `ABORT`.
         * 
         * @return builder
         * 
         */
        public Builder onFailure(@Nullable Output onFailure) {
            $.onFailure = onFailure;
            return this;
        }

        /**
         * @param onFailure The action to take if the workflow fails. Must be one of `CONTINUE` or `ABORT`.
         * 
         * @return builder
         * 
         */
        public Builder onFailure(String onFailure) {
            return onFailure(Output.of(onFailure));
        }

        /**
         * @param parallelGroup The parallel group in which to run a test Workflow.
         * 
         * @return builder
         * 
         */
        public Builder parallelGroup(@Nullable Output parallelGroup) {
            $.parallelGroup = parallelGroup;
            return this;
        }

        /**
         * @param parallelGroup The parallel group in which to run a test Workflow.
         * 
         * @return builder
         * 
         */
        public Builder parallelGroup(String parallelGroup) {
            return parallelGroup(Output.of(parallelGroup));
        }

        /**
         * @param parameters Configuration block for the workflow parameters. Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder parameters(@Nullable Output> parameters) {
            $.parameters = parameters;
            return this;
        }

        /**
         * @param parameters Configuration block for the workflow parameters. Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder parameters(List parameters) {
            return parameters(Output.of(parameters));
        }

        /**
         * @param parameters Configuration block for the workflow parameters. Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder parameters(ImagePipelineWorkflowParameterArgs... parameters) {
            return parameters(List.of(parameters));
        }

        /**
         * @param workflowArn Amazon Resource Name (ARN) of the Image Builder Workflow.
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder workflowArn(Output workflowArn) {
            $.workflowArn = workflowArn;
            return this;
        }

        /**
         * @param workflowArn Amazon Resource Name (ARN) of the Image Builder Workflow.
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder workflowArn(String workflowArn) {
            return workflowArn(Output.of(workflowArn));
        }

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

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy