#!/usr/bin/env bash
-set -eux -o pipefail
+set -eEux -o pipefail
SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
source $LIBDIR/common.sh
NAMEPREFIX="capm3"
+ENABLE_DHCP="${IRONIC_ENABLE_DHCP:-yes}"
+
+trap err_exit ERR
+function err_exit {
+ kubectl get all -n ${NAMEPREFIX}-system
+}
# This may be used to update the in-place Ironic YAML files from the
# upstream project. We cannot use the upstream sources directly as
mkdir -p $(dirname ${dst})
envsubst <${src} >${dst}
done
+ sed -i -e '/name: quay.io\/metal3-io\/ironic/{n;s/newTag:.*/newTag: '"${BMO_VERSION}"'/;}' ${SCRIPTDIR}/icn/kustomization.yaml
}
function deploy {
fetch_image
- kustomize build ${SCRIPTDIR}/icn | kubectl apply -f -
+ local layer="${SCRIPTDIR}/icn"
+ if [[ ${ENABLE_DHCP} != "yes" ]]; then
+ layer="${SCRIPTDIR}/icn-no-dhcp"
+ fi
+ kustomize build ${layer} | kubectl apply -f -
kubectl wait --for=condition=Available --timeout=600s deployment/${NAMEPREFIX}-ironic -n ${NAMEPREFIX}-system
}