xref: /openbmc/openbmc-build-scripts/jenkins/build-seed (revision 4ce45656f5894a4ae5c048e0753a04b5ab10cae2)
1d51439ffSAndrew Geissler#!/bin/bash -xe
2d51439ffSAndrew Geissler#
3d51439ffSAndrew Geissler# Purpose:
4d51439ffSAndrew Geissler#  This script is responsible for building all CI machines to get a
5d51439ffSAndrew Geissler#  new CI systems sstate and download caches setup.
6d51439ffSAndrew Geissler#
7d51439ffSAndrew Geissler# This script assumes openbmc-build-scripts has been cloned into
8d51439ffSAndrew Geissler# the WORKSPACE directory.
9d51439ffSAndrew Geissler#
10d51439ffSAndrew Geissler# Required Inputs:
11d51439ffSAndrew Geissler#  WORKSPACE:      Directory to run the builds out of
12d51439ffSAndrew Geissler
13d51439ffSAndrew Geisslerexport LANG=en_US.UTF8
14d51439ffSAndrew Geissler
15e000d5ddSPatrick Williamscd "${WORKSPACE}"
160775972cSPatrick Williamsif [ -d openbmc ]; then
170775972cSPatrick Williams    git -C openbmc fetch
180775972cSPatrick Williams    git -C openbmc rebase
190775972cSPatrick Williamselse
20d51439ffSAndrew Geissler    git clone https://github.com/openbmc/openbmc.git
210775972cSPatrick Williamsfi
22d51439ffSAndrew Geissler
23d51439ffSAndrew Geissler# Ensure everything is built on same filesystem
24e000d5ddSPatrick Williamsexport build_dir="${WORKSPACE}/build"
25d51439ffSAndrew Geissler
26247ae50aSPatrick WilliamsSEED_MACHINES=(
275b2f4ab5SAndrew Geissler    bletchley
2812837fcaSPatrick Williams    catalina
295b2f4ab5SAndrew Geissler    e3c246d4i
307abdc41fSAndrew Geissler    evb-npcm845
31*4ce45656SAndrew Geissler    gb200nvl-obmc
3201370f2eSAndrew Geissler    gbs
3322c33755SPatrick Williams    harma
3404fde22eSPatrick Williams    minerva
3517c69edaSAdriana Kobylak    p10bmc
36247ae50aSPatrick Williams    romulus
3712837fcaSPatrick Williams    ventura
38247ae50aSPatrick Williams    witherspoon
39260e85deSPatrick Williams    yosemite4
40247ae50aSPatrick Williams)
41247ae50aSPatrick Williams
42e000d5ddSPatrick Williamsfor m in "${SEED_MACHINES[@]}"; do
43e000d5ddSPatrick Williams    echo "Seeding $m"
44e000d5ddSPatrick Williams    export target=$m
456c420e74SPatrick Williams    "${WORKSPACE}/openbmc-build-scripts/build-setup.sh" || \
466c420e74SPatrick Williams        echo "Build failed for $m; continuing."
47e000d5ddSPatrick Williams    rm -rf "${WORKSPACE}/openbmc/build"
48124607f2SPatrick Williams    rm -rf "${build_dir}"
49e000d5ddSPatrick Williamsdone
50