#!/bin/sh VERSION=0.9.1 ARCH=amd64 BIN="matchbox" FILENAME="matchbox-v${VERSION}-linux-${ARCH}.tar.gz" URL="https://github.com/poseidon/matchbox/releases/download/v${VERSION}/${FILENAME}" MATCHBOX_DIR="/var/lib/matchbox" ASSETS_DIR="${MATCHBOX_DIR}/assets/" MATCHBOX_USER="matchbox" FL_VERSIONS="current 3374.2.0" echo "Downloading matchbox" cd /tmp wget -q --show-progress "${URL}" tar -xzvf "${FILENAME}" cd ./matchbox-v${VERSION}-linux-${ARCH} echo "Installing matchbox" cp ${BIN} /usr/local/bin echo "Installing get-flatcar" cp ./scripts/get-flatcar /usr/local/bin chmod +x /usr/local/bin/get-flatcar useradd -U "${MATCHBOX_USER}" mkdir -p "${ASSETS_DIR}" chown -R "${MATCHBOX_USER}:${MATCHBOX_USER}" "${MATCHBOX_DIR}" chown -R "${MATCHBOX_USER}:${MATCHBOX_USER}" "${ASSETS_DIR}" tout=30 item=1 echo "Provisionning matchbox with flatcar images" echo " * Current stable image (try 1)" for version in ${FL_VERSIONS}; do while ! bash -x /usr/local/bin/get-flatcar stable ${version} ${ASSETS_DIR}; do sleep 1 echo " * ${version} stable image (try ${item})" if [ "${tout}" -eq "${item}" ]; then break exit 1 fi item=$((item+1)) done done echo " * 3374.2.0 stable image (try 1)" get-flatcar stable 3374.2.0 "${ASSETS_DIR}" if [ "${?}" -ne 0 ]; then sleep 3 echo " * 3374.2.0 stable image (try 2)" get-flatcar stable 3374.2.0 "${ASSETS_DIR}" fi chown -R "${MATCHBOX_USER}:${MATCHBOX_USER}" "${ASSETS_DIR}" ls -lhaR ${ASSETS_DIR} cp -rp ./scripts/tls /root exit "${?}"