From patchwork Sun Mar 15 23:42:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 243664 List-Id: U-Boot discussion From: sjg at chromium.org (Simon Glass) Date: Sun, 15 Mar 2020 17:42:40 -0600 Subject: [PATCH v2 00/23] gitlab: Simplify the test script Message-ID: <20200315234303.18598-1-sjg@chromium.org> At present there are several things in the gitlab, travis and azure scripts which work around limitations in buildman. With a few small feature additions these can be removed. This series adds some new features to buildman and simplifies the script: - Option to run a single build in a specified output directory - Allow ignoring warnings - Removes a restriction on the build output directory It also - adds a way for test.py to use buildman for the --build option - makes one change to azure since the same approach should be possible there - fixes a few minor problems noticed in main and sandbox docs - removes the -a buildman flag which serves no purpose Note: I tested that this works OK on travis, gitlab and azure: https://travis-ci.org/github/sglass68/u-boot/builds/662740008 https://gitlab.denx.de/u-boot/custodians/u-boot-dm/pipelines/2435 https://dev.azure.com/simon0972/u-boot/_build/results?buildId=3&view=results There is something funny about azure - the test called "Run binman, buildman, dtoc and patman testsuites" fails the 'buildman -t' test but azure reports success. Changes in v2: - Add Fixes tag - Add a comment about the obscure bash feature - Add a new patch to avoid copying files into .bm-work/ - Add a new patch to drop the -a option - Add a new patch to split travis building into two parts - Add new patch to drop the repeated buildman call - Convert this into an option, leaving the default as is - Just drop the -E flag - Leave in the repeated call to buildman - Reword the commit message for clarity - Update azure also - Update travis, azure also Simon Glass (23): sandbox: Add documentation about required/useful packages main: Drop show_boot_progress() prototype buildman: Document the members of BuilderJob bulidman: Add support for a simple build buildman: Update help for -d buildman: Allow ignoring warnings in the return code buildman: Be more selective about which directories to remove buildman: Allow building within a subdir of the current dir buildman: Drop the -a option travis: Don't copy files into .bm-work/ travis: Split the building into two parts gitlab/azure: Use the -w option for sandbox_spl travis/gitlab/azure: Use --board buildman flag with test.py travis/gitlab/azure: Drop BUILDMAN variable with test.py travis/gitlab/azure: Drop the buildman -d flag gitlab/azure: Drop unnecessary if..fi when using test.py gitlab/azure: Use -w flag for all test.py builds travis/gitlab/azure: Use bash to avoid a_test_which_does_not_exist travis/gitlab/azure: Drop the -E flag travis/gitlab/azure: Enable test_handoff travis/gitlab/azure: Simplify the exit code for test.py travis/gitlab/azure: Drop repeated buildman call with test.py test/py: Allow using buildman to build U-Boot .azure-pipelines.yml | 54 ++++----------------- .gitlab-ci.yml | 85 ++++++++++----------------------- .travis.yml | 63 ++++++++---------------- common/main.c | 5 -- doc/arch/sandbox.rst | 10 ++++ test/py/README.md | 13 ++++- test/py/conftest.py | 30 ++++++++---- tools/buildman/README | 13 ++++- tools/buildman/builder.py | 51 +++++++++++++++----- tools/buildman/builderthread.py | 34 +++++++++---- tools/buildman/cmdline.py | 8 ++-- tools/buildman/control.py | 52 +++++++------------- tools/buildman/func_test.py | 46 +++++++++++++----- tools/buildman/test.py | 20 ++++++++ 14 files changed, 248 insertions(+), 236 deletions(-)