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

com.pulumi.azure.appservice.SourceControlSlotArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
Show 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.azure.appservice;

import com.pulumi.azure.appservice.inputs.SourceControlSlotGithubActionConfigurationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final SourceControlSlotArgs Empty = new SourceControlSlotArgs();

    /**
     * The URL for the repository. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="branch")
    private @Nullable Output branch;

    /**
     * @return The URL for the repository. Changing this forces a new resource to be created.
     * 
     */
    public Optional> branch() {
        return Optional.ofNullable(this.branch);
    }

    /**
     * A `github_action_configuration` block as detailed below. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="githubActionConfiguration")
    private @Nullable Output githubActionConfiguration;

    /**
     * @return A `github_action_configuration` block as detailed below. Changing this forces a new resource to be created.
     * 
     */
    public Optional> githubActionConfiguration() {
        return Optional.ofNullable(this.githubActionConfiguration);
    }

    /**
     * The branch name to use for deployments. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="repoUrl")
    private @Nullable Output repoUrl;

    /**
     * @return The branch name to use for deployments. Changing this forces a new resource to be created.
     * 
     */
    public Optional> repoUrl() {
        return Optional.ofNullable(this.repoUrl);
    }

    /**
     * Should the Deployment Rollback be enabled? Defaults to `false` Changing this forces a new resource to be created.
     * 
     */
    @Import(name="rollbackEnabled")
    private @Nullable Output rollbackEnabled;

    /**
     * @return Should the Deployment Rollback be enabled? Defaults to `false` Changing this forces a new resource to be created.
     * 
     */
    public Optional> rollbackEnabled() {
        return Optional.ofNullable(this.rollbackEnabled);
    }

    /**
     * The ID of the Linux or Windows Web App Slot. Changing this forces a new resource to be created.
     * 
     * > **NOTE:** Function App Slots are not supported at this time.
     * 
     */
    @Import(name="slotId", required=true)
    private Output slotId;

    /**
     * @return The ID of the Linux or Windows Web App Slot. Changing this forces a new resource to be created.
     * 
     * > **NOTE:** Function App Slots are not supported at this time.
     * 
     */
    public Output slotId() {
        return this.slotId;
    }

    /**
     * Should the Slot use local Git configuration. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="useLocalGit")
    private @Nullable Output useLocalGit;

    /**
     * @return Should the Slot use local Git configuration. Changing this forces a new resource to be created.
     * 
     */
    public Optional> useLocalGit() {
        return Optional.ofNullable(this.useLocalGit);
    }

    /**
     * Should code be deployed manually. Set to `true` to disable continuous integration, such as webhooks into online repos such as GitHub. Defaults to `false`. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="useManualIntegration")
    private @Nullable Output useManualIntegration;

    /**
     * @return Should code be deployed manually. Set to `true` to disable continuous integration, such as webhooks into online repos such as GitHub. Defaults to `false`. Changing this forces a new resource to be created.
     * 
     */
    public Optional> useManualIntegration() {
        return Optional.ofNullable(this.useManualIntegration);
    }

    /**
     * The repository specified is Mercurial. Defaults to `false`. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="useMercurial")
    private @Nullable Output useMercurial;

    /**
     * @return The repository specified is Mercurial. Defaults to `false`. Changing this forces a new resource to be created.
     * 
     */
    public Optional> useMercurial() {
        return Optional.ofNullable(this.useMercurial);
    }

    private SourceControlSlotArgs() {}

    private SourceControlSlotArgs(SourceControlSlotArgs $) {
        this.branch = $.branch;
        this.githubActionConfiguration = $.githubActionConfiguration;
        this.repoUrl = $.repoUrl;
        this.rollbackEnabled = $.rollbackEnabled;
        this.slotId = $.slotId;
        this.useLocalGit = $.useLocalGit;
        this.useManualIntegration = $.useManualIntegration;
        this.useMercurial = $.useMercurial;
    }

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

    public static final class Builder {
        private SourceControlSlotArgs $;

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

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

        /**
         * @param branch The URL for the repository. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder branch(@Nullable Output branch) {
            $.branch = branch;
            return this;
        }

        /**
         * @param branch The URL for the repository. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder branch(String branch) {
            return branch(Output.of(branch));
        }

        /**
         * @param githubActionConfiguration A `github_action_configuration` block as detailed below. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder githubActionConfiguration(@Nullable Output githubActionConfiguration) {
            $.githubActionConfiguration = githubActionConfiguration;
            return this;
        }

        /**
         * @param githubActionConfiguration A `github_action_configuration` block as detailed below. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder githubActionConfiguration(SourceControlSlotGithubActionConfigurationArgs githubActionConfiguration) {
            return githubActionConfiguration(Output.of(githubActionConfiguration));
        }

        /**
         * @param repoUrl The branch name to use for deployments. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder repoUrl(@Nullable Output repoUrl) {
            $.repoUrl = repoUrl;
            return this;
        }

        /**
         * @param repoUrl The branch name to use for deployments. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder repoUrl(String repoUrl) {
            return repoUrl(Output.of(repoUrl));
        }

        /**
         * @param rollbackEnabled Should the Deployment Rollback be enabled? Defaults to `false` Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder rollbackEnabled(@Nullable Output rollbackEnabled) {
            $.rollbackEnabled = rollbackEnabled;
            return this;
        }

        /**
         * @param rollbackEnabled Should the Deployment Rollback be enabled? Defaults to `false` Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder rollbackEnabled(Boolean rollbackEnabled) {
            return rollbackEnabled(Output.of(rollbackEnabled));
        }

        /**
         * @param slotId The ID of the Linux or Windows Web App Slot. Changing this forces a new resource to be created.
         * 
         * > **NOTE:** Function App Slots are not supported at this time.
         * 
         * @return builder
         * 
         */
        public Builder slotId(Output slotId) {
            $.slotId = slotId;
            return this;
        }

        /**
         * @param slotId The ID of the Linux or Windows Web App Slot. Changing this forces a new resource to be created.
         * 
         * > **NOTE:** Function App Slots are not supported at this time.
         * 
         * @return builder
         * 
         */
        public Builder slotId(String slotId) {
            return slotId(Output.of(slotId));
        }

        /**
         * @param useLocalGit Should the Slot use local Git configuration. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder useLocalGit(@Nullable Output useLocalGit) {
            $.useLocalGit = useLocalGit;
            return this;
        }

        /**
         * @param useLocalGit Should the Slot use local Git configuration. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder useLocalGit(Boolean useLocalGit) {
            return useLocalGit(Output.of(useLocalGit));
        }

        /**
         * @param useManualIntegration Should code be deployed manually. Set to `true` to disable continuous integration, such as webhooks into online repos such as GitHub. Defaults to `false`. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder useManualIntegration(@Nullable Output useManualIntegration) {
            $.useManualIntegration = useManualIntegration;
            return this;
        }

        /**
         * @param useManualIntegration Should code be deployed manually. Set to `true` to disable continuous integration, such as webhooks into online repos such as GitHub. Defaults to `false`. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder useManualIntegration(Boolean useManualIntegration) {
            return useManualIntegration(Output.of(useManualIntegration));
        }

        /**
         * @param useMercurial The repository specified is Mercurial. Defaults to `false`. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder useMercurial(@Nullable Output useMercurial) {
            $.useMercurial = useMercurial;
            return this;
        }

        /**
         * @param useMercurial The repository specified is Mercurial. Defaults to `false`. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder useMercurial(Boolean useMercurial) {
            return useMercurial(Output.of(useMercurial));
        }

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

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy