From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko Schocher Date: Thu, 27 Oct 2016 08:13:19 +0200 Subject: [U-Boot] [PATCH 6/6] travis-ci: compile with buildman when running test/py In-Reply-To: <20161026170536.2367-6-swarren@wwwdotorg.org> References: <20161026170536.2367-1-swarren@wwwdotorg.org> <20161026170536.2367-6-swarren@wwwdotorg.org> Message-ID: <58119AFF.7060001@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Stephen, Am 26.10.2016 um 19:05 schrieb Stephen Warren: > From: Stephen Warren > > Use buildman to compile any U-Boot binary tested by test/py. This > re-uses all the work done elsewhere to make buildman work within > Travis-CI, in particular related to toolchain downloading and buildman > config file creation. > > Signed-off-by: Stephen Warren > --- > .travis.yml | 81 ++++++++++++++++++++++++++++++++++++++++--------------------- > 1 file changed, 54 insertions(+), 27 deletions(-) Thanks! Reviewed-by: Heiko Schocher bye, Heiko > > diff --git a/.travis.yml b/.travis.yml > index a537f0e34dd3..0faf03b11011 100644 > --- a/.travis.yml > +++ b/.travis.yml > @@ -69,6 +69,9 @@ before_script: > - if [[ "${TOOLCHAIN}" == *xtensa* ]]; then ./tools/buildman/buildman --fetch-arch xtensa ; fi > > script: > + # Comments must be outside the command strings below, or the Travis parser > + # will get confused. > + # > # Exit code 129 means warnings only. > - if [[ "${BUILDMAN}" != "" ]]; then > set +e; > @@ -78,6 +81,15 @@ script: > exit $ret; > fi; > fi > + # "not a_test_which_does_not_exist" is a dummy -k parameter which will > + # never prevent any test from running. That way, we can always pass > + # "-k something" even when $TEST_PY_TEST_SPEC doesnt need a custom > + # value. > + - if [[ "${TEST_PY_BD}" != "" ]]; then > + ./test/py/test.py --bd ${TEST_PY_BD} ${TEST_PY_ID} > + -k "${TEST_PY_TEST_SPEC:-not a_test_which_does_not_exist}" > + --build-dir `cd .. && pwd`/.bm-work/${TEST_PY_BD}; > + fi > > matrix: > include: > @@ -178,38 +190,53 @@ matrix: > - JOB="sloccount" > script: > - sloccount . > + > # test/py > - env: > - - JOB="test.py sandbox" > - script: > - - ./test/py/test.py --bd sandbox --build > + - TEST_PY_BD="sandbox" > + BUILDMAN="^sandbox$" > + TOOLCHAIN="x86_64" > - env: > - - JOB="test.py ARM" > - - CROSS_COMPILE="/usr/bin/arm-linux-gnueabihf-" > - script: > - - ./test/py/test.py --bd vexpress_ca15_tc2 --id qemu --build; > - ./test/py/test.py --bd vexpress_ca9x4 --id qemu --build; > - ./test/py/test.py --bd integratorcp_cm926ejs --id qemu --build; > + - TEST_PY_BD="vexpress_ca15_tc2" > + TEST_PY_ID="--id qemu" > + BUILDMAN="^vexpress_ca15_tc2$" > - env: > - - JOB="test.py MIPS" > - - TOOLCHAIN="mips" > - CROSS_COMPILE="${HOME}/.buildman-toolchains/gcc-4.9.0-nolibc/mips-linux/bin/mips-linux-" > - script: > - - ./test/py/test.py --bd qemu_mips --build -k 'not sleep'; > - ./test/py/test.py --bd qemu_mipsel --build -k 'not sleep'; > - ./test/py/test.py --bd qemu_mips64 --build -k 'not sleep'; > - ./test/py/test.py --bd qemu_mips64el --build -k 'not sleep'; > + - TEST_PY_BD="vexpress_ca9x4" > + TEST_PY_ID="--id qemu" > + BUILDMAN="^vexpress_ca9x4$" > - env: > - - JOB="test.py PowerPC" > - - CROSS_COMPILE="/usr/bin/powerpc-linux-gnu-" > - script: > - - ./test/py/test.py --bd qemu-ppce500 --build -k 'not sleep' > + - TEST_PY_BD="integratorcp_cm926ejs" > + TEST_PY_ID="--id qemu" > + BUILDMAN="^integratorcp_cm926ejs$" > - env: > - - JOB="test.py x86-64" > - - TOOLCHAIN="x86_64" > - BUILD_ROM=yes > - CROSS_COMPILE="${HOME}/.buildman-toolchains/gcc-4.9.0-nolibc/x86_64-linux/bin/x86_64-linux-" > - script: > - - ./test/py/test.py --bd qemu-x86 --build -k 'not sleep' > + - TEST_PY_BD="qemu_mips" > + TEST_PY_TEST_SPEC="not sleep" > + BUILDMAN="^qemu_mips$" > + TOOLCHAIN="mips" > + - env: > + - TEST_PY_BD="qemu_mipsel" > + TEST_PY_TEST_SPEC="not sleep" > + BUILDMAN="^qemu_mipsel$" > + TOOLCHAIN="mips" > + - env: > + - TEST_PY_BD="qemu_mips64" > + TEST_PY_TEST_SPEC="not sleep" > + BUILDMAN="^qemu_mips64$" > + TOOLCHAIN="mips" > + - env: > + - TEST_PY_BD="qemu_mips64el" > + TEST_PY_TEST_SPEC="not sleep" > + BUILDMAN="^qemu_mips64el$" > + TOOLCHAIN="mips" > + - env: > + - TEST_PY_BD="qemu-ppce500" > + TEST_PY_TEST_SPEC="not sleep" > + BUILDMAN="^qemu-ppce500$" > + - env: > + - TEST_PY_BD="qemu-x76" > + TEST_PY_TEST_SPEC="not sleep" > + BUILDMAN="^qemu-x86$" > + TOOLCHAIN="x86_64" > + BUILD_ROM="yes" > > # TODO make it perfect ;-r > -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany