poddoc/utils/pull
2024-01-11 19:56:36 +01:00

28 lines
1 KiB
Bash

#!/usr/bin/env bash
##
# description: pulls the specified docker-compose.yml from the defined git-repo
# usage: pullpod <pod-name>
##
function pullpod() {
if [[ ! "$(curl -A "poddoc/$PKGVER" -so /dev/null -w %{http_code} $(getValueByKey 'GIT_REPOSITORY')/${1})" =~ 2[0-9]{2} ]]; then
log e "$1 does not exist in remote repository"
exit 1
fi
if [[ ! -d "$(getValueByKey 'PODMAN_DIRECTORY')/${1}" ]]; then
git clone "$(getValueByKey 'GIT_REPOSITORY')/${1}.git" "$(getValueByKey 'PODMAN_DIRECTORY')/${1}"
if [[ $(getLocalConfValue "$(getValueByKey 'PODMAN_DIRECTORY')/${1}" 'container.hasEnvVars' ) == true ]]; then
for i in $(getLocalConfValue "$(getValueByKey 'PODMAN_DIRECTORY')/${1}" 'container.envVars[]'); do
read -p "Please enter a value for '$i': " $(echo $i)
export $(echo $i)
sed -i "s/\b$(echo $i):\b/$(echo $i): $(printenv | grep $i | cut -d= -f2)/g" "$(getValueByKey 'PODMAN_DIRECTORY')/${1}/docker-compose.yml"
done
fi
exit 0
fi
cd "$(getValueByKey 'PODMAN_DIRECTORY')/${1}"
git pull
}