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

com.pulumi.azurenative.containerservice.inputs.ManagedClusterAPIServerAccessProfileArgs 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.azurenative.containerservice.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Access profile for managed cluster API server.
 * 
 */
public final class ManagedClusterAPIServerAccessProfileArgs extends com.pulumi.resources.ResourceArgs {

    public static final ManagedClusterAPIServerAccessProfileArgs Empty = new ManagedClusterAPIServerAccessProfileArgs();

    /**
     * IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
     * 
     */
    @Import(name="authorizedIPRanges")
    private @Nullable Output> authorizedIPRanges;

    /**
     * @return IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
     * 
     */
    public Optional>> authorizedIPRanges() {
        return Optional.ofNullable(this.authorizedIPRanges);
    }

    /**
     * Whether to disable run command for the cluster or not.
     * 
     */
    @Import(name="disableRunCommand")
    private @Nullable Output disableRunCommand;

    /**
     * @return Whether to disable run command for the cluster or not.
     * 
     */
    public Optional> disableRunCommand() {
        return Optional.ofNullable(this.disableRunCommand);
    }

    /**
     * For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters).
     * 
     */
    @Import(name="enablePrivateCluster")
    private @Nullable Output enablePrivateCluster;

    /**
     * @return For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters).
     * 
     */
    public Optional> enablePrivateCluster() {
        return Optional.ofNullable(this.enablePrivateCluster);
    }

    /**
     * Whether to create additional public FQDN for private cluster or not.
     * 
     */
    @Import(name="enablePrivateClusterPublicFQDN")
    private @Nullable Output enablePrivateClusterPublicFQDN;

    /**
     * @return Whether to create additional public FQDN for private cluster or not.
     * 
     */
    public Optional> enablePrivateClusterPublicFQDN() {
        return Optional.ofNullable(this.enablePrivateClusterPublicFQDN);
    }

    /**
     * The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'.
     * 
     */
    @Import(name="privateDNSZone")
    private @Nullable Output privateDNSZone;

    /**
     * @return The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'.
     * 
     */
    public Optional> privateDNSZone() {
        return Optional.ofNullable(this.privateDNSZone);
    }

    private ManagedClusterAPIServerAccessProfileArgs() {}

    private ManagedClusterAPIServerAccessProfileArgs(ManagedClusterAPIServerAccessProfileArgs $) {
        this.authorizedIPRanges = $.authorizedIPRanges;
        this.disableRunCommand = $.disableRunCommand;
        this.enablePrivateCluster = $.enablePrivateCluster;
        this.enablePrivateClusterPublicFQDN = $.enablePrivateClusterPublicFQDN;
        this.privateDNSZone = $.privateDNSZone;
    }

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

    public static final class Builder {
        private ManagedClusterAPIServerAccessProfileArgs $;

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

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

        /**
         * @param authorizedIPRanges IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
         * 
         * @return builder
         * 
         */
        public Builder authorizedIPRanges(@Nullable Output> authorizedIPRanges) {
            $.authorizedIPRanges = authorizedIPRanges;
            return this;
        }

        /**
         * @param authorizedIPRanges IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
         * 
         * @return builder
         * 
         */
        public Builder authorizedIPRanges(List authorizedIPRanges) {
            return authorizedIPRanges(Output.of(authorizedIPRanges));
        }

        /**
         * @param authorizedIPRanges IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
         * 
         * @return builder
         * 
         */
        public Builder authorizedIPRanges(String... authorizedIPRanges) {
            return authorizedIPRanges(List.of(authorizedIPRanges));
        }

        /**
         * @param disableRunCommand Whether to disable run command for the cluster or not.
         * 
         * @return builder
         * 
         */
        public Builder disableRunCommand(@Nullable Output disableRunCommand) {
            $.disableRunCommand = disableRunCommand;
            return this;
        }

        /**
         * @param disableRunCommand Whether to disable run command for the cluster or not.
         * 
         * @return builder
         * 
         */
        public Builder disableRunCommand(Boolean disableRunCommand) {
            return disableRunCommand(Output.of(disableRunCommand));
        }

        /**
         * @param enablePrivateCluster For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters).
         * 
         * @return builder
         * 
         */
        public Builder enablePrivateCluster(@Nullable Output enablePrivateCluster) {
            $.enablePrivateCluster = enablePrivateCluster;
            return this;
        }

        /**
         * @param enablePrivateCluster For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters).
         * 
         * @return builder
         * 
         */
        public Builder enablePrivateCluster(Boolean enablePrivateCluster) {
            return enablePrivateCluster(Output.of(enablePrivateCluster));
        }

        /**
         * @param enablePrivateClusterPublicFQDN Whether to create additional public FQDN for private cluster or not.
         * 
         * @return builder
         * 
         */
        public Builder enablePrivateClusterPublicFQDN(@Nullable Output enablePrivateClusterPublicFQDN) {
            $.enablePrivateClusterPublicFQDN = enablePrivateClusterPublicFQDN;
            return this;
        }

        /**
         * @param enablePrivateClusterPublicFQDN Whether to create additional public FQDN for private cluster or not.
         * 
         * @return builder
         * 
         */
        public Builder enablePrivateClusterPublicFQDN(Boolean enablePrivateClusterPublicFQDN) {
            return enablePrivateClusterPublicFQDN(Output.of(enablePrivateClusterPublicFQDN));
        }

        /**
         * @param privateDNSZone The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'.
         * 
         * @return builder
         * 
         */
        public Builder privateDNSZone(@Nullable Output privateDNSZone) {
            $.privateDNSZone = privateDNSZone;
            return this;
        }

        /**
         * @param privateDNSZone The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'.
         * 
         * @return builder
         * 
         */
        public Builder privateDNSZone(String privateDNSZone) {
            return privateDNSZone(Output.of(privateDNSZone));
        }

        public ManagedClusterAPIServerAccessProfileArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy