vino/tools/deployment/configure-airship.sh
siraj.yasin d15fddf8d0 Pin a specific version of airshipctl to vino
* with master branch there are more chances that any recent change to airshipctl
  might break vino.
* Tagging a specific stable release of airshipctl as dependent repo to vino

Change-Id: I052af6345e955689a34d932ba80bf1d226ef2e6a
2021-05-28 15:47:45 +00:00

41 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -xe
: ${MANIFEST_DIR:="${HOME}/vino-manifests"}
: ${VINO_REPO_URL:="/${HOME}/airship/vino"}
AIRSHIPCTL_RELEASE=${AIRSHIPCTL_RELEASE:-"v2.0.0"}
mkdir -p "${MANIFEST_DIR}"
# Workaround for testing against local changes with vino
if [ -d "${VINO_REPO_URL}" ]; then
VINO_REPO_URL=$(realpath "${VINO_REPO_URL}")
cp -r "${VINO_REPO_URL}" "${MANIFEST_DIR}/"
fi
if [ ! -f "${HOME}/.airship/config" ]; then
airshipctl config init
fi
airshipctl config set-manifest default \
--target-path "${MANIFEST_DIR}" \
--repo primary \
--metadata-path config/phases/metadata.yaml \
--url ${VINO_REPO_URL}
airshipctl config set-manifest default \
--repo airshipctl \
--url https://opendev.org/airship/airshipctl.git \
--branch master
airshipctl document pull -n
# pinning airshipctl to a specific tag
# git checkout is manually done here as a workaround to checkout a specific version of airshipctl.
# `airshipctl document pull -n` does not respect branch/tag
# -n is required for vino while a specific tag is required for airshipctl
cd ${MANIFEST_DIR}/airshipctl
git checkout ${AIRSHIPCTL_RELEASE}