#!/bin/bash -xe
#
# Purpose:
#  This script is responsible for building all CI machines to get a
#  new CI systems sstate and download caches setup.
#
# This script assumes openbmc-build-scripts has been cloned into
# the WORKSPACE directory.
#
# Required Inputs:
#  WORKSPACE:      Directory to run the builds out of

export LANG=en_US.UTF8

cd "${WORKSPACE}"
if [ -d openbmc ]; then
    git -C openbmc fetch
    git -C openbmc rebase
else
    git clone https://github.com/openbmc/openbmc.git
fi

# Ensure everything is built on same filesystem
export build_dir="${WORKSPACE}/build"

SEED_MACHINES=(
    gsj
    p10bmc
    palmetto
    romulus
    tiogapass
    witherspoon
    yosemitev2
    zaius
)

for m in "${SEED_MACHINES[@]}"; do
    echo "Seeding $m"
    export target=$m
    "${WORKSPACE}/openbmc-build-scripts/build-setup.sh" || \
        echo "Build failed for $m; continuing."
    rm -rf "${WORKSPACE}/openbmc/build"
    rm -rf "${build_dir}"
done
