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

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

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

import java.util.List;
import java.util.Optional;

import io.smallrye.config.WithDefault;

public interface HelmDependencyConfig {
    /**
     * Name of the dependency.
     */
    Optional name();

    /**
     * Version of the dependency.
     */
    String version();

    /**
     * Repository of the dependency.
     */
    String repository();

    /**
     * Dependency condition. If the property starts with `@.`, then the property won't be added under the root element in the
     * generated `values.yaml` file.
     */
    Optional condition();

    /**
     * Dependency tags.
     */
    Optional> tags();

    /**
     * Whether this dependency should be loaded.
     */
    Optional enabled();

    /**
     * Alias of the dependency.
     */
    Optional alias();

    /**
     * Instruct the application to wait for the service that should be installed as part of this Helm dependency.
     * You can set only a service name or a combination of a service name plus the service port (service:port).
     */
    Optional waitForService();

    /**
     * If wait for service is set, it will use this image to configure the init-containers within the deployment resource.
     */
    @WithDefault("busybox:1.34.1")
    String waitForServiceImage();

    /**
     * If wait for service is set, it will use this command to run the init-containers within the deployment resource.
     */
    @WithDefault("for i in $(seq 1 200); do nc -z -w3 ::service-name ::service-port && exit 0; done; exit 1")
    String waitForServicePortCommandTemplate();

    /**
     * If wait for service is set, it will use this command to run the init-containers within the deployment resource.
     */
    @WithDefault("until nslookup ::service-name; do echo waiting for service; sleep 2; done")
    String waitForServiceOnlyCommandTemplate();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy