62 lines
1.5 KiB
Bash
62 lines
1.5 KiB
Bash
#!/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"
|
|
|
|
apk add wget
|
|
|
|
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 "${?}" |