Update 13.05.2022
This commit is contained in:
@@ -16,12 +16,22 @@ unset completion_file
|
||||
# Generally, #
|
||||
# - `!` means --force --no-wait -y #
|
||||
# - `ds` suffix means --destroy-storage #
|
||||
# - `jsh` prefix means juju show-* #
|
||||
# ---------------------------------------------------------- #
|
||||
alias j="juju"
|
||||
alias jam="juju add-model --config logging-config=\"<root>=WARNING; unit=DEBUG\"\
|
||||
--config update-status-hook-interval=\"60m\""
|
||||
alias jb='juju bootstrap'
|
||||
alias jbng='juju bootstrap --no-gui'
|
||||
alias jbl='juju bootstrap localhost'
|
||||
alias jblng='juju bootstrap --no-gui localhost'
|
||||
alias jbm='juju bootstrap microk8s'
|
||||
alias jbmng='juju bootstrap --no-gui microk8s'
|
||||
alias jc='juju config'
|
||||
alias jcld='juju clouds'
|
||||
alias jclda='juju clouds --all'
|
||||
alias jctl='juju controllers'
|
||||
alias jctlr='juju controllers --refresh'
|
||||
alias jdc='juju destroy-controller --destroy-all-models'
|
||||
alias 'jdc!'='juju destroy-controller --destroy-all-models --force --no-wait -y'
|
||||
alias jdcds='juju destroy-controller --destroy-all-models --destroy-storage'
|
||||
@@ -56,13 +66,16 @@ alias jrp='juju refresh --path'
|
||||
alias jrs='juju remove-storage'
|
||||
alias 'jrs!'='juju remove-storage --force'
|
||||
alias jsa='juju scale-application'
|
||||
alias jsh='juju ssh'
|
||||
alias jshc='juju ssh --container'
|
||||
alias jsha='juju show-application'
|
||||
alias jshc='juju show-controller'
|
||||
alias jshm='juju show-model'
|
||||
alias jssl='juju show-status-log'
|
||||
alias jshsl='juju show-status-log'
|
||||
alias jshu='juju show-unit'
|
||||
alias jssh='juju ssh'
|
||||
alias jsshc='juju ssh --container'
|
||||
alias jstj='juju status --format=json'
|
||||
alias jst='juju status --relations --storage --color'
|
||||
alias jsu='juju show-unit'
|
||||
alias jst='juju status --relations --color'
|
||||
alias jsts='juju status --relations --storage --color'
|
||||
alias jsw='juju switch'
|
||||
|
||||
# ---------------------------------------------------------- #
|
||||
@@ -95,6 +108,37 @@ jaddr() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Destroy all controllers
|
||||
jclean() {
|
||||
if (( ! ${+commands[jq]} )); then
|
||||
echo "jq is required but could not be found." >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
local controllers=$(juju controllers --format=json | jq -r '.controllers | keys[]' 2>/dev/null)
|
||||
if [[ -z "$controllers" ]]; then
|
||||
echo "No controllers registered"
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo "This will forcefully destroy all storages, models and controllers."
|
||||
echo "Controllers to be destroyed:"
|
||||
echo "$controllers"
|
||||
|
||||
if ! read -q '?Are you sure (y/n)? '; then
|
||||
echo
|
||||
echo "Aborted."
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo
|
||||
for controller in ${=controllers}; do
|
||||
timeout 2m juju destroy-controller --destroy-all-models --destroy-storage --force --no-wait -y $controller
|
||||
timeout 2m juju kill-controller -y -t 0 $controller 2>/dev/null
|
||||
timeout 10s juju unregister $controller 2>/dev/null
|
||||
done
|
||||
}
|
||||
|
||||
# Display app and unit relation data
|
||||
jreld() {
|
||||
# $1 = relation name
|
||||
@@ -123,5 +167,6 @@ jreld() {
|
||||
wjst() {
|
||||
local interval="${1:-5}"
|
||||
shift $(( $# > 0 ))
|
||||
watch -n "$interval" --color juju status --relations --storage --color "$@"
|
||||
watch -n "$interval" --color juju status --relations --color "$@"
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user