mirror of
https://github.com/m-housh/dotfiles.git
synced 2026-02-14 06:12:34 +00:00
48 lines
1.3 KiB
Bash
Executable File
48 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
# A wrapper script to run swift-hpa in a docker container and
|
|
# mount the correct volumes, etc.
|
|
#
|
|
# Make sure to run 'hpa-init' first on this machine to setup
|
|
# dependencies, if you have not done so already.
|
|
#
|
|
# To attach to a shell inside the container run:
|
|
# `hpa bash`
|
|
#
|
|
# To run ansible vault commands inside the container run:
|
|
# `hpa ansible-vault ...`
|
|
#
|
|
|
|
SCRIPTS=${SCRIPTS:-$HOME/.local/scripts}
|
|
. "$SCRIPTS/utils/hpa/hpa.env"
|
|
|
|
############################## MAIN ##############################
|
|
|
|
# Don't pull images if they're prefixed with 'localhost'.
|
|
if echo "$HPA_DOCKER_IMAGE" | grep -vq "localhost"; then
|
|
|
|
# Check if we should pull the image prior to running.
|
|
last_pull="0"
|
|
if [[ -f "$HPA_CONFIG_DIR/.lastpull" ]]; then
|
|
last_pull=$(cat "$HPA_CONFIG_DIR/.lastpull")
|
|
fi
|
|
curr=$(date +%s)
|
|
diff=$((curr - last_pull))
|
|
|
|
if [[ $HPA_AUTO_PULL == "1" ]] && [[ $diff -gt "$HPA_AUTO_PULL_INTERVAL" ]]; then
|
|
. "$SCRIPTS/hpa-pull" "$HPA_AUTO_PULL_OPTS"
|
|
fi
|
|
fi
|
|
|
|
podman run --rm --interactive --tty \
|
|
--volume "$HPA_CONFIG_DIR":/root/.config/hpa:ro \
|
|
--volume "$HPA_DATA_DIR":/root/.local/share/hpa:ro \
|
|
--volume "$HPA_CONSULTS_DIR":/consults \
|
|
--volume "$PWD":/root/project \
|
|
--secret "$HPA_VAULT_SECRET_KEY" \
|
|
"$HPA_DOCKER_IMAGE:$HPA_DOCKER_TAG" "$@"
|