#!/bin/bash set -e TYPE=$1 HARD_RELEASE="2.x" HARD_RC="2.x-RC" DEV_URL="dev.boot.netboot.xyz" STAGING_URL="staging.boot.netboot.xyz" PROD_URL="boot.netboot.xyz" NBXYZ_OVERRIDES=production # Set boot domain if [[ "${TYPE}" == "dev" ]]; then BOOT_DOMAIN="s3.amazonaws.com/${DEV_URL}/${GITHUB_SHA}" BOOT_VERSION="${GITHUB_SHA}" elif [[ "${TYPE}" == "pr" ]]; then BOOT_DOMAIN="test.com" BOOT_VERSION="test" NBXYZ_OVERRIDES=default elif [[ "${TYPE}" == "rc" ]]; then BOOT_VERSION=$(cat version.txt)-RC BOOT_DOMAIN="${STAGING_URL}/${BOOT_VERSION}" elif [[ "${TYPE}" == "release" ]]; then BOOT_VERSION=$(cat version.txt) BOOT_DOMAIN="${PROD_URL}/${BOOT_VERSION}" elif [[ "${TYPE}" == "rolling" ]]; then HARD_RELEASE="2.x" PROD_URL="boot.netboot.xyz" fi # build release files if ! [[ "${TYPE}" == "rolling" ]]; then sed -i \ "/^# boot_version/c\boot_version: \"${BOOT_VERSION}\"" \ user_overrides.yml sed -i \ "/^# boot_domain/c\boot_domain: ${BOOT_DOMAIN}" \ user_overrides.yml # Build release docker build -t localbuild --build-arg NBXYZ_OVERRIDES=${NBXYZ_OVERRIDES} . docker run --rm -i -v $(pwd):/buildout localbuild # Generate folder outputs mkdir -p s3out mkdir -p s3outver cp -r buildout/* s3out/ cp buildout/version.ipxe s3outver/ mkdir -p githubout mv buildout/ipxe/* githubout/ cd buildout rm -Rf ipxe tar -czf menus.tar.gz * mv menus.tar.gz ../githubout cd .. if [[ "${TYPE}" == "dev" ]]; then cp githubout/menus.tar.gz s3out/ fi fi # Latest style endpoints for RC and Live if [[ "${TYPE}" == "release" ]] || [[ "${TYPE}" == "rolling" ]] || [[ "${TYPE}" == "rc" ]]; then rm -Rf buildout/ if [[ "${TYPE}" == "release" ]] || [[ "${TYPE}" == "rolling" ]]; then sed -i \ -e "/^boot_version/c\boot_version: \"${HARD_RELEASE}\"" \ -e "/^boot_domain/c\boot_domain: ${PROD_URL}" \ user_overrides.yml docker build -t localbuild --build-arg NBXYZ_OVERRIDES=${NBXYZ_OVERRIDES} . docker run --rm -i -v $(pwd):/buildout localbuild fi if [[ "${TYPE}" == "rc" ]]; then sed -i \ -e "/^boot_version/c\boot_version: \"${HARD_RC}\"" \ -e "/^boot_domain/c\boot_domain: ${STAGING_URL}/rc" \ user_overrides.yml docker build -t localbuild --build-arg NBXYZ_OVERRIDES=${NBXYZ_OVERRIDES} . docker run --rm -i -v $(pwd):/buildout localbuild fi mkdir -p s3out-latest cp -r buildout/* s3out-latest/ fi