Skip to content
Snippets Groups Projects
Commit 0d246b1c authored by Thomas Woerner's avatar Thomas Woerner
Browse files

infra/image/build.sh: Fail if deployment failed or podman is missing

If the deployment was enabled and failed, the script still continued
without failing. If podman was missing it failed without a proper error.

The script now fails and does not enable the services and also does not
commit after the failed deployment. Also is fails if podman is missing.
parent 785681f1
No related branches found
No related tags found
No related merge requests found
......@@ -56,6 +56,8 @@ distro=${1:-}
[ -f "${BASEDIR}/dockerfile/${distro}" ] \
|| die "${distro} is not a valid distro target.\nUse one of: $(valid_distro)"
[ -n "$(command -v "podman")" ] || die "podman is required."
if [ "${deploy_server}" == "Y" ]
then
[ -n "$(command -v "ansible-playbook")" ] || die "ansible-playbook is required to install FreeIPA."
......@@ -109,23 +111,32 @@ echo
if [ "${deploy_server}" == "Y" ]
then
deployed=false
log info "= Starting ${name} ="
[ "${container_state}" == "running" ] || podman start "${name}"
echo
log info "= Deploying IPA ="
ansible-playbook -i "${inventory_file}" "${deploy_playbook}"
if ansible-playbook -i "${inventory_file}" "${deploy_playbook}"
then
deployed=true
fi
echo
log info "= Enabling additional services ="
podman exec "${name}" systemctl enable fixnet
podman exec "${name}" systemctl enable fixipaip
echo
if $deployed; then
log info "= Enabling additional services ="
podman exec "${name}" systemctl enable fixnet
podman exec "${name}" systemctl enable fixipaip
echo
fi
log info "= Stopping container ${name} ="
podman stop "${name}"
echo
$deployed || die "Deployment failed"
log info "= Committing \"${quayname}:${server_tag}\" ="
podman commit "${name}" "${quayname}:${server_tag}"
echo
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment