Re: [Cloud-init-dev] [Merge] ~raharper/cloud-init:feature/bash-completion into cloud-init:master
Review: Approve continuous-integration PASSED: Continuous integration, rev:5b61b9a441937066de0e2395e13ab43c36194a95 https://jenkins.ubuntu.com/server/job/cloud-init-ci/1008/ Executed test runs: SUCCESS: Checkout SUCCESS: Unit & Style Tests SUCCESS: Ubuntu LTS: Build SUCCESS: Ubuntu LTS: Integration SUCCESS: MAAS Compatability Testing IN_PROGRESS: Declarative: Post Actions Click here to trigger a rebuild: https://jenkins.ubuntu.com/server/job/cloud-init-ci/1008/rebuild -- https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/343122 Your team cloud-init commiters is requested to review the proposed merge of ~raharper/cloud-init:feature/bash-completion into cloud-init:master. ___ Mailing list: https://launchpad.net/~cloud-init-dev Post to : cloud-init-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~cloud-init-dev More help : https://help.launchpad.net/ListHelp
Re: [Cloud-init-dev] [Merge] ~raharper/cloud-init:feature/bash-completion into cloud-init:master
Review: Needs Fixing continuous-integration FAILED: Continuous integration, rev:20d67dad40fdb4aeec9a4b890f5857d5a3617e86 https://jenkins.ubuntu.com/server/job/cloud-init-ci/1003/ Executed test runs: SUCCESS: Checkout SUCCESS: Unit & Style Tests SUCCESS: Ubuntu LTS: Build SUCCESS: Ubuntu LTS: Integration FAILED: MAAS Compatability Testing Click here to trigger a rebuild: https://jenkins.ubuntu.com/server/job/cloud-init-ci/1003/rebuild -- https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/343122 Your team cloud-init commiters is requested to review the proposed merge of ~raharper/cloud-init:feature/bash-completion into cloud-init:master. ___ Mailing list: https://launchpad.net/~cloud-init-dev Post to : cloud-init-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~cloud-init-dev More help : https://help.launchpad.net/ListHelp
Re: [Cloud-init-dev] [Merge] ~raharper/cloud-init:feature/bash-completion into cloud-init:master
Review: Needs Fixing continuous-integration FAILED: Continuous integration, rev:65248ce0c7794666c97866c077564cc208ba5680 https://jenkins.ubuntu.com/server/job/cloud-init-ci/998/ Executed test runs: SUCCESS: Checkout FAILED: Unit & Style Tests Click here to trigger a rebuild: https://jenkins.ubuntu.com/server/job/cloud-init-ci/998/rebuild -- https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/343122 Your team cloud-init commiters is requested to review the proposed merge of ~raharper/cloud-init:feature/bash-completion into cloud-init:master. ___ Mailing list: https://launchpad.net/~cloud-init-dev Post to : cloud-init-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~cloud-init-dev More help : https://help.launchpad.net/ListHelp
Re: [Cloud-init-dev] [Merge] ~raharper/cloud-init:feature/bash-completion into cloud-init:master
Review: Needs Fixing continuous-integration FAILED: Continuous integration, rev:944ff442e01cbc0a32642ec49c47d131dde77359 https://jenkins.ubuntu.com/server/job/cloud-init-ci/996/ Executed test runs: SUCCESS: Checkout FAILED: Unit & Style Tests Click here to trigger a rebuild: https://jenkins.ubuntu.com/server/job/cloud-init-ci/996/rebuild -- https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/343122 Your team cloud-init commiters is requested to review the proposed merge of ~raharper/cloud-init:feature/bash-completion into cloud-init:master. ___ Mailing list: https://launchpad.net/~cloud-init-dev Post to : cloud-init-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~cloud-init-dev More help : https://help.launchpad.net/ListHelp
[Cloud-init-dev] [Merge] ~raharper/cloud-init:feature/bash-completion into cloud-init:master
Ryan Harper has proposed merging ~raharper/cloud-init:feature/bash-completion into cloud-init:master. Commit message: Implement bash completion script for cloud-init command line In bash shells with bash_completion enabled, now the cloud-init sub commands and parameters/flags will be shown. Requested reviews: cloud-init commiters (cloud-init-dev) For more details, see: https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/343122 -- Your team cloud-init commiters is requested to review the proposed merge of ~raharper/cloud-init:feature/bash-completion into cloud-init:master. diff --git a/bash_completion/cloud-init b/bash_completion/cloud-init new file mode 100644 index 000..ba8db2c --- /dev/null +++ b/bash_completion/cloud-init @@ -0,0 +1,79 @@ +# Copyright (C) 2018 Canonical Ltd. +# +# This file is part of cloud-init. See LICENSE file for license information. + +# bash completion for cloud-init cli +_cloudinit_complete() +{ + +local cur_word prev_word +cur_word="${COMP_WORDS[COMP_CWORD]}" +prev_word="${COMP_WORDS[COMP_CWORD-1]}" + +subcmds="analyze clean collect-logs devel dhclient-hook features init modules single status" +case ${COMP_CWORD} in +1) +COMPREPLY=($(compgen -W "--help $subcmds" -- $cur_word)) +;; +2) +case ${prev_word} in +analyze) +COMPREPLY=($(compgen -W "--help blame dump show" -- $cur_word)) +;; +clean) +COMPREPLY=($(compgen -W "--help --logs --reboot --seed" -- $cur_word)) +;; +collect-logs) +COMPREPLY=($(compgen -W "--help --tarfile --include-userdata" -- $cur_word)) +;; +devel) +COMPREPLY=($(compgen -W "--help schema" -- $cur_word)) +;; +dhclient-hook) +COMPREPLY=($(compgen -W "--help " -- $cur_word)) +;; +features) +COMPREPLY=($(compgen -W "--help" -- $cur_word)) +;; +init) +COMPREPLY=($(compgen -W "--help --local" -- $cur_word)) +;; +modules) +COMPREPLY=($(compgen -W "--help --mode" -- $cur_word)) +;; + +single) +COMPREPLY=($(compgen -W "--help --name --frequency --report " -- $cur_word)) +;; +status) +COMPREPLY=($(compgen -W "--help --long --wait" -- $cur_word)) +;; +esac +;; +3) +case ${prev_word} in +blame|dump) +COMPREPLY=($(compgen -W "--help --infile --outfile" -- $cur_word)) +;; +--mode) +COMPREPLY=($(compgen -W "--help init config final" -- $cur_word)) +;; +--frequency) +COMPREPLY=($(compgen -W "--help instance always once" -- $cur_word)) +;; +schema) +COMPREPLY=($(compgen -W "--help --config-file --doc --annotate" -- $cur_word)) +;; +show) +COMPREPLY=($(compgen -W "--help --format --infile --outfile" -- $cur_word)) +;; +esac +;; +*) +COMPREPLY=() +;; +esac +} +complete -F _cloudinit_complete cloud-init + +# vi: syntax=bash expandtab diff --git a/setup.py b/setup.py index bc3f52a..85b2337 100755 --- a/setup.py +++ b/setup.py @@ -228,6 +228,7 @@ if not in_virtualenv(): INITSYS_ROOTS[k] = "/" + INITSYS_ROOTS[k] data_files = [ +(ETC + '/bash_completion.d', ['bash_completion/cloud-init']), (ETC + '/cloud', [render_tmpl("config/cloud.cfg.tmpl")]), (ETC + '/cloud/cloud.cfg.d', glob('config/cloud.cfg.d/*')), (ETC + '/cloud/templates', glob('templates/*')), ___ Mailing list: https://launchpad.net/~cloud-init-dev Post to : cloud-init-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~cloud-init-dev More help : https://help.launchpad.net/ListHelp