mbox series

[v2,00/23] gitlab: Simplify the test script

Message ID 20200315234303.18598-1-sjg@chromium.org
Headers show
Series gitlab: Simplify the test script | expand

Message

Simon Glass March 15, 2020, 11:42 p.m. UTC
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(-)