87 lines
4.3 KiB
YAML
87 lines
4.3 KiB
YAML
apiVersion: argoproj.io/v1alpha1
|
|
kind: ConfigManagementPlugin
|
|
metadata:
|
|
name: helm-kustomize-cmp
|
|
spec:
|
|
# version: v1.2
|
|
# The init command runs in the Application source directory at the beginning of each manifest generation. The init
|
|
# command can output anything. A non-zero status code will fail manifest generation.
|
|
init:
|
|
# Init always happens immediately before generate, but its output is not treated as manifests.
|
|
# This is a good place to, for example, download chart dependencies.
|
|
command: [/bin/sh]
|
|
args:
|
|
- /plugin/init.sh
|
|
# The generate command runs in the Application source directory each time manifests are generated. Standard output
|
|
# must be ONLY valid Kubernetes Objects in either YAML or JSON. A non-zero exit code will fail manifest generation.
|
|
# To write log messages from the command, write them to stderr, it will always be displayed.
|
|
# Error output will be sent to the UI, so avoid printing sensitive information (such as secrets).
|
|
generate:
|
|
command: [/bin/sh]
|
|
args:
|
|
- /plugin/generate.sh
|
|
|
|
# The discovery config is applied to a repository. If every configured discovery tool matches, then the plugin may be
|
|
# used to generate manifests for Applications using the repository. If the discovery config is omitted then the plugin
|
|
# will not match any application but can still be invoked explicitly by specifying the plugin name in the app spec.
|
|
# Only one of fileName, find.glob, or find.command should be specified. If multiple are specified then only the
|
|
# first (in that order) is evaluated.
|
|
# discover:
|
|
# fileName is a glob pattern (https://pkg.go.dev/path/filepath#Glob) that is applied to the Application's source
|
|
# directory. If there is a match, this plugin may be used for the Application.
|
|
# fileName: "./subdir/s*.yaml"
|
|
# find:
|
|
# This does the same thing as fileName, but it supports double-start (nested directory) glob patterns.
|
|
# glob: "**/Chart.yaml"
|
|
# The find command runs in the repository's root directory. To match, it must exit with status code 0 _and_
|
|
# produce non-empty output to standard out.
|
|
# command: [sh, -c, find . -name env.yaml]
|
|
# The parameters config describes what parameters the UI should display for an Application. It is up to the user to
|
|
# actually set parameters in the Application manifest (in spec.source.plugin.parameters). The announcements _only_
|
|
# inform the "Parameters" tab in the App Details page of the UI.
|
|
parameters:
|
|
# Static parameter announcements are sent to the UI for _all_ Applications handled by this plugin.
|
|
# Think of the `string`, `array`, and `map` values set here as "defaults". It is up to the plugin author to make
|
|
# sure that these default values actually reflect the plugin's behavior if the user doesn't explicitly set different
|
|
# values for those parameters.
|
|
static:
|
|
- name: env
|
|
title: Environment
|
|
tooltip: Kustomization env (directory in manifest folder)
|
|
required: true
|
|
itemType: string
|
|
collectionType: string
|
|
string: "staging"
|
|
- name: chart
|
|
title: Chart
|
|
tooltip: Name or path of helm chart
|
|
required: false
|
|
itemType: string
|
|
collectionType: string
|
|
string: "."
|
|
- name: flags
|
|
title: Helm flags
|
|
tooltip: Extra helm flags
|
|
required: false
|
|
itemType: string
|
|
collectionType: string
|
|
string: ""
|
|
# All the fields above besides 'string' apply to both the array and map type parameter announcements.
|
|
# - name: array-param
|
|
# # This field communicates the parameter's default value to the UI. Setting this field is optional.
|
|
# array: [default, items]
|
|
# collectionType: array
|
|
# - name: map-param
|
|
# # This field communicates the parameter's default value to the UI. Setting this field is optional.
|
|
# map:
|
|
# some: value
|
|
# collectionType: map
|
|
# dynamic:
|
|
# The command is run in an Application's source directory. Standard output must be JSON matching the schema of the
|
|
# static parameter announcements list.
|
|
# command: [ /bin/sh, /plugin/get-values.sh ]
|
|
|
|
# If set to `true` then the plugin receives repository files with original file mode. Dangerous since the repository
|
|
# might have executable files. Set to true only if you trust the CMP plugin authors.
|
|
preserveFileMode: false
|