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

com.pulumi.kubernetescertmanager.inputs.ReleaseArgs Maven / Gradle / Ivy

The newest version!
// *** WARNING: this file was generated by pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.kubernetescertmanager.inputs;

import com.pulumi.asset.AssetOrArchive;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.kubernetescertmanager.inputs.RepositoryOptsArgs;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * A Release is an instance of a chart running in a Kubernetes cluster.
 * A Chart is a Helm package. It contains all of the resource definitions necessary to run an application, tool, or service inside of a Kubernetes cluster.
 * Note - Helm Release is currently in BETA and may change. Use in production environment is discouraged.
 * 
 */
public final class ReleaseArgs extends com.pulumi.resources.ResourceArgs {

    public static final ReleaseArgs Empty = new ReleaseArgs();

    /**
     * If set, installation process purges chart on fail. `skipAwait` will be disabled automatically if atomic is used.
     * 
     */
    @Import(name="atomic")
    private @Nullable Output atomic;

    /**
     * @return If set, installation process purges chart on fail. `skipAwait` will be disabled automatically if atomic is used.
     * 
     */
    public Optional> atomic() {
        return Optional.ofNullable(this.atomic);
    }

    /**
     * Chart name to be installed. A path may be used.
     * 
     */
    @Import(name="chart")
    private @Nullable Output chart;

    /**
     * @return Chart name to be installed. A path may be used.
     * 
     */
    public Optional> chart() {
        return Optional.ofNullable(this.chart);
    }

    /**
     * Allow deletion of new resources created in this upgrade when upgrade fails.
     * 
     */
    @Import(name="cleanupOnFail")
    private @Nullable Output cleanupOnFail;

    /**
     * @return Allow deletion of new resources created in this upgrade when upgrade fails.
     * 
     */
    public Optional> cleanupOnFail() {
        return Optional.ofNullable(this.cleanupOnFail);
    }

    /**
     * Create the namespace if it does not exist.
     * 
     */
    @Import(name="createNamespace")
    private @Nullable Output createNamespace;

    /**
     * @return Create the namespace if it does not exist.
     * 
     */
    public Optional> createNamespace() {
        return Optional.ofNullable(this.createNamespace);
    }

    /**
     * Run helm dependency update before installing the chart.
     * 
     */
    @Import(name="dependencyUpdate")
    private @Nullable Output dependencyUpdate;

    /**
     * @return Run helm dependency update before installing the chart.
     * 
     */
    public Optional> dependencyUpdate() {
        return Optional.ofNullable(this.dependencyUpdate);
    }

    /**
     * Add a custom description
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Add a custom description
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * Use chart development versions, too. Equivalent to version '>0.0.0-0'. If `version` is set, this is ignored.
     * 
     */
    @Import(name="devel")
    private @Nullable Output devel;

    /**
     * @return Use chart development versions, too. Equivalent to version '>0.0.0-0'. If `version` is set, this is ignored.
     * 
     */
    public Optional> devel() {
        return Optional.ofNullable(this.devel);
    }

    /**
     * Prevent CRD hooks from, running, but run other hooks.  See helm install --no-crd-hook
     * 
     */
    @Import(name="disableCRDHooks")
    private @Nullable Output disableCRDHooks;

    /**
     * @return Prevent CRD hooks from, running, but run other hooks.  See helm install --no-crd-hook
     * 
     */
    public Optional> disableCRDHooks() {
        return Optional.ofNullable(this.disableCRDHooks);
    }

    /**
     * If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
     * 
     */
    @Import(name="disableOpenapiValidation")
    private @Nullable Output disableOpenapiValidation;

    /**
     * @return If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
     * 
     */
    public Optional> disableOpenapiValidation() {
        return Optional.ofNullable(this.disableOpenapiValidation);
    }

    /**
     * Prevent hooks from running.
     * 
     */
    @Import(name="disableWebhooks")
    private @Nullable Output disableWebhooks;

    /**
     * @return Prevent hooks from running.
     * 
     */
    public Optional> disableWebhooks() {
        return Optional.ofNullable(this.disableWebhooks);
    }

    /**
     * Force resource update through delete/recreate if needed.
     * 
     */
    @Import(name="forceUpdate")
    private @Nullable Output forceUpdate;

    /**
     * @return Force resource update through delete/recreate if needed.
     * 
     */
    public Optional> forceUpdate() {
        return Optional.ofNullable(this.forceUpdate);
    }

    /**
     * Location of public keys used for verification. Used only if `verify` is true
     * 
     */
    @Import(name="keyring")
    private @Nullable Output keyring;

    /**
     * @return Location of public keys used for verification. Used only if `verify` is true
     * 
     */
    public Optional> keyring() {
        return Optional.ofNullable(this.keyring);
    }

    /**
     * Run helm lint when planning.
     * 
     */
    @Import(name="lint")
    private @Nullable Output lint;

    /**
     * @return Run helm lint when planning.
     * 
     */
    public Optional> lint() {
        return Optional.ofNullable(this.lint);
    }

    /**
     * The rendered manifests as JSON. Not yet supported.
     * 
     */
    @Import(name="manifest")
    private @Nullable Output> manifest;

    /**
     * @return The rendered manifests as JSON. Not yet supported.
     * 
     */
    public Optional>> manifest() {
        return Optional.ofNullable(this.manifest);
    }

    /**
     * Limit the maximum number of revisions saved per release. Use 0 for no limit.
     * 
     */
    @Import(name="maxHistory")
    private @Nullable Output maxHistory;

    /**
     * @return Limit the maximum number of revisions saved per release. Use 0 for no limit.
     * 
     */
    public Optional> maxHistory() {
        return Optional.ofNullable(this.maxHistory);
    }

    /**
     * Release name.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Release name.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * Namespace to install the release into.
     * 
     */
    @Import(name="namespace")
    private @Nullable Output namespace;

    /**
     * @return Namespace to install the release into.
     * 
     */
    public Optional> namespace() {
        return Optional.ofNullable(this.namespace);
    }

    /**
     * Postrender command to run.
     * 
     */
    @Import(name="postrender")
    private @Nullable Output postrender;

    /**
     * @return Postrender command to run.
     * 
     */
    public Optional> postrender() {
        return Optional.ofNullable(this.postrender);
    }

    /**
     * Perform pods restart during upgrade/rollback.
     * 
     */
    @Import(name="recreatePods")
    private @Nullable Output recreatePods;

    /**
     * @return Perform pods restart during upgrade/rollback.
     * 
     */
    public Optional> recreatePods() {
        return Optional.ofNullable(this.recreatePods);
    }

    /**
     * If set, render subchart notes along with the parent.
     * 
     */
    @Import(name="renderSubchartNotes")
    private @Nullable Output renderSubchartNotes;

    /**
     * @return If set, render subchart notes along with the parent.
     * 
     */
    public Optional> renderSubchartNotes() {
        return Optional.ofNullable(this.renderSubchartNotes);
    }

    /**
     * Re-use the given name, even if that name is already used. This is unsafe in production
     * 
     */
    @Import(name="replace")
    private @Nullable Output replace;

    /**
     * @return Re-use the given name, even if that name is already used. This is unsafe in production
     * 
     */
    public Optional> replace() {
        return Optional.ofNullable(this.replace);
    }

    /**
     * Specification defining the Helm chart repository to use.
     * 
     */
    @Import(name="repositoryOpts")
    private @Nullable Output repositoryOpts;

    /**
     * @return Specification defining the Helm chart repository to use.
     * 
     */
    public Optional> repositoryOpts() {
        return Optional.ofNullable(this.repositoryOpts);
    }

    /**
     * When upgrading, reset the values to the ones built into the chart.
     * 
     */
    @Import(name="resetValues")
    private @Nullable Output resetValues;

    /**
     * @return When upgrading, reset the values to the ones built into the chart.
     * 
     */
    public Optional> resetValues() {
        return Optional.ofNullable(this.resetValues);
    }

