[PATCH v4 0/5] CI: Remove Travis CI, shorten names for GH tooltips, split jobs
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Nov 23, 2021, 16:29 UTC
- Message-ID
- <cover-v4-0.5-00000000000-20211123T134300Z-avarab@gmail.com>
- In-Reply-To
- <cover-v3-0.5-00000000000-20211120T115414Z-avarab@gmail.com>
A small update to the v3[1] of this series of CI UX improvements. A CI run can be seen at:
https://github.com/avar/git/runs/4299892497
And the improvement to tooltips by shortening them at (click on the CI status symbol next to the commit subject):
https://github.com/avar/git/tree/avar/ci-rm-travis-cleanup-ci-names-4
For comparison, the same for "master":
https://github.com/git/git/runs/4289544907
https://github.com/git/git/tree/masterChanges:
* In removing Travis support I omitted the removal of now-dead linux-gcc-4.8 supporting code. Remove it too.
* Clarify with a comment where new test targets in ci/run-build-and-tests.sh need to be added, to avoid a repeat of running new tests in the compilation-only "pedantic" job.
1. https://lore.kernel.org/git/cover-v3-0.5-00000000000-20211120T115414Z-avarab@gmail.com/
Ævar Arnfjörð Bjarmason (5): CI: remove Travis CI support CI: use shorter names that fit in UX tooltips CI: rename the "Linux32" job to lower-case "linux32" CI: use "$runs_on_pool", not "$jobname" to select packages & config CI: don't run "make test" twice in one job
.github/workflows/main.yml | 26 ++++++++++++-- .travis.yml | 60 ------------------------------- README.md | 2 +- ci/install-dependencies.sh | 35 ++++++++---------- ci/install-docker-dependencies.sh | 2 +- ci/lib.sh | 60 ++++++++----------------------- ci/print-test-failures.sh | 10 ------ ci/run-build-and-tests.sh | 27 +++++++------- ci/run-docker-build.sh | 11 +----- ci/run-docker.sh | 4 +-- 10 files changed, 72 insertions(+), 165 deletions(-) delete mode 100644 .travis.yml
Range-diff against v3:
1: 96433bcc02f ! 1: 6a4f1961cd2 CI: remove Travis CI support
@@ Commit message
into more general code. See 0f0c51181df (travis-ci: install packages
in 'ci/install-dependencies.sh', 2018-11-01).
+ Remove the "linux-gcc-4.8" job added in fb9d7431cf4 (travis-ci: build
+ with GCC 4.8 as well, 2019-07-18), it only ran in Travis CI.
+
1. https://travis-ci.org/github/git/git/builds
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
@@ ci/install-dependencies.sh: UBUNTU_COMMON_PKGS="make libssl-dev libcurl4-openssl
sudo apt-get -q update
sudo apt-get -q -y install language-pack-is libsvn-perl apache2 \
$UBUNTU_COMMON_PKGS
+@@ ci/install-dependencies.sh: Documentation)
+ test -n "$ALREADY_HAVE_ASCIIDOCTOR" ||
+ sudo gem install --version 1.5.8 asciidoctor
+ ;;
+-linux-gcc-default|linux-gcc-4.8)
++linux-gcc-default)
+ sudo apt-get -q update
+ sudo apt-get -q -y install $UBUNTU_COMMON_PKGS
+ ;;
## ci/lib.sh ##
@@ ci/lib.sh: save_good_tree () {
@@ ci/print-test-failures.sh: do
- echo " curl https://api.travis-ci.org/v3/job/$TRAVIS_JOB_ID/log.txt |./ci/util/extract-trash-dirs.sh"
-fi
+ ## ci/run-build-and-tests.sh ##
+@@ ci/run-build-and-tests.sh: linux-clang)
+ export GIT_TEST_DEFAULT_HASH=sha256
+ make test
+ ;;
+-linux-gcc-4.8|pedantic)
++pedantic)
+ # Don't run the tests; we only care about whether Git can be
+- # built with GCC 4.8 or with pedantic
++ # built.
+ ;;
+ *)
+ make test
+
## ci/run-docker-build.sh ##
@@ ci/run-docker-build.sh: else
else
2: b09cd076aeb = 2: 5d53b79347f CI: use shorter names that fit in UX tooltips
3: fb1b0ecbadd = 3: 37b97fc6c3a CI: rename the "Linux32" job to lower-case "linux32"
4: 54913e775c1 = 4: 614a99f7b64 CI: use "$runs_on_pool", not "$jobname" to select packages & config
5: 877f27d847c ! 5: ee2f9254fc7 CI: don't run "make test" twice in one job
@@ Commit message
the variables, and then override it to just "all" for the compile-only
tests.
+ Add a comment to clarify that new "test" targets should adjust
+ $MAKE_TARGETS rather than being added after the "case/esac". This
+ should avoid future confusion where e.g. the compilation-only
+ "pedantic" target will unexpectedly start running tests. See [1] and
+ [2].
+
+ 1. https://lore.kernel.org/git/211122.86ee78yxts.gmgdl@evledraar.gmail.com/
+ 2. https://lore.kernel.org/git/211123.86ilwjujmd.gmgdl@evledraar.gmail.com/
+
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
## .github/workflows/main.yml ##
@@ ci/run-build-and-tests.sh: linux-gcc)
export GIT_TEST_DEFAULT_HASH=sha256
- make test
;;
--linux-gcc-4.8|pedantic)
-- # Don't run the tests; we only care about whether Git can be
-- # built with GCC 4.8 or with pedantic
-+pedantic)
-+ export DEVOPTS=pedantic
-+ export MAKE_TARGETS=all
- ;;
+ pedantic)
+ # Don't run the tests; we only care about whether Git can be
+ # built.
+- ;;
-*)
- make test
-+linux-gcc-4.8)
++ export DEVOPTS=pedantic
+ export MAKE_TARGETS=all
;;
esac
++# Any new "test" targets should not go after this "make", but should
++# adjust $MAKE_TARGETS. Otherwise compilation-only targets above will
++# start running tests.
+make $MAKE_TARGETS
-+
check_unignored_build_artifacts
save_good_tree-- 2.34.0.830.gb9cdc59c8af