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

com.pulumi.azurenative.hybridcontainerservice.inputs.ProvisionedClustersAllPropertiesArgs 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.hybridcontainerservice.inputs;

import com.pulumi.azurenative.hybridcontainerservice.inputs.AADProfileArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.AddonProfilesArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.CloudProviderProfileArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.ControlPlaneProfileArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.HttpProxyConfigArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.LinuxProfilePropertiesArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.NamedAgentPoolProfileArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.NetworkProfileArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.ProvisionedClustersCommonPropertiesFeaturesArgs;
import com.pulumi.azurenative.hybridcontainerservice.inputs.WindowsProfileArgs;
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.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * All properties of the provisioned cluster
 * 
 */
public final class ProvisionedClustersAllPropertiesArgs extends com.pulumi.resources.ResourceArgs {

    public static final ProvisionedClustersAllPropertiesArgs Empty = new ProvisionedClustersAllPropertiesArgs();

    /**
     * AAD profile for the provisioned cluster.
     * 
     */
    @Import(name="aadProfile")
    private @Nullable Output aadProfile;

    /**
     * @return AAD profile for the provisioned cluster.
     * 
     */
    public Optional> aadProfile() {
        return Optional.ofNullable(this.aadProfile);
    }

    /**
     * AddonProfiles - Profile of managed cluster add-on.
     * 
     */
    @Import(name="addonProfiles")
    private @Nullable Output> addonProfiles;

    /**
     * @return AddonProfiles - Profile of managed cluster add-on.
     * 
     */
    public Optional>> addonProfiles() {
        return Optional.ofNullable(this.addonProfiles);
    }

    /**
     * The agent pools of the cluster.
     * 
     */
    @Import(name="agentPoolProfiles")
    private @Nullable Output> agentPoolProfiles;

    /**
     * @return The agent pools of the cluster.
     * 
     */
    public Optional>> agentPoolProfiles() {
        return Optional.ofNullable(this.agentPoolProfiles);
    }

    /**
     * The underlying cloud infra provider properties.
     * 
     */
    @Import(name="cloudProviderProfile")
    private @Nullable Output cloudProviderProfile;

    /**
     * @return The underlying cloud infra provider properties.
     * 
     */
    public Optional> cloudProviderProfile() {
        return Optional.ofNullable(this.cloudProviderProfile);
    }

    /**
     * ControlPlane - ControlPlane Configuration
     * 
     */
    @Import(name="controlPlane")
    private @Nullable Output controlPlane;

    /**
     * @return ControlPlane - ControlPlane Configuration
     * 
     */
    public Optional> controlPlane() {
        return Optional.ofNullable(this.controlPlane);
    }

    /**
     * EnableRBAC - Whether to enable Kubernetes Role-Based Access Control.
     * 
     */
    @Import(name="enableRbac")
    private @Nullable Output enableRbac;

    /**
     * @return EnableRBAC - Whether to enable Kubernetes Role-Based Access Control.
     * 
     */
    public Optional> enableRbac() {
        return Optional.ofNullable(this.enableRbac);
    }

    /**
     * Additional features specs like Arc Agent Onboarding.
     * 
     */
    @Import(name="features")
    private @Nullable Output features;

    /**
     * @return Additional features specs like Arc Agent Onboarding.
     * 
     */
    public Optional> features() {
        return Optional.ofNullable(this.features);
    }

    /**
     * HttpProxyConfig - Configurations for provisioning the cluster with HTTP proxy servers.
     * 
     */
    @Import(name="httpProxyConfig")
    private @Nullable Output httpProxyConfig;

    /**
     * @return HttpProxyConfig - Configurations for provisioning the cluster with HTTP proxy servers.
     * 
     */
    public Optional> httpProxyConfig() {
        return Optional.ofNullable(this.httpProxyConfig);
    }

    /**
     * KubernetesVersion - Version of Kubernetes specified when creating the managed cluster.
     * 
     */
    @Import(name="kubernetesVersion")
    private @Nullable Output kubernetesVersion;

    /**
     * @return KubernetesVersion - Version of Kubernetes specified when creating the managed cluster.
     * 
     */
    public Optional> kubernetesVersion() {
        return Optional.ofNullable(this.kubernetesVersion);
    }

    /**
     * LinuxProfile - The profile for Linux VMs in the Provisioned Cluster.
     * 
     */
    @Import(name="linuxProfile")
    private @Nullable Output linuxProfile;

    /**
     * @return LinuxProfile - The profile for Linux VMs in the Provisioned Cluster.
     * 
     */
    public Optional> linuxProfile() {
        return Optional.ofNullable(this.linuxProfile);
    }

    /**
     * NetworkProfile - Profile of network configuration.
     * 
     */
    @Import(name="networkProfile")
    private @Nullable Output networkProfile;

    /**
     * @return NetworkProfile - Profile of network configuration.
     * 
     */
    public Optional> networkProfile() {
        return Optional.ofNullable(this.networkProfile);
    }

    /**
     * NodeResourceGroup - Name of the resource group containing agent pool nodes.
     * 
     */
    @Import(name="nodeResourceGroup")
    private @Nullable Output nodeResourceGroup;

    /**
     * @return NodeResourceGroup - Name of the resource group containing agent pool nodes.
     * 
     */
    public Optional> nodeResourceGroup() {
        return Optional.ofNullable(this.nodeResourceGroup);
    }

    /**
     * WindowsProfile - Profile for Windows VMs in the Provisioned Cluster.
     * 
     */
    @Import(name="windowsProfile")
    private @Nullable Output windowsProfile;

    /**
     * @return WindowsProfile - Profile for Windows VMs in the Provisioned Cluster.
     * 
     */
    public Optional> windowsProfile() {
        return Optional.ofNullable(this.windowsProfile);
    }

    private ProvisionedClustersAllPropertiesArgs() {}

    private ProvisionedClustersAllPropertiesArgs(ProvisionedClustersAllPropertiesArgs $) {
        this.aadProfile = $.aadProfile;
        this.addonProfiles = $.addonProfiles;
        this.agentPoolProfiles = $.agentPoolProfiles;
        this.cloudProviderProfile = $.cloudProviderProfile;
        this.controlPlane = $.controlPlane;
        this.enableRbac = $.enableRbac;
        this.features = $.features;
        this.httpProxyConfig = $.httpProxyConfig;
        this.kubernetesVersion = $.kubernetesVersion;
        this.linuxProfile = $.linuxProfile;
        this.networkProfile = $.networkProfile;
        this.nodeResourceGroup = $.nodeResourceGroup;
        this.windowsProfile = $.windowsProfile;
    }

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

    public static final class Builder {
        private ProvisionedClustersAllPropertiesArgs $;

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

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

        /**
         * @param aadProfile AAD profile for the provisioned cluster.
         * 
         * @return builder
         * 
         */
        public Builder aadProfile(@Nullable Output aadProfile) {
            $.aadProfile = aadProfile;
            return this;
        }

        /**
         * @param aadProfile AAD profile for the provisioned cluster.
         * 
         * @return builder
         * 
         */
        public Builder aadProfile(AADProfileArgs aadProfile) {
            return aadProfile(Output.of(aadProfile));
        }

        /**
         * @param addonProfiles AddonProfiles - Profile of managed cluster add-on.
         * 
         * @return builder
         * 
         */
        public Builder addonProfiles(@Nullable Output> addonProfiles) {
            $.addonProfiles = addonProfiles;
            return this;
        }

        /**
         * @param addonProfiles AddonProfiles - Profile of managed cluster add-on.
         * 
         * @return builder
         * 
         */
        public Builder addonProfiles(Map addonProfiles) {
            return addonProfiles(Output.of(addonProfiles));
        }

        /**
         * @param agentPoolProfiles The agent pools of the cluster.
         * 
         * @return builder
         * 
         */
        public Builder agentPoolProfiles(@Nullable Output> agentPoolProfiles) {
            $.agentPoolProfiles = agentPoolProfiles;
            return this;
        }

        /**
         * @param agentPoolProfiles The agent pools of the cluster.
         * 
         * @return builder
         * 
         */
        public Builder agentPoolProfiles(List agentPoolProfiles) {
            return agentPoolProfiles(Output.of(agentPoolProfiles));
        }

        /**
         * @param agentPoolProfiles The agent pools of the cluster.
         * 
         * @return builder
         * 
         */
        public Builder agentPoolProfiles(NamedAgentPoolProfileArgs... agentPoolProfiles) {
            return agentPoolProfiles(List.of(agentPoolProfiles));
        }

        /**
         * @param cloudProviderProfile The underlying cloud infra provider properties.
         * 
         * @return builder
         * 
         */
        public Builder cloudProviderProfile(@Nullable Output cloudProviderProfile) {
            $.cloudProviderProfile = cloudProviderProfile;
            return this;
        }

        /**
         * @param cloudProviderProfile The underlying cloud infra provider properties.
         * 
         * @return builder
         * 
         */
        public Builder cloudProviderProfile(CloudProviderProfileArgs cloudProviderProfile) {
            return cloudProviderProfile(Output.of(cloudProviderProfile));
        }

        /**
         * @param controlPlane ControlPlane - ControlPlane Configuration
         * 
         * @return builder
         * 
         */
        public Builder controlPlane(@Nullable Output controlPlane) {
            $.controlPlane = controlPlane;
            return this;
        }

        /**
         * @param controlPlane ControlPlane - ControlPlane Configuration
         * 
         * @return builder
         * 
         */
        public Builder controlPlane(ControlPlaneProfileArgs controlPlane) {
            return controlPlane(Output.of(controlPlane));
        }

        /**
         * @param enableRbac EnableRBAC - Whether to enable Kubernetes Role-Based Access Control.
         * 
         * @return builder
         * 
         */
        public Builder enableRbac(@Nullable Output enableRbac) {
            $.enableRbac = enableRbac;
            return this;
        }

        /**
         * @param enableRbac EnableRBAC - Whether to enable Kubernetes Role-Based Access Control.
         * 
         * @return builder
         * 
         */
        public Builder enableRbac(Boolean enableRbac) {
            return enableRbac(Output.of(enableRbac));
        }

        /**
         * @param features Additional features specs like Arc Agent Onboarding.
         * 
         * @return builder
         * 
         */
        public Builder features(@Nullable Output features) {
            $.features = features;
            return this;
        }

        /**
         * @param features Additional features specs like Arc Agent Onboarding.
         * 
         * @return builder
         * 
         */
        public Builder features(ProvisionedClustersCommonPropertiesFeaturesArgs features) {
            return features(Output.of(features));
        }

        /**
         * @param httpProxyConfig HttpProxyConfig - Configurations for provisioning the cluster with HTTP proxy servers.
         * 
         * @return builder
         * 
         */
        public Builder httpProxyConfig(@Nullable Output httpProxyConfig) {
            $.httpProxyConfig = httpProxyConfig;
            return this;
        }

        /**
         * @param httpProxyConfig HttpProxyConfig - Configurations for provisioning the cluster with HTTP proxy servers.
         * 
         * @return builder
         * 
         */
        public Builder httpProxyConfig(HttpProxyConfigArgs httpProxyConfig) {
            return httpProxyConfig(Output.of(httpProxyConfig));
        }

        /**
         * @param kubernetesVersion KubernetesVersion - Version of Kubernetes specified when creating the managed cluster.
         * 
         * @return builder
         * 
         */
        public Builder kubernetesVersion(@Nullable Output kubernetesVersion) {
            $.kubernetesVersion = kubernetesVersion;
            return this;
        }

        /**
         * @param kubernetesVersion KubernetesVersion - Version of Kubernetes specified when creating the managed cluster.
         * 
         * @return builder
         * 
         */
        public Builder kubernetesVersion(String kubernetesVersion) {
            return kubernetesVersion(Output.of(kubernetesVersion));
        }

        /**
         * @param linuxProfile LinuxProfile - The profile for Linux VMs in the Provisioned Cluster.
         * 
         * @return builder
         * 
         */
        public Builder linuxProfile(@Nullable Output linuxProfile) {
            $.linuxProfile = linuxProfile;
            return this;
        }

        /**
         * @param linuxProfile LinuxProfile - The profile for Linux VMs in the Provisioned Cluster.
         * 
         * @return builder
         * 
         */
        public Builder linuxProfile(LinuxProfilePropertiesArgs linuxProfile) {
            return linuxProfile(Output.of(linuxProfile));
        }

        /**
         * @param networkProfile NetworkProfile - Profile of network configuration.
         * 
         * @return builder
         * 
         */
        public Builder networkProfile(@Nullable Output networkProfile) {
            $.networkProfile = networkProfile;
            return this;
        }

        /**
         * @param networkProfile NetworkProfile - Profile of network configuration.
         * 
         * @return builder
         * 
         */
        public Builder networkProfile(NetworkProfileArgs networkProfile) {
            return networkProfile(Output.of(networkProfile));
        }

        /**
         * @param nodeResourceGroup NodeResourceGroup - Name of the resource group containing agent pool nodes.
         * 
         * @return builder
         * 
         */
        public Builder nodeResourceGroup(@Nullable Output nodeResourceGroup) {
            $.nodeResourceGroup = nodeResourceGroup;
            return this;
        }

        /**
         * @param nodeResourceGroup NodeResourceGroup - Name of the resource group containing agent pool nodes.
         * 
         * @return builder
         * 
         */
        public Builder nodeResourceGroup(String nodeResourceGroup) {
            return nodeResourceGroup(Output.of(nodeResourceGroup));
        }

        /**
         * @param windowsProfile WindowsProfile - Profile for Windows VMs in the Provisioned Cluster.
         * 
         * @return builder
         * 
         */
        public Builder windowsProfile(@Nullable Output windowsProfile) {
            $.windowsProfile = windowsProfile;
            return this;
        }

        /**
         * @param windowsProfile WindowsProfile - Profile for Windows VMs in the Provisioned Cluster.
         * 
         * @return builder
         * 
         */
        public Builder windowsProfile(WindowsProfileArgs windowsProfile) {
            return windowsProfile(Output.of(windowsProfile));
        }

        public ProvisionedClustersAllPropertiesArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy