From 46c3965d37159416809d0ddbb6bbda7291e72fb1 Mon Sep 17 00:00:00 2001 From: Nick Larsen Date: Tue, 19 Nov 2024 19:51:43 +0100 Subject: [PATCH] feat(stackablectl): elvish completions --- .../partials/commands/completions.adoc | 1 + extra/completions/_stackablectl | 47 + extra/completions/stackablectl.bash | 167 ++- extra/completions/stackablectl.elv | 982 ++++++++++++++++++ extra/completions/stackablectl.fish | 46 +- extra/completions/stackablectl.nu | 23 + rust/stackablectl/src/cmds/completions.rs | 6 +- rust/xtask/src/completions.rs | 6 +- 8 files changed, 1257 insertions(+), 21 deletions(-) create mode 100644 extra/completions/stackablectl.elv diff --git a/docs/modules/stackablectl/partials/commands/completions.adoc b/docs/modules/stackablectl/partials/commands/completions.adoc index 603974e2..e660a79d 100644 --- a/docs/modules/stackablectl/partials/commands/completions.adoc +++ b/docs/modules/stackablectl/partials/commands/completions.adoc @@ -7,6 +7,7 @@ Usage: stackablectl completions [OPTIONS] Commands: bash Generate shell completions for Bash + elvish Generate shell completions for Elvish fish Generate shell completions for Fish nushell Generate shell completions for Nushell zsh Generate shell completions for ZSH diff --git a/extra/completions/_stackablectl b/extra/completions/_stackablectl index 72bfac9f..8397bb6c 100644 --- a/extra/completions/_stackablectl +++ b/extra/completions/_stackablectl @@ -939,6 +939,27 @@ _arguments "${_arguments_options[@]}" : \ '--version[Print version]' \ && ret=0 ;; +(elvish) +_arguments "${_arguments_options[@]}" : \ +'-l+[Log level this application uses]:LOG_LEVEL: ' \ +'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ +'--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ +'--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ +'--no-cache[Do not cache the remote (default) demo, stack and release files]' \ +'--offline[Do not request any remote files via the network]' \ +'-h[Print help (see more with '\''--help'\'')]' \ +'--help[Print help (see more with '\''--help'\'')]' \ +'-V[Print version]' \ +'--version[Print version]' \ +&& ret=0 +;; (fish) _arguments "${_arguments_options[@]}" : \ '-l+[Log level this application uses]:LOG_LEVEL: ' \ @@ -1018,6 +1039,10 @@ _arguments "${_arguments_options[@]}" : \ _arguments "${_arguments_options[@]}" : \ && ret=0 ;; +(elvish) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; (fish) _arguments "${_arguments_options[@]}" : \ && ret=0 @@ -1351,6 +1376,10 @@ _arguments "${_arguments_options[@]}" : \ _arguments "${_arguments_options[@]}" : \ && ret=0 ;; +(elvish) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; (fish) _arguments "${_arguments_options[@]}" : \ && ret=0 @@ -1470,6 +1499,7 @@ _stackablectl__cache__list_commands() { _stackablectl__completions_commands() { local commands; commands=( 'bash:Generate shell completions for Bash' \ +'elvish:Generate shell completions for Elvish' \ 'fish:Generate shell completions for Fish' \ 'nushell:Generate shell completions for Nushell' \ 'zsh:Generate shell completions for ZSH' \ @@ -1482,6 +1512,11 @@ _stackablectl__completions__bash_commands() { local commands; commands=() _describe -t commands 'stackablectl completions bash commands' commands "$@" } +(( $+functions[_stackablectl__completions__elvish_commands] )) || +_stackablectl__completions__elvish_commands() { + local commands; commands=() + _describe -t commands 'stackablectl completions elvish commands' commands "$@" +} (( $+functions[_stackablectl__completions__fish_commands] )) || _stackablectl__completions__fish_commands() { local commands; commands=() @@ -1491,6 +1526,7 @@ _stackablectl__completions__fish_commands() { _stackablectl__completions__help_commands() { local commands; commands=( 'bash:Generate shell completions for Bash' \ +'elvish:Generate shell completions for Elvish' \ 'fish:Generate shell completions for Fish' \ 'nushell:Generate shell completions for Nushell' \ 'zsh:Generate shell completions for ZSH' \ @@ -1503,6 +1539,11 @@ _stackablectl__completions__help__bash_commands() { local commands; commands=() _describe -t commands 'stackablectl completions help bash commands' commands "$@" } +(( $+functions[_stackablectl__completions__help__elvish_commands] )) || +_stackablectl__completions__help__elvish_commands() { + local commands; commands=() + _describe -t commands 'stackablectl completions help elvish commands' commands "$@" +} (( $+functions[_stackablectl__completions__help__fish_commands] )) || _stackablectl__completions__help__fish_commands() { local commands; commands=() @@ -1630,6 +1671,7 @@ _stackablectl__help__cache__list_commands() { _stackablectl__help__completions_commands() { local commands; commands=( 'bash:Generate shell completions for Bash' \ +'elvish:Generate shell completions for Elvish' \ 'fish:Generate shell completions for Fish' \ 'nushell:Generate shell completions for Nushell' \ 'zsh:Generate shell completions for ZSH' \ @@ -1641,6 +1683,11 @@ _stackablectl__help__completions__bash_commands() { local commands; commands=() _describe -t commands 'stackablectl help completions bash commands' commands "$@" } +(( $+functions[_stackablectl__help__completions__elvish_commands] )) || +_stackablectl__help__completions__elvish_commands() { + local commands; commands=() + _describe -t commands 'stackablectl help completions elvish commands' commands "$@" +} (( $+functions[_stackablectl__help__completions__fish_commands] )) || _stackablectl__help__completions__fish_commands() { local commands; commands=() diff --git a/extra/completions/stackablectl.bash b/extra/completions/stackablectl.bash index af116af2..9b44a4da 100644 --- a/extra/completions/stackablectl.bash +++ b/extra/completions/stackablectl.bash @@ -60,6 +60,9 @@ _stackablectl() { stackablectl__completions,bash) cmd="stackablectl__completions__bash" ;; + stackablectl__completions,elvish) + cmd="stackablectl__completions__elvish" + ;; stackablectl__completions,fish) cmd="stackablectl__completions__fish" ;; @@ -75,6 +78,9 @@ _stackablectl() { stackablectl__completions__help,bash) cmd="stackablectl__completions__help__bash" ;; + stackablectl__completions__help,elvish) + cmd="stackablectl__completions__help__elvish" + ;; stackablectl__completions__help,fish) cmd="stackablectl__completions__help__fish" ;; @@ -147,6 +153,9 @@ _stackablectl() { stackablectl__help__completions,bash) cmd="stackablectl__help__completions__bash" ;; + stackablectl__help__completions,elvish) + cmd="stackablectl__help__completions__elvish" + ;; stackablectl__help__completions,fish) cmd="stackablectl__help__completions__fish" ;; @@ -874,7 +883,7 @@ _stackablectl() { return 0 ;; stackablectl__completions) - opts="-l -d -s -r -h -V --log-level --no-cache --offline --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --help --version bash fish nushell zsh help" + opts="-l -d -s -r -h -V --log-level --no-cache --offline --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --help --version bash elvish fish nushell zsh help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1121,6 +1130,130 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__completions__elvish) + opts="-l -d -s -r -h -V --log-level --no-cache --offline --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --help --version" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + --log-level) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -l) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --demo-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -d) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --stack-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -s) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --release-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -r) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__completions__fish) opts="-l -d -s -r -h -V --log-level --no-cache --offline --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then @@ -1246,7 +1379,7 @@ _stackablectl() { return 0 ;; stackablectl__completions__help) - opts="bash fish nushell zsh help" + opts="bash elvish fish nushell zsh help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1273,6 +1406,20 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__completions__help__elvish) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__completions__help__fish) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then @@ -2408,7 +2555,7 @@ _stackablectl() { return 0 ;; stackablectl__help__completions) - opts="bash fish nushell zsh" + opts="bash elvish fish nushell zsh" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2435,6 +2582,20 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__help__completions__elvish) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__help__completions__fish) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then diff --git a/extra/completions/stackablectl.elv b/extra/completions/stackablectl.elv new file mode 100644 index 00000000..ecc11445 --- /dev/null +++ b/extra/completions/stackablectl.elv @@ -0,0 +1,982 @@ + +use builtin; +use str; + +set edit:completion:arg-completer[stackablectl] = {|@words| + fn spaces {|n| + builtin:repeat $n ' ' | str:join '' + } + fn cand {|text desc| + edit:complex-candidate $text &display=$text' '(spaces (- 14 (wcswidth $text)))$desc + } + var command = 'stackablectl' + for word $words[1..-1] { + if (str:has-prefix $word '-') { + break + } + set command = $command';'$word + } + var completions = [ + &'stackablectl'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand operator 'Interact with single operator instead of the full platform' + cand release 'Interact with all operators of the platform which are released together' + cand stack 'Interact with stacks, which are ready-to-use product combinations' + cand stacklet 'Interact with deployed stacklets, which are bundles of resources and containers required to run the product' + cand demo 'Interact with demos, which are end-to-end usage demonstrations of the Stackable data platform' + cand completions 'Generate shell completions for this tool' + cand cache 'Interact with locally cached files' + cand experimental-debug 'EXPERIMENTAL: Launch a debug container for a Pod' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;operator'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand list 'List available operators' + cand describe 'Print out detailed operator information' + cand install 'Install one or more operators' + cand uninstall 'Uninstall one or more operators' + cand installed 'List installed operators' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;operator;list'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;operator;describe'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;operator;install'= { + cand --operator-namespace 'Namespace in the cluster used to deploy the operators' + cand --operator-ns 'Namespace in the cluster used to deploy the operators' + cand -c 'Type of local cluster to use for testing' + cand --cluster 'Type of local cluster to use for testing' + cand --cluster-name 'Name of the local cluster' + cand --cluster-nodes 'Number of total nodes in the local cluster' + cand --cluster-cp-nodes 'Number of control plane nodes in the local cluster' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;operator;uninstall'= { + cand --operator-namespace 'Namespace in the cluster used to deploy the operators' + cand --operator-ns 'Namespace in the cluster used to deploy the operators' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;operator;installed'= { + cand -o 'o' + cand --output 'output' + cand --operator-namespace 'Namespace in the cluster used to deploy the operators' + cand --operator-ns 'Namespace in the cluster used to deploy the operators' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;operator;help'= { + cand list 'List available operators' + cand describe 'Print out detailed operator information' + cand install 'Install one or more operators' + cand uninstall 'Uninstall one or more operators' + cand installed 'List installed operators' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;operator;help;list'= { + } + &'stackablectl;operator;help;describe'= { + } + &'stackablectl;operator;help;install'= { + } + &'stackablectl;operator;help;uninstall'= { + } + &'stackablectl;operator;help;installed'= { + } + &'stackablectl;operator;help;help'= { + } + &'stackablectl;release'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand list 'List available releases' + cand describe 'Print out detailed release information' + cand install 'Install a specific release' + cand uninstall 'Uninstall a release' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;release;list'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;release;describe'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;release;install'= { + cand -i 'Whitelist of product operators to install' + cand --include 'Whitelist of product operators to install' + cand -e 'Blacklist of product operators to install' + cand --exclude 'Blacklist of product operators to install' + cand --operator-namespace 'Namespace in the cluster used to deploy the operators' + cand --operator-ns 'Namespace in the cluster used to deploy the operators' + cand -c 'Type of local cluster to use for testing' + cand --cluster 'Type of local cluster to use for testing' + cand --cluster-name 'Name of the local cluster' + cand --cluster-nodes 'Number of total nodes in the local cluster' + cand --cluster-cp-nodes 'Number of control plane nodes in the local cluster' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;release;uninstall'= { + cand --operator-namespace 'Namespace in the cluster used to deploy the operators' + cand --operator-ns 'Namespace in the cluster used to deploy the operators' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;release;help'= { + cand list 'List available releases' + cand describe 'Print out detailed release information' + cand install 'Install a specific release' + cand uninstall 'Uninstall a release' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;release;help;list'= { + } + &'stackablectl;release;help;describe'= { + } + &'stackablectl;release;help;install'= { + } + &'stackablectl;release;help;uninstall'= { + } + &'stackablectl;release;help;help'= { + } + &'stackablectl;stack'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand list 'List available stacks' + cand describe 'Describe a specific stack' + cand install 'Install a specific stack' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;stack;list'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;stack;describe'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;stack;install'= { + cand --stack-parameters 'List of parameters to use when installing the stack' + cand --parameters 'List of parameters to use when installing the stack' + cand -c 'Type of local cluster to use for testing' + cand --cluster 'Type of local cluster to use for testing' + cand --cluster-name 'Name of the local cluster' + cand --cluster-nodes 'Number of total nodes in the local cluster' + cand --cluster-cp-nodes 'Number of control plane nodes in the local cluster' + cand --operator-namespace 'Namespace where the operators are deployed' + cand --operator-ns 'Namespace where the operators are deployed' + cand -n 'Namespace where the products (e.g. stacks or demos) are deployed' + cand --product-namespace 'Namespace where the products (e.g. stacks or demos) are deployed' + cand --product-ns 'Namespace where the products (e.g. stacks or demos) are deployed' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --skip-release 'Skip the installation of the release during the stack install process' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;stack;help'= { + cand list 'List available stacks' + cand describe 'Describe a specific stack' + cand install 'Install a specific stack' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;stack;help;list'= { + } + &'stackablectl;stack;help;describe'= { + } + &'stackablectl;stack;help;install'= { + } + &'stackablectl;stack;help;help'= { + } + &'stackablectl;stacklet'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand credentials 'Display credentials for a stacklet' + cand list 'List deployed stacklets' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;stacklet;credentials'= { + cand -n 'Namespace in the cluster used to deploy the products' + cand --product-namespace 'Namespace in the cluster used to deploy the products' + cand --product-ns 'Namespace in the cluster used to deploy the products' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;stacklet;list'= { + cand -o 'o' + cand --output 'output' + cand --operator-namespace 'Namespace where the operators are deployed' + cand --operator-ns 'Namespace where the operators are deployed' + cand -n 'Namespace where the products (e.g. stacks or demos) are deployed' + cand --product-namespace 'Namespace where the products (e.g. stacks or demos) are deployed' + cand --product-ns 'Namespace where the products (e.g. stacks or demos) are deployed' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;stacklet;help'= { + cand credentials 'Display credentials for a stacklet' + cand list 'List deployed stacklets' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;stacklet;help;credentials'= { + } + &'stackablectl;stacklet;help;list'= { + } + &'stackablectl;stacklet;help;help'= { + } + &'stackablectl;demo'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand list 'List available demos' + cand describe 'Print out detailed demo information' + cand install 'Install a specific demo' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;demo;list'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;demo;describe'= { + cand -o 'o' + cand --output 'output' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;demo;install'= { + cand --stack-parameters 'List of parameters to use when installing the stack' + cand --parameters 'List of parameters to use when installing the demo' + cand -c 'Type of local cluster to use for testing' + cand --cluster 'Type of local cluster to use for testing' + cand --cluster-name 'Name of the local cluster' + cand --cluster-nodes 'Number of total nodes in the local cluster' + cand --cluster-cp-nodes 'Number of control plane nodes in the local cluster' + cand --operator-namespace 'Namespace where the operators are deployed' + cand --operator-ns 'Namespace where the operators are deployed' + cand -n 'Namespace where the products (e.g. stacks or demos) are deployed' + cand --product-namespace 'Namespace where the products (e.g. stacks or demos) are deployed' + cand --product-ns 'Namespace where the products (e.g. stacks or demos) are deployed' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --skip-release 'Skip the installation of the release during the stack install process' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;demo;help'= { + cand list 'List available demos' + cand describe 'Print out detailed demo information' + cand install 'Install a specific demo' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;demo;help;list'= { + } + &'stackablectl;demo;help;describe'= { + } + &'stackablectl;demo;help;install'= { + } + &'stackablectl;demo;help;help'= { + } + &'stackablectl;completions'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand bash 'Generate shell completions for Bash' + cand elvish 'Generate shell completions for Elvish' + cand fish 'Generate shell completions for Fish' + cand nushell 'Generate shell completions for Nushell' + cand zsh 'Generate shell completions for ZSH' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;completions;bash'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;completions;elvish'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;completions;fish'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;completions;nushell'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;completions;zsh'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;completions;help'= { + cand bash 'Generate shell completions for Bash' + cand elvish 'Generate shell completions for Elvish' + cand fish 'Generate shell completions for Fish' + cand nushell 'Generate shell completions for Nushell' + cand zsh 'Generate shell completions for ZSH' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;completions;help;bash'= { + } + &'stackablectl;completions;help;elvish'= { + } + &'stackablectl;completions;help;fish'= { + } + &'stackablectl;completions;help;nushell'= { + } + &'stackablectl;completions;help;zsh'= { + } + &'stackablectl;completions;help;help'= { + } + &'stackablectl;cache'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + cand list 'List cached files' + cand clean 'Clean cached files' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;cache;list'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;cache;clean'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --old 'Only remove outdated files in the cache' + cand --outdated 'Only remove outdated files in the cache' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;cache;help'= { + cand list 'List cached files' + cand clean 'Clean cached files' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;cache;help;list'= { + } + &'stackablectl;cache;help;clean'= { + } + &'stackablectl;cache;help;help'= { + } + &'stackablectl;experimental-debug'= { + cand -n 'The namespace of the Pod being debugged' + cand --namespace 'The namespace of the Pod being debugged' + cand -c 'The target container to debug' + cand --container 'The target container to debug' + cand --image 'The debug container image' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand --offline 'Do not request any remote files via the network' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;help'= { + cand operator 'Interact with single operator instead of the full platform' + cand release 'Interact with all operators of the platform which are released together' + cand stack 'Interact with stacks, which are ready-to-use product combinations' + cand stacklet 'Interact with deployed stacklets, which are bundles of resources and containers required to run the product' + cand demo 'Interact with demos, which are end-to-end usage demonstrations of the Stackable data platform' + cand completions 'Generate shell completions for this tool' + cand cache 'Interact with locally cached files' + cand experimental-debug 'EXPERIMENTAL: Launch a debug container for a Pod' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;help;operator'= { + cand list 'List available operators' + cand describe 'Print out detailed operator information' + cand install 'Install one or more operators' + cand uninstall 'Uninstall one or more operators' + cand installed 'List installed operators' + } + &'stackablectl;help;operator;list'= { + } + &'stackablectl;help;operator;describe'= { + } + &'stackablectl;help;operator;install'= { + } + &'stackablectl;help;operator;uninstall'= { + } + &'stackablectl;help;operator;installed'= { + } + &'stackablectl;help;release'= { + cand list 'List available releases' + cand describe 'Print out detailed release information' + cand install 'Install a specific release' + cand uninstall 'Uninstall a release' + } + &'stackablectl;help;release;list'= { + } + &'stackablectl;help;release;describe'= { + } + &'stackablectl;help;release;install'= { + } + &'stackablectl;help;release;uninstall'= { + } + &'stackablectl;help;stack'= { + cand list 'List available stacks' + cand describe 'Describe a specific stack' + cand install 'Install a specific stack' + } + &'stackablectl;help;stack;list'= { + } + &'stackablectl;help;stack;describe'= { + } + &'stackablectl;help;stack;install'= { + } + &'stackablectl;help;stacklet'= { + cand credentials 'Display credentials for a stacklet' + cand list 'List deployed stacklets' + } + &'stackablectl;help;stacklet;credentials'= { + } + &'stackablectl;help;stacklet;list'= { + } + &'stackablectl;help;demo'= { + cand list 'List available demos' + cand describe 'Print out detailed demo information' + cand install 'Install a specific demo' + } + &'stackablectl;help;demo;list'= { + } + &'stackablectl;help;demo;describe'= { + } + &'stackablectl;help;demo;install'= { + } + &'stackablectl;help;completions'= { + cand bash 'Generate shell completions for Bash' + cand elvish 'Generate shell completions for Elvish' + cand fish 'Generate shell completions for Fish' + cand nushell 'Generate shell completions for Nushell' + cand zsh 'Generate shell completions for ZSH' + } + &'stackablectl;help;completions;bash'= { + } + &'stackablectl;help;completions;elvish'= { + } + &'stackablectl;help;completions;fish'= { + } + &'stackablectl;help;completions;nushell'= { + } + &'stackablectl;help;completions;zsh'= { + } + &'stackablectl;help;cache'= { + cand list 'List cached files' + cand clean 'Clean cached files' + } + &'stackablectl;help;cache;list'= { + } + &'stackablectl;help;cache;clean'= { + } + &'stackablectl;help;experimental-debug'= { + } + &'stackablectl;help;help'= { + } + ] + $completions[$command] +} diff --git a/extra/completions/stackablectl.fish b/extra/completions/stackablectl.fish index 6fa55ec9..c0887c8f 100644 --- a/extra/completions/stackablectl.fish +++ b/extra/completions/stackablectl.fish @@ -376,22 +376,23 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fi complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "describe" -d 'Print out detailed demo information' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "install" -d 'Install a specific demo' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -s l -l log-level -d 'Log level this application uses' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -l offline -d 'Do not request any remote files via the network' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -s h -l help -d 'Print help (see more with \'--help\')' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -f -a "bash" -d 'Generate shell completions for Bash' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -f -a "fish" -d 'Generate shell completions for Fish' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -f -a "nushell" -d 'Generate shell completions for Nushell' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -f -a "zsh" -d 'Generate shell completions for ZSH' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash fish nushell zsh help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l offline -d 'Do not request any remote files via the network' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -f -a "bash" -d 'Generate shell completions for Bash' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -f -a "elvish" -d 'Generate shell completions for Elvish' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -f -a "fish" -d 'Generate shell completions for Fish' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -f -a "nushell" -d 'Generate shell completions for Nushell' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -f -a "zsh" -d 'Generate shell completions for ZSH' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F @@ -403,6 +404,17 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l offline -d 'Do not request any remote files via the network' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l offline -d 'Do not request any remote files via the network' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F @@ -437,6 +449,7 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from help" -f -a "bash" -d 'Generate shell completions for Bash' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from help" -f -a "elvish" -d 'Generate shell completions for Elvish' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from help" -f -a "fish" -d 'Generate shell completions for Fish' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from help" -f -a "nushell" -d 'Generate shell completions for Nushell' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from help" -f -a "zsh" -d 'Generate shell completions for ZSH' @@ -522,6 +535,7 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fi complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from demo" -f -a "describe" -d 'Print out detailed demo information' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from demo" -f -a "install" -d 'Install a specific demo' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "bash" -d 'Generate shell completions for Bash' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "elvish" -d 'Generate shell completions for Elvish' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "fish" -d 'Generate shell completions for Fish' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "nushell" -d 'Generate shell completions for Nushell' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "zsh" -d 'Generate shell completions for ZSH' diff --git a/extra/completions/stackablectl.nu b/extra/completions/stackablectl.nu index 1c8015df..2c29c765 100644 --- a/extra/completions/stackablectl.nu +++ b/extra/completions/stackablectl.nu @@ -609,6 +609,21 @@ module completions { --version(-V) # Print version ] + # Generate shell completions for Elvish + export extern "stackablectl completions elvish" [ + --log-level(-l): string # Log level this application uses + --no-cache # Do not cache the remote (default) demo, stack and release files + --offline # Do not request any remote files via the network + --demo-file(-d): string # Provide one or more additional (custom) demo file(s) + --stack-file(-s): string # Provide one or more additional (custom) stack file(s) + --release-file(-r): string # Provide one or more additional (custom) release file(s) + --helm-repo-stable: string # Provide a custom Helm stable repository URL + --helm-repo-test: string # Provide a custom Helm test repository URL + --helm-repo-dev: string # Provide a custom Helm dev repository URL + --help(-h) # Print help (see more with '--help') + --version(-V) # Print version + ] + # Generate shell completions for Fish export extern "stackablectl completions fish" [ --log-level(-l): string # Log level this application uses @@ -662,6 +677,10 @@ module completions { export extern "stackablectl completions help bash" [ ] + # Generate shell completions for Elvish + export extern "stackablectl completions help elvish" [ + ] + # Generate shell completions for Fish export extern "stackablectl completions help fish" [ ] @@ -861,6 +880,10 @@ module completions { export extern "stackablectl help completions bash" [ ] + # Generate shell completions for Elvish + export extern "stackablectl help completions elvish" [ + ] + # Generate shell completions for Fish export extern "stackablectl help completions fish" [ ] diff --git a/rust/stackablectl/src/cmds/completions.rs b/rust/stackablectl/src/cmds/completions.rs index 39e3ee05..efee404d 100644 --- a/rust/stackablectl/src/cmds/completions.rs +++ b/rust/stackablectl/src/cmds/completions.rs @@ -1,7 +1,7 @@ use clap::{Args, CommandFactory, Subcommand}; use clap_complete::{ generate, Generator, - Shell::{Bash, Fish, Zsh}, + Shell::{Bash, Elvish, Fish, Zsh}, }; use clap_complete_nushell::Nushell; use snafu::{ResultExt, Snafu}; @@ -19,6 +19,9 @@ pub enum CompletionCommands { /// Generate shell completions for Bash Bash, + /// Generate shell completions for Elvish + Elvish, + /// Generate shell completions for Fish Fish, @@ -40,6 +43,7 @@ impl CompletionsArgs { match &self.subcommand { CompletionCommands::Bash => generate_completions(Bash), CompletionCommands::Fish => generate_completions(Fish), + CompletionCommands::Elvish => generate_completions(Elvish), CompletionCommands::Nushell => generate_completions(Nushell), CompletionCommands::Zsh => generate_completions(Zsh), } diff --git a/rust/xtask/src/completions.rs b/rust/xtask/src/completions.rs index 911d81cb..64f61317 100644 --- a/rust/xtask/src/completions.rs +++ b/rust/xtask/src/completions.rs @@ -3,7 +3,7 @@ use std::fs; use clap::CommandFactory; use clap_complete::{ generate as generate_comps, - Shell::{Bash, Fish, Zsh}, + Shell::{Bash, Elvish, Fish, Zsh}, }; use clap_complete_nushell::Nushell; use snafu::{ResultExt, Snafu}; @@ -25,6 +25,10 @@ pub fn generate() -> Result<(), GenCompError> { let mut f = fs::File::create("extra/completions/stackablectl.bash").context(IoSnafu)?; generate_comps(Bash, &mut cmd, name.clone(), &mut f); + // Elvish completions + let mut f = fs::File::create("extra/completions/stackablectl.elv").context(IoSnafu)?; + generate_comps(Elvish, &mut cmd, name.clone(), &mut f); + // Fish completions let mut f = fs::File::create("extra/completions/stackablectl.fish").context(IoSnafu)?; generate_comps(Fish, &mut cmd, name.clone(), &mut f);