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

io.quarkiverse.helm.deployment.HelmRepository Maven / Gradle / Ivy

There is a newer version: 1.2.6
Show newest version
package io.quarkiverse.helm.deployment;

import java.util.Optional;

import org.apache.commons.lang3.StringUtils;

import io.smallrye.config.WithDefault;

public interface HelmRepository {
    /**
     * If true, it will perform the upload to a Helm repository.
     */
    @WithDefault("false")
    boolean push();

    /**
     * The deployment target to push. Options are: `kubernetes`, `openshift`, `knative`...
     */
    @WithDefault("${quarkus.kubernetes.deployment-target}")
    Optional deploymentTarget();

    /**
     * The Helm repository type. Options are: `CHARTMUSEUM`, `ARTIFACTORY`, and `NEXUS`.
     */
    Optional type();

    /**
     * The Helm repository URL.
     */
    Optional url();

    /**
     * The Helm repository username.
     */
    Optional username();

    /**
     * The Helm repository password.
     */
    Optional password();

    default String getUsername() {
        return username().filter(StringUtils::isNotEmpty).orElse(null);
    }

    default String getPassword() {
        return password().filter(StringUtils::isNotEmpty).orElse(null);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy