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

com.pulumi.aws.eks.inputs.PodIdentityAssociationState 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.eks.inputs;

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


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

    public static final PodIdentityAssociationState Empty = new PodIdentityAssociationState();

    /**
     * The Amazon Resource Name (ARN) of the association.
     * 
     */
    @Import(name="associationArn")
    private @Nullable Output associationArn;

    /**
     * @return The Amazon Resource Name (ARN) of the association.
     * 
     */
    public Optional> associationArn() {
        return Optional.ofNullable(this.associationArn);
    }

    /**
     * The ID of the association.
     * 
     */
    @Import(name="associationId")
    private @Nullable Output associationId;

    /**
     * @return The ID of the association.
     * 
     */
    public Optional> associationId() {
        return Optional.ofNullable(this.associationId);
    }

    /**
     * The name of the cluster to create the association in.
     * 
     */
    @Import(name="clusterName")
    private @Nullable Output clusterName;

    /**
     * @return The name of the cluster to create the association in.
     * 
     */
    public Optional> clusterName() {
        return Optional.ofNullable(this.clusterName);
    }

    /**
     * The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
     * 
     */
    @Import(name="namespace")
    private @Nullable Output namespace;

    /**
     * @return The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
     * 
     */
    public Optional> namespace() {
        return Optional.ofNullable(this.namespace);
    }

    /**
     * The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
     * 
     */
    @Import(name="roleArn")
    private @Nullable Output roleArn;

    /**
     * @return The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
     * 
     */
    public Optional> roleArn() {
        return Optional.ofNullable(this.roleArn);
    }

    /**
     * The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
     * 
     * The following arguments are optional:
     * 
     */
    @Import(name="serviceAccount")
    private @Nullable Output serviceAccount;

    /**
     * @return The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
     * 
     * The following arguments are optional:
     * 
     */
    public Optional> serviceAccount() {
        return Optional.ofNullable(this.serviceAccount);
    }

    /**
     * Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    @Import(name="tags")
    private @Nullable Output> tags;

    /**
     * @return Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    /**
     * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    @Import(name="tagsAll")
    private @Nullable Output> tagsAll;

    /**
     * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    public Optional>> tagsAll() {
        return Optional.ofNullable(this.tagsAll);
    }

    private PodIdentityAssociationState() {}

    private PodIdentityAssociationState(PodIdentityAssociationState $) {
        this.associationArn = $.associationArn;
        this.associationId = $.associationId;
        this.clusterName = $.clusterName;
        this.namespace = $.namespace;
        this.roleArn = $.roleArn;
        this.serviceAccount = $.serviceAccount;
        this.tags = $.tags;
        this.tagsAll = $.tagsAll;
    }

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

    public static final class Builder {
        private PodIdentityAssociationState $;

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

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

        /**
         * @param associationArn The Amazon Resource Name (ARN) of the association.
         * 
         * @return builder
         * 
         */
        public Builder associationArn(@Nullable Output associationArn) {
            $.associationArn = associationArn;
            return this;
        }

        /**
         * @param associationArn The Amazon Resource Name (ARN) of the association.
         * 
         * @return builder
         * 
         */
        public Builder associationArn(String associationArn) {
            return associationArn(Output.of(associationArn));
        }

        /**
         * @param associationId The ID of the association.
         * 
         * @return builder
         * 
         */
        public Builder associationId(@Nullable Output associationId) {
            $.associationId = associationId;
            return this;
        }

        /**
         * @param associationId The ID of the association.
         * 
         * @return builder
         * 
         */
        public Builder associationId(String associationId) {
            return associationId(Output.of(associationId));
        }

        /**
         * @param clusterName The name of the cluster to create the association in.
         * 
         * @return builder
         * 
         */
        public Builder clusterName(@Nullable Output clusterName) {
            $.clusterName = clusterName;
            return this;
        }

        /**
         * @param clusterName The name of the cluster to create the association in.
         * 
         * @return builder
         * 
         */
        public Builder clusterName(String clusterName) {
            return clusterName(Output.of(clusterName));
        }

        /**
         * @param namespace The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
         * 
         * @return builder
         * 
         */
        public Builder namespace(@Nullable Output namespace) {
            $.namespace = namespace;
            return this;
        }

        /**
         * @param namespace The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
         * 
         * @return builder
         * 
         */
        public Builder namespace(String namespace) {
            return namespace(Output.of(namespace));
        }

        /**
         * @param roleArn The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(@Nullable Output roleArn) {
            $.roleArn = roleArn;
            return this;
        }

        /**
         * @param roleArn The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(String roleArn) {
            return roleArn(Output.of(roleArn));
        }

        /**
         * @param serviceAccount The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder serviceAccount(@Nullable Output serviceAccount) {
            $.serviceAccount = serviceAccount;
            return this;
        }

        /**
         * @param serviceAccount The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder serviceAccount(String serviceAccount) {
            return serviceAccount(Output.of(serviceAccount));
        }

        /**
         * @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        /**
         * @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        /**
         * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(@Nullable Output> tagsAll) {
            $.tagsAll = tagsAll;
            return this;
        }

        /**
         * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(Map tagsAll) {
            return tagsAll(Output.of(tagsAll));
        }

        public PodIdentityAssociationState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy