=various edits and improvments
This commit is contained in:
parent
71e8da7289
commit
f38f61cc6d
6 changed files with 230 additions and 191 deletions
|
@ -11,6 +11,8 @@ alias sz-edshrc="ed ~/.sz.shrc.d ; exec $SHELL"
|
|||
|
||||
[[ -z "$(env inkscape 2> /dev/null)" && -n "$(flatpak info org.inkscape.Inkscape 2> /dev/null)" ]] && alias inkscape="flatpak run org.inkscape.Inkscape "
|
||||
|
||||
alias cdgit='cd $(git rev-parse --show-toplevel) '
|
||||
|
||||
function clip() {
|
||||
xclip -i -sel clipboard
|
||||
}
|
||||
|
|
|
@ -1,127 +0,0 @@
|
|||
TERRAFORM_BIN=$(which-command terraform | head -1)
|
||||
if [[ -x $TERRAFORM_BIN ]]; then
|
||||
function tfcontext() {
|
||||
[[ -n $(find $PWD -name '*.tf') ]] || return -1
|
||||
[[ -d _logs ]] || mkdir _logs
|
||||
TF_VAR_FILE_NAME=${TF_VAR_FILE_CLI-:$(basename $PWD).tfvars}
|
||||
[[ -r $TF_VAR_FILE_NAME ]] || unset TF_VAR_FILE_NAME
|
||||
TF_VAR_FILE_CLI=${TF_VAR_FILE_CLI-:-var-file='$TF_VAR_FILE_NAME'}
|
||||
|
||||
basename $PWD
|
||||
}
|
||||
|
||||
function _tf_sedFullStop() {
|
||||
sed --unbuffered '/^===FULLSTOP===$/q' | sed --unbuffered '/^===FULLSTOP===$/d'
|
||||
}
|
||||
|
||||
function less-tf() {
|
||||
local _TF_LOG_FILE=${1-_logs/0_0_lastrun.log}
|
||||
[[ "$1" == "-" ]] && _TF_LOG_FILE='_logs/0_0_lastrun.log'
|
||||
[[ -z "$SZ_DEBUG" ]] || echo "lessts: ${@} | LESS_NO_WAIT = '${LESS_NO_WAIT}'"
|
||||
[[ "$1" == "-" ]] && {
|
||||
[[ -z "$SZ_DEBUG" ]] || echo "tailing..."
|
||||
trap : INT;
|
||||
tail -f $_TF_LOG_FILE | _tf_sedFullStop;
|
||||
} \
|
||||
|| { [[ -z "${LESS_NO_WAIT}" ]] \
|
||||
&& {
|
||||
[[ -z "$SZ_DEBUG" ]] || echo "Invoking less..."
|
||||
less \
|
||||
--no-init \
|
||||
--raw-control-chars \
|
||||
--line-numbers \
|
||||
--quiet \
|
||||
--hilite-unread \
|
||||
--incsearch \
|
||||
--ignore-case \
|
||||
--force \
|
||||
"${@:2}" -- \
|
||||
"$_TF_LOG_FILE"
|
||||
#\
|
||||
#'+G?([^\w\W][\[0-9m+])Plan:' \
|
||||
#'+3k'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function _tfSetLogTS() {
|
||||
export TF_LOG_TS=$(date -d "today" +"%Y%m%d%H%M%S")
|
||||
}
|
||||
|
||||
function tf() {
|
||||
[[ -z "$TF_LOG_TS" ]] && _tfSetLogTS
|
||||
local NAME=$1
|
||||
[[ "${@}" =~ "-destroy" ]] && NAME="$1-destroy"
|
||||
|
||||
echo "===_logs/0_$NAME.log===" > _logs/0_0_lastrun.log
|
||||
echo "===_logs/${TF_LOG_TS}_$NAME.log===" \
|
||||
| tee --append _logs/0_0_lastrun.log \
|
||||
> _logs/0_$NAME.log
|
||||
[[ -z "$SZ_DEBUG" ]] || echo "Executing: terraform ${@}"
|
||||
{
|
||||
terraform "${@}" 2>&1 \
|
||||
| tee _logs/${TF_LOG_TS}_$NAME.log \
|
||||
| awk 'BEGIN {p=1}; /<<\W*EOT/ {print; p=0}; /^\W*EOT/ {p=1}; p; fflush();' \
|
||||
| tee --append _logs/0_0_lastrun.log \
|
||||
>> _logs/0_$NAME.log
|
||||
|
||||
echo "===FULLSTOP===" >> _logs/0_0_lastrun.log
|
||||
} &
|
||||
|
||||
less-tf -
|
||||
}
|
||||
|
||||
function tf0() {
|
||||
_tfSetLogTS
|
||||
[ $# -eq 0 ] && return
|
||||
tf "$@"
|
||||
}
|
||||
|
||||
function tf-plan() {
|
||||
[[ -z "$SZ_DEBUG" ]] || echo "DEBUG: tfplan ${@}"
|
||||
local _TF_TARGET=""
|
||||
[[ ${#TF_TARGET} -gt 0 ]] && _TF_TARGET="$(printf -- '--target=%s ' ${TF_TARGET[@]})"
|
||||
[[ "${@}" =~ "-destroy" ]] && [[ ${#TF_DESTROY_TARGET} -gt 0 ]] && _TF_TARGET="$(printf -- '--target=%s ' ${TF_DESTROY_TARGET[@]})"
|
||||
|
||||
tf plan ${_TF_TARGET} "${@}"
|
||||
}
|
||||
|
||||
alias 'tf0-plan'='_tfSetLogTS; tf-plan '
|
||||
|
||||
function get-tf-env() {
|
||||
local PATTERN="${1-}"
|
||||
compgen -v | grep "^TF_${PATTERN}"
|
||||
}
|
||||
|
||||
function clear-tf-env() {
|
||||
local PATTERN="${1}"
|
||||
local TOCLEAR=$(get-tf-env "${PATTERN}")
|
||||
[[ -z "$TOCLEAR" ]] && {
|
||||
echo "Could not find environment variables matching: $(echo "^TF_${PATTERN}")"
|
||||
} || {
|
||||
unset $TOCLEAR
|
||||
echo "Cleared the following vars: $(echo "$TOCLEAR" | xargs echo)"
|
||||
}
|
||||
}
|
||||
|
||||
function get-tf-env-plan() {
|
||||
set | grep '^TF\(_\(VAR_[a-z]\)\|\([A-Z_]*TARGET=\)\)' | grep '\b='
|
||||
}
|
||||
|
||||
function clear-tf-env-vars() {
|
||||
clear-tf-env 'VAR_[a-z]'
|
||||
}
|
||||
|
||||
function clear-tf-env-targets() {
|
||||
clear-tf-env '[A-Z_]*TARGET$'
|
||||
}
|
||||
|
||||
alias tf-plan-destroy='tf0-plan --destroy '
|
||||
alias tf-apply='tf apply '
|
||||
|
||||
alias tfp='tf-plan '
|
||||
alias tfpd='tf-plan-destroy '
|
||||
alias tfa='tf-apply '
|
||||
|
||||
fi
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue