io.quarkiverse.helm.deployment.ValueReferenceConfig Maven / Gradle / Ivy
package io.quarkiverse.helm.deployment;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import io.smallrye.config.WithDefault;
public interface ValueReferenceConfig {
/**
* The name of the property that will be present in the Helm values file. If the property starts with `@.`, then the
* property won't be added under the root element in the generated `values.yaml` file.
*/
Optional property();
/**
* A comma-separated list of YAMLPath expressions to map the Dekorate auto-generated properties to the final
* Helm values file.
*/
Optional> paths();
/**
* The profile where this value reference will be mapped to.
* For example, if the profile is `dev`, then a `values.dev.yml` file will be created with the value.
*/
Optional profile();
/**
* The value that the property will have in the Helm values file.
* If not set, the extension will resolve it from the generated artifacts.
*/
Optional value();
/**
* The integer value that the property will have in the Helm values file.
* If not set, the extension will resolve it from the generated artifacts.
*/
Optional valueAsInt();
/**
* The boolean value that the property will have in the Helm values file.
* If not set, the extension will resolve it from the generated artifacts.
*/
Optional valueAsBool();
/**
* The map value that the property will have in the Helm values file.
* If not set, the extension will resolve it from the generated artifacts.
*/
Map valueAsMap();
/**
* A list separated by comma that the property will have in the Helm values file.
* If not set, the extension will resolve it from the generated artifacts.
*/
Optional> valueAsList();
/**
* If not provided, it will use `{{ .Values.. }}`.
*
* @return The complete Helm expression to be replaced with.
*/
Optional expression();
/**
* Description of the property.
*/
Optional description();
/**
* Minimum value allowed for this property.
*/
Optional minimum();
/**
* Maximum value allowed for this property.
*/
Optional maximum();
/**
* Pattern to validate the value of this property.
*/
Optional pattern();
/**
* If true, then this property is mandatory.
*/
@WithDefault("false")
boolean required();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy