#!/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}"
git clone https://github.com/openbmc/openbmc.git

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

SEED_MACHINES=(
    gsj
    palmetto
    rainier
    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"
done
