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

com.pulumi.aws.apprunner.inputs.ServiceSourceConfigurationCodeRepositoryArgs 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.apprunner.inputs;

import com.pulumi.aws.apprunner.inputs.ServiceSourceConfigurationCodeRepositoryCodeConfigurationArgs;
import com.pulumi.aws.apprunner.inputs.ServiceSourceConfigurationCodeRepositorySourceCodeVersionArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final ServiceSourceConfigurationCodeRepositoryArgs Empty = new ServiceSourceConfigurationCodeRepositoryArgs();

    /**
     * Configuration for building and running the service from a source code repository. See Code Configuration below for more details.
     * 
     */
    @Import(name="codeConfiguration")
    private @Nullable Output codeConfiguration;

    /**
     * @return Configuration for building and running the service from a source code repository. See Code Configuration below for more details.
     * 
     */
    public Optional> codeConfiguration() {
        return Optional.ofNullable(this.codeConfiguration);
    }

    /**
     * Location of the repository that contains the source code.
     * 
     */
    @Import(name="repositoryUrl", required=true)
    private Output repositoryUrl;

    /**
     * @return Location of the repository that contains the source code.
     * 
     */
    public Output repositoryUrl() {
        return this.repositoryUrl;
    }

    /**
     * Version that should be used within the source code repository. See Source Code Version below for more details.
     * 
     */
    @Import(name="sourceCodeVersion", required=true)
    private Output sourceCodeVersion;

    /**
     * @return Version that should be used within the source code repository. See Source Code Version below for more details.
     * 
     */
    public Output sourceCodeVersion() {
        return this.sourceCodeVersion;
    }

    /**
     * The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.
     * 
     */
    @Import(name="sourceDirectory")
    private @Nullable Output sourceDirectory;

    /**
     * @return The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.
     * 
     */
    public Optional> sourceDirectory() {
        return Optional.ofNullable(this.sourceDirectory);
    }

    private ServiceSourceConfigurationCodeRepositoryArgs() {}

    private ServiceSourceConfigurationCodeRepositoryArgs(ServiceSourceConfigurationCodeRepositoryArgs $) {
        this.codeConfiguration = $.codeConfiguration;
        this.repositoryUrl = $.repositoryUrl;
        this.sourceCodeVersion = $.sourceCodeVersion;
        this.sourceDirectory = $.sourceDirectory;
    }

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

    public static final class Builder {
        private ServiceSourceConfigurationCodeRepositoryArgs $;

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

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

        /**
         * @param codeConfiguration Configuration for building and running the service from a source code repository. See Code Configuration below for more details.
         * 
         * @return builder
         * 
         */
        public Builder codeConfiguration(@Nullable Output codeConfiguration) {
            $.codeConfiguration = codeConfiguration;
            return this;
        }

        /**
         * @param codeConfiguration Configuration for building and running the service from a source code repository. See Code Configuration below for more details.
         * 
         * @return builder
         * 
         */
        public Builder codeConfiguration(ServiceSourceConfigurationCodeRepositoryCodeConfigurationArgs codeConfiguration) {
            return codeConfiguration(Output.of(codeConfiguration));
        }

        /**
         * @param repositoryUrl Location of the repository that contains the source code.
         * 
         * @return builder
         * 
         */
        public Builder repositoryUrl(Output repositoryUrl) {
            $.repositoryUrl = repositoryUrl;
            return this;
        }

        /**
         * @param repositoryUrl Location of the repository that contains the source code.
         * 
         * @return builder
         * 
         */
        public Builder repositoryUrl(String repositoryUrl) {
            return repositoryUrl(Output.of(repositoryUrl));
        }

        /**
         * @param sourceCodeVersion Version that should be used within the source code repository. See Source Code Version below for more details.
         * 
         * @return builder
         * 
         */
        public Builder sourceCodeVersion(Output sourceCodeVersion) {
            $.sourceCodeVersion = sourceCodeVersion;
            return this;
        }

        /**
         * @param sourceCodeVersion Version that should be used within the source code repository. See Source Code Version below for more details.
         * 
         * @return builder
         * 
         */
        public Builder sourceCodeVersion(ServiceSourceConfigurationCodeRepositorySourceCodeVersionArgs sourceCodeVersion) {
            return sourceCodeVersion(Output.of(sourceCodeVersion));
        }

        /**
         * @param sourceDirectory The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.
         * 
         * @return builder
         * 
         */
        public Builder sourceDirectory(@Nullable Output sourceDirectory) {
            $.sourceDirectory = sourceDirectory;
            return this;
        }

        /**
         * @param sourceDirectory The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.
         * 
         * @return builder
         * 
         */
        public Builder sourceDirectory(String sourceDirectory) {
            return sourceDirectory(Output.of(sourceDirectory));
        }

        public ServiceSourceConfigurationCodeRepositoryArgs build() {
            if ($.repositoryUrl == null) {
                throw new MissingRequiredPropertyException("ServiceSourceConfigurationCodeRepositoryArgs", "repositoryUrl");
            }
            if ($.sourceCodeVersion == null) {
                throw new MissingRequiredPropertyException("ServiceSourceConfigurationCodeRepositoryArgs", "sourceCodeVersion");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy