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

com.pulumi.googlenative.cloudbuild.v1.inputs.GitFileSourceArgs 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.googlenative.cloudbuild.v1.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.googlenative.cloudbuild.v1.enums.GitFileSourceRepoType;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * GitFileSource describes a file within a (possibly remote) code repository.
 * 
 */
public final class GitFileSourceArgs extends com.pulumi.resources.ResourceArgs {

    public static final GitFileSourceArgs Empty = new GitFileSourceArgs();

    /**
     * The full resource name of the bitbucket server config. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{id}`.
     * 
     */
    @Import(name="bitbucketServerConfig")
    private @Nullable Output bitbucketServerConfig;

    /**
     * @return The full resource name of the bitbucket server config. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{id}`.
     * 
     */
    public Optional> bitbucketServerConfig() {
        return Optional.ofNullable(this.bitbucketServerConfig);
    }

    /**
     * The full resource name of the github enterprise config. Format: `projects/{project}/locations/{location}/githubEnterpriseConfigs/{id}`. `projects/{project}/githubEnterpriseConfigs/{id}`.
     * 
     */
    @Import(name="githubEnterpriseConfig")
    private @Nullable Output githubEnterpriseConfig;

    /**
     * @return The full resource name of the github enterprise config. Format: `projects/{project}/locations/{location}/githubEnterpriseConfigs/{id}`. `projects/{project}/githubEnterpriseConfigs/{id}`.
     * 
     */
    public Optional> githubEnterpriseConfig() {
        return Optional.ofNullable(this.githubEnterpriseConfig);
    }

    /**
     * The path of the file, with the repo root as the root of the path.
     * 
     */
    @Import(name="path")
    private @Nullable Output path;

    /**
     * @return The path of the file, with the repo root as the root of the path.
     * 
     */
    public Optional> path() {
        return Optional.ofNullable(this.path);
    }

    /**
     * See RepoType above.
     * 
     */
    @Import(name="repoType")
    private @Nullable Output repoType;

    /**
     * @return See RepoType above.
     * 
     */
    public Optional> repoType() {
        return Optional.ofNullable(this.repoType);
    }

    /**
     * The fully qualified resource name of the Repo API repository. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
     * 
     */
    @Import(name="repository")
    private @Nullable Output repository;

    /**
     * @return The fully qualified resource name of the Repo API repository. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
     * 
     */
    public Optional> repository() {
        return Optional.ofNullable(this.repository);
    }

    /**
     * The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.
     * 
     */
    @Import(name="revision")
    private @Nullable Output revision;

    /**
     * @return The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.
     * 
     */
    public Optional> revision() {
        return Optional.ofNullable(this.revision);
    }

    /**
     * The URI of the repo. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
     * 
     */
    @Import(name="uri")
    private @Nullable Output uri;

    /**
     * @return The URI of the repo. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
     * 
     */
    public Optional> uri() {
        return Optional.ofNullable(this.uri);
    }

    private GitFileSourceArgs() {}

    private GitFileSourceArgs(GitFileSourceArgs $) {
        this.bitbucketServerConfig = $.bitbucketServerConfig;
        this.githubEnterpriseConfig = $.githubEnterpriseConfig;
        this.path = $.path;
        this.repoType = $.repoType;
        this.repository = $.repository;
        this.revision = $.revision;
        this.uri = $.uri;
    }

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

    public static final class Builder {
        private GitFileSourceArgs $;

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

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

        /**
         * @param bitbucketServerConfig The full resource name of the bitbucket server config. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{id}`.
         * 
         * @return builder
         * 
         */
        public Builder bitbucketServerConfig(@Nullable Output bitbucketServerConfig) {
            $.bitbucketServerConfig = bitbucketServerConfig;
            return this;
        }

        /**
         * @param bitbucketServerConfig The full resource name of the bitbucket server config. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{id}`.
         * 
         * @return builder
         * 
         */
        public Builder bitbucketServerConfig(String bitbucketServerConfig) {
            return bitbucketServerConfig(Output.of(bitbucketServerConfig));
        }

        /**
         * @param githubEnterpriseConfig The full resource name of the github enterprise config. Format: `projects/{project}/locations/{location}/githubEnterpriseConfigs/{id}`. `projects/{project}/githubEnterpriseConfigs/{id}`.
         * 
         * @return builder
         * 
         */
        public Builder githubEnterpriseConfig(@Nullable Output githubEnterpriseConfig) {
            $.githubEnterpriseConfig = githubEnterpriseConfig;
            return this;
        }

        /**
         * @param githubEnterpriseConfig The full resource name of the github enterprise config. Format: `projects/{project}/locations/{location}/githubEnterpriseConfigs/{id}`. `projects/{project}/githubEnterpriseConfigs/{id}`.
         * 
         * @return builder
         * 
         */
        public Builder githubEnterpriseConfig(String githubEnterpriseConfig) {
            return githubEnterpriseConfig(Output.of(githubEnterpriseConfig));
        }

        /**
         * @param path The path of the file, with the repo root as the root of the path.
         * 
         * @return builder
         * 
         */
        public Builder path(@Nullable Output path) {
            $.path = path;
            return this;
        }

        /**
         * @param path The path of the file, with the repo root as the root of the path.
         * 
         * @return builder
         * 
         */
        public Builder path(String path) {
            return path(Output.of(path));
        }

        /**
         * @param repoType See RepoType above.
         * 
         * @return builder
         * 
         */
        public Builder repoType(@Nullable Output repoType) {
            $.repoType = repoType;
            return this;
        }

        /**
         * @param repoType See RepoType above.
         * 
         * @return builder
         * 
         */
        public Builder repoType(GitFileSourceRepoType repoType) {
            return repoType(Output.of(repoType));
        }

        /**
         * @param repository The fully qualified resource name of the Repo API repository. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
         * 
         * @return builder
         * 
         */
        public Builder repository(@Nullable Output repository) {
            $.repository = repository;
            return this;
        }

        /**
         * @param repository The fully qualified resource name of the Repo API repository. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
         * 
         * @return builder
         * 
         */
        public Builder repository(String repository) {
            return repository(Output.of(repository));
        }

        /**
         * @param revision The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.
         * 
         * @return builder
         * 
         */
        public Builder revision(@Nullable Output revision) {
            $.revision = revision;
            return this;
        }

        /**
         * @param revision The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.
         * 
         * @return builder
         * 
         */
        public Builder revision(String revision) {
            return revision(Output.of(revision));
        }

        /**
         * @param uri The URI of the repo. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
         * 
         * @return builder
         * 
         */
        public Builder uri(@Nullable Output uri) {
            $.uri = uri;
            return this;
        }

        /**
         * @param uri The URI of the repo. Either uri or repository can be specified. If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.
         * 
         * @return builder
         * 
         */
        public Builder uri(String uri) {
            return uri(Output.of(uri));
        }

        public GitFileSourceArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy