xref: /openbmc/openbmc-build-scripts/jenkins/build-seed (revision 6db439ee9370d1d09ae1f9fb14ad786ccbff292f)
1#!/bin/bash -xe
2#
3# Purpose:
4#  This script is responsible for building all CI machines to get a
5#  new CI systems sstate and download caches setup.
6#
7# This script assumes openbmc-build-scripts has been cloned into
8# the WORKSPACE directory.
9#
10# Required Inputs:
11#  WORKSPACE:      Directory to run the builds out of
12
13export LANG=en_US.UTF8
14
15cd "${WORKSPACE}"
16if [ -d openbmc ]; then
17    git -C openbmc fetch
18    git -C openbmc rebase
19else
20    git clone https://github.com/openbmc/openbmc.git
21fi
22
23# Ensure everything is built on same filesystem
24export build_dir="${WORKSPACE}/build"
25
26SEED_MACHINES=(
27    anacapa
28    bletchley
29    bletchley15
30    catalina
31    e3c246d4i
32    evb-npcm845
33    gb200nvl-obmc
34    gbs
35    harma
36    minerva
37    p10bmc
38    romulus
39    santabarbara
40    ventura
41    ventura2
42    witherspoon
43    yosemite4
44    yosemite5
45)
46
47for m in "${SEED_MACHINES[@]}"; do
48    echo "Seeding $m"
49    export target=$m
50    "${WORKSPACE}/openbmc-build-scripts/build-setup.sh" || \
51        echo "Build failed for $m; continuing."
52    rm -rf "${WORKSPACE}/openbmc/build"
53    rm -rf "${build_dir}"
54done
55