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/master Changes: * 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@xxxxxxxxx/ Æ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@xxxxxxxxx> @@ 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@xxxxxxxxxxxxxxxxxxx/ + 2. https://lore.kernel.org/git/211123.86ilwjujmd.gmgdl@xxxxxxxxxxxxxxxxxxx/ + Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> ## .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