    /**
     * Names of resources created by the release grouped by "kind/version".
     * 
     */
    @Import(name="resourceNames")
    private @Nullable Output>> resourceNames;

    /**
     * @return Names of resources created by the release grouped by "kind/version".
     * 
     */
    public Optional>>> resourceNames() {
        return Optional.ofNullable(this.resourceNames);
    }

    /**
     * When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
     * 
     */
    @Import(name="reuseValues")
    private @Nullable Output reuseValues;

    /**
     * @return When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
     * 
     */
    public Optional> reuseValues() {
        return Optional.ofNullable(this.reuseValues);
    }

    /**
     * By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
     * 
     */
    @Import(name="skipAwait")
    private @Nullable Output skipAwait;

    /**
     * @return By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
     * 
     */
    public Optional> skipAwait() {
        return Optional.ofNullable(this.skipAwait);
    }

    /**
     * If set, no CRDs will be installed. By default, CRDs are installed if not already present.
     * 
     */
    @Import(name="skipCrds")
    private @Nullable Output skipCrds;

    /**
     * @return If set, no CRDs will be installed. By default, CRDs are installed if not already present.
     * 
     */
    public Optional> skipCrds() {
        return Optional.ofNullable(this.skipCrds);
    }

    /**
     * Time in seconds to wait for any individual kubernetes operation.
     * 
     */
    @Import(name="timeout")
    private @Nullable Output timeout;

    /**
     * @return Time in seconds to wait for any individual kubernetes operation.
     * 
     */
    public Optional> timeout() {
        return Optional.ofNullable(this.timeout);
    }

    /**
     * List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
     * 
     */
    @Import(name="valueYamlFiles")
    private @Nullable Output> valueYamlFiles;

    /**
     * @return List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
     * 
     */
    public Optional>> valueYamlFiles() {
        return Optional.ofNullable(this.valueYamlFiles);
    }

    /**
     * Custom values set for the release.
     * 
     */
    @Import(name="values")
    private @Nullable Output> values;

    /**
     * @return Custom values set for the release.
     * 
     */
    public Optional>> values() {
        return Optional.ofNullable(this.values);
    }

    /**
     * Verify the package before installing it.
     * 
     */
    @Import(name="verify")
    private @Nullable Output verify;

    /**
     * @return Verify the package before installing it.
     * 
     */
    public Optional> verify() {
        return Optional.ofNullable(this.verify);
    }

    /**
     * Specify the exact chart version to install. If this is not specified, the latest version is installed.
     * 
     */
    @Import(name="version")
    private @Nullable Output version;

    /**
     * @return Specify the exact chart version to install. If this is not specified, the latest version is installed.
     * 
     */
    public Optional> version() {
        return Optional.ofNullable(this.version);
    }

    /**
     * Will wait until all Jobs have been completed before marking the release as successful. This is ignored if `skipAwait` is enabled.
     * 
     */
    @Import(name="waitForJobs")
    private @Nullable Output waitForJobs;

    /**
     * @return Will wait until all Jobs have been completed before marking the release as successful. This is ignored if `skipAwait` is enabled.
     * 
     */
    public Optional> waitForJobs() {
        return Optional.ofNullable(this.waitForJobs);
    }

    private ReleaseArgs() {}

    private ReleaseArgs(ReleaseArgs $) {
        this.atomic = $.atomic;
        this.chart = $.chart;
        this.cleanupOnFail = $.cleanupOnFail;
        this.createNamespace = $.createNamespace;
        this.dependencyUpdate = $.dependencyUpdate;
        this.description = $.description;
        this.devel = $.devel;
        this.disableCRDHooks = $.disableCRDHooks;
        this.disableOpenapiValidation = $.disableOpenapiValidation;
        this.disableWebhooks = $.disableWebhooks;
        this.forceUpdate = $.forceUpdate;
        this.keyring = $.keyring;
        this.lint = $.lint;
        this.manifest = $.manifest;
        this.maxHistory = $.maxHistory;
        this.name = $.name;
        this.namespace = $.namespace;
        this.postrender = $.postrender;
        this.recreatePods = $.recreatePods;
        this.renderSubchartNotes = $.renderSubchartNotes;
        this.replace = $.replace;
        this.repositoryOpts = $.repositoryOpts;
        this.resetValues = $.resetValues;
        this.resourceNames = $.resourceNames;
        this.reuseValues = $.reuseValues;
        this.skipAwait = $.skipAwait;
        this.skipCrds = $.skipCrds;
        this.timeout = $.timeout;
        this.valueYamlFiles = $.valueYamlFiles;
        this.values = $.values;
        this.verify = $.verify;
        this.version = $.version;
        this.waitForJobs = $.waitForJobs;
    }

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

    public static final class Builder {
        private ReleaseArgs $;

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

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

        /**
         * @param atomic If set, installation process purges chart on fail. `skipAwait` will be disabled automatically if atomic is used.
         * 
         * @return builder
         * 
         */
        public Builder atomic(@Nullable Output atomic) {
            $.atomic = atomic;
            return this;
        }

        /**
         * @param atomic If set, installation process purges chart on fail. `skipAwait` will be disabled automatically if atomic is used.
         * 
         * @return builder
         * 
         */
        public Builder atomic(Boolean atomic) {
            return atomic(Output.of(atomic));
        }

        /**
         * @param chart Chart name to be installed. A path may be used.
         * 
         * @return builder
         * 
         */
        public Builder chart(@Nullable Output chart) {
            $.chart = chart;
            return this;
        }

        /**
         * @param chart Chart name to be installed. A path may be used.
         * 
         * @return builder
         * 
         */
        public Builder chart(String chart) {
            return chart(Output.of(chart));
        }

        /**
         * @param cleanupOnFail Allow deletion of new resources created in this upgrade when upgrade fails.
         * 
         * @return builder
         * 
         */
        public Builder cleanupOnFail(@Nullable Output cleanupOnFail) {
            $.cleanupOnFail = cleanupOnFail;
            return this;
        }

        /**
         * @param cleanupOnFail Allow deletion of new resources created in this upgrade when upgrade fails.
         * 
         * @return builder
         * 
         */
        public Builder cleanupOnFail(Boolean cleanupOnFail) {
            return cleanupOnFail(Output.of(cleanupOnFail));
        }

        /**
         * @param createNamespace Create the namespace if it does not exist.
         * 
         * @return builder
         * 
         */
        public Builder createNamespace(@Nullable Output createNamespace) {
            $.createNamespace = createNamespace;
            return this;
        }

        /**
         * @param createNamespace Create the namespace if it does not exist.
         * 
         * @return builder
         * 
         */
        public Builder createNamespace(Boolean createNamespace) {
            return createNamespace(Output.of(createNamespace));
        }

        /**
         * @param dependencyUpdate Run helm dependency update before installing the chart.
         * 
         * @return builder
         * 
         */
        public Builder dependencyUpdate(@Nullable Output dependencyUpdate) {
            $.dependencyUpdate = dependencyUpdate;
            return this;
        }

        /**
         * @param dependencyUpdate Run helm dependency update before installing the chart.
         * 
         * @return builder
         * 
         */
        public Builder dependencyUpdate(Boolean dependencyUpdate) {
            return dependencyUpdate(Output.of(dependencyUpdate));
        }

        /**
         * @param description Add a custom description
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Add a custom description
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param devel Use chart development versions, too. Equivalent to version '>0.0.0-0'. If `version` is set, this is ignored.
         * 
         * @return builder
         * 
         */
        public Builder devel(@Nullable Output devel) {
            $.devel = devel;
            return this;
        }

        /**
         * @param devel Use chart development versions, too. Equivalent to version '>0.0.0-0'. If `version` is set, this is ignored.
         * 
         * @return builder
         * 
         */
        public Builder devel(Boolean devel) {
            return devel(Output.of(devel));
        }

        /**
         * @param disableCRDHooks Prevent CRD hooks from, running, but run other hooks.  See helm install --no-crd-hook
         * 
         * @return builder
         * 
         */
        public Builder disableCRDHooks(@Nullable Output disableCRDHooks) {
            $.disableCRDHooks = disableCRDHooks;
            return this;
        }

        /**
         * @param disableCRDHooks Prevent CRD hooks from, running, but run other hooks.  See helm install --no-crd-hook
         * 
         * @return builder
         * 
         */
        public Builder disableCRDHooks(Boolean disableCRDHooks) {
            return disableCRDHooks(Output.of(disableCRDHooks));
        }

        /**
         * @param disableOpenapiValidation If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
         * 
         * @return builder
         * 
         */
        public Builder disableOpenapiValidation(@Nullable Output disableOpenapiValidation) {
            $.disableOpenapiValidation = disableOpenapiValidation;
            return this;
        }

        /**
         * @param disableOpenapiValidation If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
         * 
         * @return builder
         * 
         */
        public Builder disableOpenapiValidation(Boolean disableOpenapiValidation) {
            return disableOpenapiValidation(Output.of(disableOpenapiValidation));
        }

        /**
         * @param disableWebhooks Prevent hooks from running.
         * 
         * @return builder
         * 
         */
        public Builder disableWebhooks(@Nullable Output disableWebhooks) {
            $.disableWebhooks = disableWebhooks;
            return this;
        }

        /**
         * @param disableWebhooks Prevent hooks from running.
         * 
         * @return builder
         * 
         */
        public Builder disableWebhooks(Boolean disableWebhooks) {
            return disableWebhooks(Output.of(disableWebhooks));
        }

        /**
         * @param forceUpdate Force resource update through delete/recreate if needed.
         * 
         * @return builder
         * 
         */
        public Builder forceUpdate(@Nullable Output forceUpdate) {
            $.forceUpdate = forceUpdate;
            return this;
        }

        /**
         * @param forceUpdate Force resource update through delete/recreate if needed.
         * 
         * @return builder
         * 
         */
        public Builder forceUpdate(Boolean forceUpdate) {
            return forceUpdate(Output.of(forceUpdate));
        }

        /**
         * @param keyring Location of public keys used for verification. Used only if `verify` is true
         * 
         * @return builder
         * 
         */
        public Builder keyring(@Nullable Output keyring) {
            $.keyring = keyring;
            return this;
        }

        /**
         * @param keyring Location of public keys used for verification. Used only if `verify` is true
         * 
         * @return builder
         * 
         */
        public Builder keyring(String keyring) {
            return keyring(Output.of(keyring));
        }

        /**
         * @param lint Run helm lint when planning.
         * 
         * @return builder
         * 
         */
        public Builder lint(@Nullable Output lint) {
            $.lint = lint;
            return this;
        }

        /**
         * @param lint Run helm lint when planning.
         * 
         * @return builder
         * 
         */
        public Builder lint(Boolean lint) {
            return lint(Output.of(lint));
        }

        /**
         * @param manifest The rendered manifests as JSON. Not yet supported.
         * 
         * @return builder
         * 
         */
        public Builder manifest(@Nullable Output> manifest) {
            $.manifest = manifest;
            return this;
        }

        /**
         * @param manifest The rendered manifests as JSON. Not yet supported.
         * 
         * @return builder
         * 
         */
        public Builder manifest(Map manifest) {
            return manifest(Output.of(manifest));
        }

        /**
         * @param maxHistory Limit the maximum number of revisions saved per release. Use 0 for no limit.
         * 
         * @return builder
         * 
         */
        public Builder maxHistory(@Nullable Output maxHistory) {
            $.maxHistory = maxHistory;
            return this;
        }

        /**
         * @param maxHistory Limit the maximum number of revisions saved per release. Use 0 for no limit.
         * 
         * @return builder
         * 
         */
        public Builder maxHistory(Integer maxHistory) {
            return maxHistory(Output.of(maxHistory));
        }

        /**
         * @param name Release name.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Release name.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param namespace Namespace to install the release into.
         * 
         * @return builder
         * 
         */
        public Builder namespace(@Nullable Output namespace) {
            $.namespace = namespace;
            return this;
        }

        /**
         * @param namespace Namespace to install the release into.
         * 
         * @return builder
         * 
         */
        public Builder namespace(String namespace) {
            return namespace(Output.of(namespace));
        }

        /**
         * @param postrender Postrender command to run.
         * 
         * @return builder
         * 
         */
        public Builder postrender(@Nullable Output postrender) {
            $.postrender = postrender;
            return this;
        }

        /**
         * @param postrender Postrender command to run.
         * 
         * @return builder
         * 
         */
        public Builder postrender(String postrender) {
            return postrender(Output.of(postrender));
        }

        /**
         * @param recreatePods Perform pods restart during upgrade/rollback.
         * 
         * @return builder
         * 
         */
        public Builder recreatePods(@Nullable Output recreatePods) {
            $.recreatePods = recreatePods;
            return this;
        }

        /**
         * @param recreatePods Perform pods restart during upgrade/rollback.
         * 
         * @return builder
         * 
         */
        public Builder recreatePods(Boolean recreatePods) {
            return recreatePods(Output.of(recreatePods));
        }

        /**
         * @param renderSubchartNotes If set, render subchart notes along with the parent.
         * 
         * @return builder
         * 
         */
        public Builder renderSubchartNotes(@Nullable Output renderSubchartNotes) {
            $.renderSubchartNotes = renderSubchartNotes;
            return this;
        }

        /**
         * @param renderSubchartNotes If set, render subchart notes along with the parent.
         * 
         * @return builder
         * 
         */
        public Builder renderSubchartNotes(Boolean renderSubchartNotes) {
            return renderSubchartNotes(Output.of(renderSubchartNotes));
        }

        /**
         * @param replace Re-use the given name, even if that name is already used. This is unsafe in production
         * 
         * @return builder
         * 
         */
        public Builder replace(@Nullable Output replace) {
            $.replace = replace;
            return this;
        }

        /**
         * @param replace Re-use the given name, even if that name is already used. This is unsafe in production
         * 
         * @return builder
         * 
         */
        public Builder replace(Boolean replace) {
            return replace(Output.of(replace));
        }

        /**
         * @param repositoryOpts Specification defining the Helm chart repository to use.
         * 
         * @return builder
         * 
         */
        public Builder repositoryOpts(@Nullable Output repositoryOpts) {
            $.repositoryOpts = repositoryOpts;
            return this;
        }

        /**
         * @param repositoryOpts Specification defining the Helm chart repository to use.
         * 
         * @return builder
         * 
         */
        public Builder repositoryOpts(RepositoryOptsArgs repositoryOpts) {
            return repositoryOpts(Output.of(repositoryOpts));
        }

        /**
         * @param resetValues When upgrading, reset the values to the ones built into the chart.
         * 
         * @return builder
         * 
         */
        public Builder resetValues(@Nullable Output resetValues) {
            $.resetValues = resetValues;
            return this;
        }

        /**
         * @param resetValues When upgrading, reset the values to the ones built into the chart.
         * 
         * @return builder
         * 
         */
        public Builder resetValues(Boolean resetValues) {
            return resetValues(Output.of(resetValues));
        }

        /**
         * @param resourceNames Names of resources created by the release grouped by "kind/version".
         * 
         * @return builder
         * 
         */
        public Builder resourceNames(@Nullable Output>> resourceNames) {
            $.resourceNames = resourceNames;
            return this;
        }

        /**
         * @param resourceNames Names of resources created by the release grouped by "kind/version".
         * 
         * @return builder
         * 
         */
        public Builder resourceNames(Map> resourceNames) {
            return resourceNames(Output.of(resourceNames));
        }

        /**
         * @param reuseValues When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
         * 
         * @return builder
         * 
         */
        public Builder reuseValues(@Nullable Output reuseValues) {
            $.reuseValues = reuseValues;
            return this;
        }

        /**
         * @param reuseValues When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
         * 
         * @return builder
         * 
         */
        public Builder reuseValues(Boolean reuseValues) {
            return reuseValues(Output.of(reuseValues));
        }

        /**
         * @param skipAwait By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
         * 
         * @return builder
         * 
         */
        public Builder skipAwait(@Nullable Output skipAwait) {
            $.skipAwait = skipAwait;
            return this;
        }

        /**
         * @param skipAwait By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
         * 
         * @return builder
         * 
         */
        public Builder skipAwait(Boolean skipAwait) {
            return skipAwait(Output.of(skipAwait));
        }

        /**
         * @param skipCrds If set, no CRDs will be installed. By default, CRDs are installed if not already present.
         * 
         * @return builder
         * 
         */
        public Builder skipCrds(@Nullable Output skipCrds) {
            $.skipCrds = skipCrds;
            return this;
        }

        /**
         * @param skipCrds If set, no CRDs will be installed. By default, CRDs are installed if not already present.
         * 
         * @return builder
         * 
         */
        public Builder skipCrds(Boolean skipCrds) {
            return skipCrds(Output.of(skipCrds));
        }

        /**
         * @param timeout Time in seconds to wait for any individual kubernetes operation.
         * 
         * @return builder
         * 
         */
        public Builder timeout(@Nullable Output timeout) {
            $.timeout = timeout;
            return this;
        }

        /**
         * @param timeout Time in seconds to wait for any individual kubernetes operation.
         * 
         * @return builder
         * 
         */
        public Builder timeout(Integer timeout) {
            return timeout(Output.of(timeout));
        }

        /**
         * @param valueYamlFiles List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
         * 
         * @return builder
         * 
         */
        public Builder valueYamlFiles(@Nullable Output> valueYamlFiles) {
            $.valueYamlFiles = valueYamlFiles;
            return this;
        }

        /**
         * @param valueYamlFiles List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
         * 
         * @return builder
         * 
         */
        public Builder valueYamlFiles(List valueYamlFiles) {
            return valueYamlFiles(Output.of(valueYamlFiles));
        }

        /**
         * @param valueYamlFiles List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
         * 
         * @return builder
         * 
         */
        public Builder valueYamlFiles(AssetOrArchive... valueYamlFiles) {
            return valueYamlFiles(List.of(valueYamlFiles));
        }

        /**
         * @param values Custom values set for the release.
         * 
         * @return builder
         * 
         */
        public Builder values(@Nullable Output> values) {
            $.values = values;
            return this;
        }

        /**
         * @param values Custom values set for the release.
         * 
         * @return builder
         * 
         */
        public Builder values(Map values) {
            return values(Output.of(values));
        }

        /**
         * @param verify Verify the package before installing it.
         * 
         * @return builder
         * 
         */
        public Builder verify(@Nullable Output verify) {
            $.verify = verify;
            return this;
        }

        /**
         * @param verify Verify the package before installing it.
         * 
         * @return builder
         * 
         */
        public Builder verify(Boolean verify) {
            return verify(Output.of(verify));
        }

        /**
         * @param version Specify the exact chart version to install. If this is not specified, the latest version is installed.
         * 
         * @return builder
         * 
         */
        public Builder version(@Nullable Output version) {
            $.version = version;
            return this;
        }

        /**
         * @param version Specify the exact chart version to install. If this is not specified, the latest version is installed.
         * 
         * @return builder
         * 
         */
        public Builder version(String version) {
            return version(Output.of(version));
        }

        /**
         * @param waitForJobs Will wait until all Jobs have been completed before marking the release as successful. This is ignored if `skipAwait` is enabled.
         * 
         * @return builder
         * 
         */
        public Builder waitForJobs(@Nullable Output waitForJobs) {
            $.waitForJobs = waitForJobs;
            return this;
        }

        /**
         * @param waitForJobs Will wait until all Jobs have been completed before marking the release as successful. This is ignored if `skipAwait` is enabled.
         * 
         * @return builder
         * 
         */
        public Builder waitForJobs(Boolean waitForJobs) {
            return waitForJobs(Output.of(waitForJobs));
        }

        public ReleaseArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy