29 lines
626 B
Bash
Executable File
29 lines
626 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Strict mode
|
|
set -euo pipefail
|
|
IFS=$'\n\t'
|
|
|
|
if [[ $# -eq 0 ]] || [[ $1 == "--help" ]]; then
|
|
echo "Usage: $(basename $0) FILE VARIABLE"
|
|
echo
|
|
echo "Decrypts ansible-vault encrypted inline variable VARIABLE from FILE."
|
|
echo
|
|
echo "Example: $(basename $0) roles/common/defaults.main.yml user_root_password"
|
|
|
|
exit 1
|
|
elif [[ $# -lt 2 ]]; then
|
|
echo "Error: Missing arguments." >&2
|
|
exit 1
|
|
fi
|
|
|
|
VAR_FILE=$1
|
|
VAR_NAME=$2
|
|
|
|
if [[ ! -f $VAR_FILE ]]; then
|
|
echo "Error: Variable file '$VAR_FILE' does not exist!" >&2
|
|
exit 1
|
|
fi
|
|
|
|
ansible localhost -m debug -a "var=$VAR_NAME" -e "@$VAR_FILE"
|