GitHub CI workflow: Add testing of optional packages
mkoeppe opened this issue · 47 comments
We add a new GitHub Actions CI workflow tox-optional.yml, which tests most optional packages, using the maximal packages factor.
Depends on #29417
Depends on #29424
Depends on #29426
Depends on #29501
Depends on #29508
Depends on #29510
Depends on #29403
CC: @dimpase @kliem @orlitzky @jhpalmieri
Component: porting
Keywords: ContinuousIntegration
Author: Matthias Koeppe
Branch/Commit: 816477a
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/29341
Changed keywords from none to ContinuousIntegration
Tests at https://github.com/mkoeppe/sage/actions/runs/56355410
polymake- fails on many platforms (#28423)e-antic- fails on ubuntu-eoan-standard (#27952)lrslib- fails on archlinux-latest-standard (#29185)
Last 10 new commits:
14f2967 | Actually use libcrypt-devel |
68314dc | Merge branch 't/29106/ticket-29106' into t/29295/29106+ci |
b263ac3 | Run ci-cygwin.yml also on pull request |
8972699 | Merge branch 't/29295/29106+ci' into t/29087/CI-gh-actions-tox-configure-build |
8802016 | test 'make build' and ptest |
16f979d | build/bin/write-dockerfile.sh: Before adding src, make TARGETS_PRE; afterwards, make TARGETS. |
5b7d9a5 | Also store test logs in the artifact |
d1eb116 | tox.ini: Move homebrew environment settings to script .homebrew-build-env |
967b49d | Merge branch 't/29104/tox-homebrew' into t/29087/CI-gh-actions-tox-configure-build |
69737b0 | .github/workflows/tox.yml: Test some optional packages |
An obstacle when testing platforms with -maximal and IGNORE_MISSING_SYSTEM_PACKAGES=yes, for example docker-fedora-26-maximal (https://github.com/mkoeppe/sage/runs/589959336)
docker build gives
max depth exceeded
Basically, a sequence of too many RUN commands. Need to revise write-dockerfile
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
c08176e | Merge branch 't/29417/tox-ci-minor-fixes' into t/29403/ci_cygwin_yml__multi_stage_build |
cd1550e | build/bin/sage-logger [V=0]: Show build times of successful builds |
2c647fc | build/pkgs/*/spkg-check.in: Do not print misleading error messages: avoid sdh_make |
fc914f3 | Merge branch 't/29501/spkg_check_in__do_not_use_sdh_make_to_do__make_check_' into all-test-9.1.rc0 |
faf0ed6 | tox.ini: Another quoting fix |
b08b0b9 | Merge branch 't/29417/tox-ci-minor-fixes' into all-test-9.1.rc0 |
ebb07d1 | Optional/experimental packages: Remove order-only dependencies on all standard packages |
d1110b9 | Merge branch 't/29426/make_dependencies_of_optional_packages_more_detailed__no_longer_depend_on_all_standard_packages' into optional-test-9.1.rc0 |
dcfade3 | Set targets |
ee21154 | tox.yml: do not test on conda-forge-ubuntu and fedora-32; use maximal |
Branch pushed to git repo; I updated commit sha1. New commits:
aed3fb8 | src/doc/en/developer/portability_testing.rst: Explain how to read [GitHub](../wiki/GitHub) Actions page |
d39d627 | tox.yml [python3_xcode]: Install the package |
ba0c266 | fixup |
9060d23 | fixup |
bd3e826 | Merge branch 't/29417/tox-ci-minor-fixes' into t/29341/optional-test-9.1.rc0 |
df56ac8 | build/bin/write-dockerfile.sh [debian, fedora, slackware, arch]: Define EXISTS commands |
Branch pushed to git repo; I updated commit sha1. New commits:
3fce626 | fixup |
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
af1a4c7 | build/pkgs/pandoc: New script package |
a7f230b | build/pkgs/pandoc: Add distros/ |
fe346da | Merge branch 't/29508/add_system_package_lists_for_pandoc__prereq_of_rst2ipynb_' into t/29341/optional-test-9.1.rc0 |
67256c2 | Use 'failures', not 'error' when reporting testsuite failures |
2b68119 | Merge branch 't/29501/spkg_check_in__do_not_use_sdh_make_to_do__make_check_' into t/29341/optional-test-9.1.rc0 |
ab0120e | build/pkgs/slackware*.txt: Move pkg-config, gettext-tools from bootstrap to prereq, add gettext dependency libcroco |
fafd554 | build/pkgs/libpng/distros/slackware.txt: New |
eb9f1c1 | build/pkgs/slackware.txt: Add libxml2 |
f7493d9 | build/pkgs/libgd/distros/slackware.txt: Add dependencies |
288d760 | Merge branch 't/29424/slackware__system_packages_fix' into t/29341/optional-test-9.1.rc0 |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
251ab47 | trac 29492: remove outdated boilerplate from spkg-install.in, |
1383a59 | Merge branch 'u/jhpalmieri/remove-boilerplate' of git://trac.sagemath.org/sage into t/29510/spkg_check_in__remove_messages_that_duplicate_sage_spkg_s_messages |
2533a67 | build/pkgs/*/spkg-check.in: Remove messages that duplicate sage-spkg messages |
9b213a4 | build/bin/sage-spkg: Add message when test suite passed |
ca36a87 | build/pkgs/*/spkg-check.in: Do not print misleading error messages: avoid sdh_make |
c53ddc7 | Use 'failures', not 'error' when reporting testsuite failures |
6140a99 | Merge branch 't/29501/spkg_check_in__do_not_use_sdh_make_to_do__make_check_' into t/29341/optional-test-9.1.rc0 |
5fe6538 | Merge branch 't/29424/slackware__system_packages_fix' into t/29341/optional-test-9.1.rc0 |
Description changed:
---
+++
@@ -1 +1,2 @@
+We add a new [GitHub](../wiki/GitHub) Actions CI workflow `tox-optional.yml`, which tests most optional packages, using the `maximal` packages factor.
Branch pushed to git repo; I updated commit sha1. New commits:
84edb00 | .github/workflows/tox-optional.yml: Rename |
Tests running at https://github.com/mkoeppe/sage/actions/runs/81669565
Author: Matthias Koeppe
Branch pushed to git repo; I updated commit sha1. New commits:
7b3446f | .github/workflows/tox-optional.yml: Test packages factor 'maximal' |
Branch pushed to git repo; I updated commit sha1. New commits:
1dda317 | Add cmake to packages not tested |
On Fedora, this breaks installation of python3 because yum info python3 does not work even though yum install python3 works
Branch pushed to git repo; I updated commit sha1. New commits:
bd8a2f9 | build/bin/write-dockerfile.sh [fedora]: Use 'yum install -y --download-only' for checking existence of packages |
Branch pushed to git repo; I updated commit sha1. New commits:
807c2bd | Fix spelling of --downloadonly |
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
fc61002 | ci-cygwin.yml: Package up SAGE_LOCAL/var/tmp/sage/build to avoid error with actions/upload-artifact |
59ec460 | ./configure --enable-experimental-packages --enable-download-from-upstream-url |
c9cf3cc | Merge branch 't/29392/__configure___enable_experimental_packages___enable_download_from_upstream_url' into t/29403/ci_cygwin_yml__multi_stage_build |
037f508 | tox.yml: Pass CONFIGURE_ARGS: --enable-experimental-packages --enable-download-from-upstream-url |
998f02d | ci-cygwin.yml: Fixup for: Package up SAGE_LOCAL/var/tmp/sage/build |
d6bf4b1 | ci-cygwin.yml: Install standard system packages also for 'stndard-python2' |
2779e24 | ci-cygwin.yml: Another fixup for: Package up SAGE_LOCAL/var/tmp/sage/build |
27ddea3 | build/bin/sage-logger: Back out an experimental change |
bd687c9 | Merge branch 't/29403/ci_cygwin_yml__multi_stage_build' into t/29341/optional-test-9.1.rc0 |
784abe8 | ci-cygwin.yml: SAGE_FAT_BINARY=yes |
Branch pushed to git repo; I updated commit sha1. New commits:
eeadb9d | .github/workflows/ci-cygwin.yml: Test more optional packages |
Branch pushed to git repo; I updated commit sha1. New commits:
316c5f6 | Fixup |
Reviewer: Dima Pasechnik
OK, this appears to work, by and large. Surely there are various platforms/packages combos not working, but this is another story.
Thanks!
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
816477a | Merge tag '9.1.rc1' into t/29341/optional-test-9.1.rc0 |
Merged in new rc
Changed branch from u/mkoeppe/github_ci_workflow__add_testing_of_optional_packages to 816477a