Interface HelmChartConfig


@ConfigMapping(prefix="quarkus.helm") @ConfigRoot(phase=BUILD_TIME) public interface HelmChartConfig
  • Method Details

    • enabled

      @WithDefault("true") boolean enabled()
      Enabled the generation of Helm files.
    • name

      Optional<String> name()
      Name of the Helm chart. If not set, it will use the application name.
    • home

      Optional<String> home()
      Project's home page of the Helm chart. It must be a URL.
    • sources

      Optional<List<String>> sources()
      The Helm chart list of URLs to source code for this project.
    • version

      Optional<String> version()
      Version of the Helm chart. If not set, it will use the application version.
    • description

      Optional<String> description()
      The Helm chart single-sentence description.
    • keywords

      Optional<List<String>> keywords()
      List of keywords to add to the chart.
    • maintainers

      Map<String,MaintainerConfig> maintainers()
      The Helm chart list of maintainers.
    • icon

      Optional<String> icon()
      Icon of the Helm chart. It must be a URL to an SVG or PNG image.
    • apiVersion

      @WithDefault("v2") String apiVersion()
      The Chart API version. The default value is `v2`.
    • condition

      Optional<String> condition()
      The condition to enable this chart.
    • tags

      Optional<String> tags()
      Tags of this chart.
    • appVersion

      Optional<String> appVersion()
      The version of the application enclosed of this chart.
    • deprecated

      Optional<Boolean> deprecated()
      Whether this chart is deprecated.
    • annotations

      Map<String,String> annotations()
      Annotations are additional mappings uninterpreted by Helm, made available for inspection by other applications.
    • kubeVersion

      Optional<String> kubeVersion()
      KubeVersion is a SemVer constraint specifying the version of Kubernetes required.
    • dependencies

      The Helm chart list of dependencies.
    • type

      Optional<String> type()
      Specifies the chart type: application or library.
    • valuesRootAlias

      @WithDefault("app") String valuesRootAlias()
      Alias of the root element in the generated values file.
    • notes

      @WithDefault("/NOTES.template.txt") String notes()
      Notes template to be generated.
    • extension

      @WithDefault("tar.gz") String extension()
      Extension of the Helm tarball file. Default is `tar.gz`.
    • tarFileClassifier

      Optional<String> tarFileClassifier()
      Classifier to be appended into the generated Helm tarball file.
    • createTarFile

      @WithDefault("false") boolean createTarFile()
      If Helm tar file is generated.
    • createValuesSchemaFile

      @WithDefault("true") boolean createValuesSchemaFile()
      Whether to generate the `values.schema.json` file that is used to validate the Helm Chart input values.
    • createReadmeFile

      @WithDefault("true") boolean createReadmeFile()
      Whether to generate the `README.md` file that includes the Chart description and table with the configurable parameters and their default values.
    • values

      The configuration references to be mapped into the Helm values file.
    • expressions

      Map<String,ExpressionConfig> expressions()
      Helm expressions to be replaced into the generated resources.
    • addIfStatement

      Map<String,AddIfStatementConfig> addIfStatement()
      The if statements to include in the generated resources.
    • inputDirectory

      @WithDefault("src/main/helm") String inputDirectory()
      The input folder in which to place the user-defined Helm files. These files will be used as inputs to populate the generated Helm files. At the moment, the supported Helm files are: README.md, LICENSE, values.schema.json, app-readme.md or app-README.md, questions.yml or questions.yaml, the "crds" directory, and requirements.yml or requirements.yaml. Moreover, you can provide a custom `values.yaml` or `Chart.yaml` and the content will be merged with the auto-generated configuration. It also supports absolute paths. By default, it will use the folder "src/main/helm".
    • outputDirectory

      @WithDefault("helm") String outputDirectory()
      The output folder in which to place the Helm generated folder. The folder is relative to the target output directory in Quarkus that is also configurable using the property `quarkus.package.output-directory`. It also supports absolute paths. By default, it will be generated in the folder named "helm".
    • repository

      HelmRepository repository()
      The configuration to perform Helm charts uploads to Helm repositories..
    • mapSystemProperties

      @WithDefault("true") boolean mapSystemProperties()
      If enabled, the extension will check whether there are properties using system properties in the form of `${XXX}` and if so, it will expose these properties as env-var values within the generated container resource.
    • disableNamingValidation

      @WithDefault("false") boolean disableNamingValidation()
      If true, the naming validation will be disabled. The naming validation rejects property names that contain "-" characters.
    • valuesProfileSeparator

      @WithDefault(".") String valuesProfileSeparator()
      Configuration for the separator string in the filename of profile specific values files i.e. values.profile.yaml, defaults to "."
    • valuesSchema

      ValuesSchemaConfig valuesSchema()
      Configuration for the `values.schema.json` file.