1
1
mirror of https://github.com/kanaka/mal.git synced 2024-10-27 06:40:14 +03:00
Commit Graph

14 Commits

Author SHA1 Message Date
Joel Martin
12cb3fca2b GHA, ci.sh: dump debug log in separate step.
- In ci.sh just print the path to the debug log file on errors.
- In GHA workflow, dump the debug log in a separate final step if there
  were errors. This will make it more usable for tracking down errors.
2024-08-22 14:59:33 -05:00
Joel Martin
8ac470f1bf ci.sh: for push, check repo and correct branch
Also, remove extra '}' character in built step summary.
2024-08-06 09:20:41 -05:00
Joel Martin
e4a92b1c1c ci.sh: use BUILD_IMPL for image to build/run. 2024-08-05 17:02:38 -05:00
Joel Martin
d4f6b1e6dd ci.sh: restore tr lower-casing to fix macos. 2024-08-03 11:15:55 -05:00
Joel Martin
dd16a7d023 ci.sh: remove pulled step summary.
This should be the default if things are working correctly so logging
this now is just noise that causes the summaries that are relevant to
get folded in the UI.
2024-08-03 11:08:32 -05:00
Joel Martin
fe218df3d2 GHA,ci.sh: add step summaries for docker actions.
Add docker build-push summary statements for the workflow if the
GITHUB_STEP_SUMMARY variable is set.
2024-08-02 11:10:46 -05:00
Joel Martin
8f8608a989 ci.sh/GHA: Add docker-build-push step/action
A major maintainability issue for years has been that the CI assumes
that a docker image for the implementation exists in Docker's registry
(named kanaka/mal-test-IMPL). This means the upstream maintainers have
to be involved in the PR loop to build the implementation Dockerfile,
push to the docker registry and then have the PR submitter re-run CI.

To address this, in ci.sh, the docker-build-push action will try to pull
the image and then continue as normal. If the pull fails then it will
build the image and push it (if the build is running in the context of
the upstream repo's main branch) and then continue.

Also, this switches to using ghcr.io as the default repo for images
which will make image transfer more local (during CI) and hopefully
a fair bit faster (and avoid potential docker pull limits).

Add a steps to the GHA main workflow that do a docker login to ghcr.io
and then call `ci.sh docker-build-push ${IMPL}`.
2024-08-02 11:10:06 -05:00
Joel Martin
78d6dabcaf Makefile,ci.sh: use versioned images
Get a voom style git hash of the impl Dockerfile and use that as the
testing docker image version (rather than blank which implies "latest").
2024-08-01 12:49:51 -05:00
Joel Martin
9b5e56e93c ci.sh: include MAL_IMPL in log prefix if set. 2021-07-11 19:08:14 -05:00
Joel Martin
8faee3c26a ci.sh: re-order output to make log parsing easier. 2021-04-25 18:48:01 -05:00
Joel Martin
21b103f692 ci.sh: log all output to prefixed log.
Log file name: ./ACTION[-regress]-IMPL[-MODE].log

Also debug file name is same format but with ".debug" instead of
".log" suffix.
2021-04-23 17:03:09 -05:00
Joel Martin
69238ec858 ci.sh: prefix log/debug files with impl name. 2021-04-23 16:13:12 -05:00
Joel Martin
085cc2f026 github/ci.sh: enable and archive log/debug output 2021-04-23 14:31:31 -05:00
Joel Martin
021d107db7 Refactor Github Actions/Travis CI
- Dynamically generate a strategy matrix based on the list of changed
  files in this push/pull_request. If the changed files are restricted
  to implementations then only generate a matrix with those
  implementations. If the changes are to tests or other
  non-documentation files (runtest.py, IMPLS.yml, .github/*, etc) then
  run the full set. The matrix generation is done in get-ci-matrix.py.
- Split the implementation list for Github Actions out into a separate
  yaml file IMPLS.yml
- Reduce the travis file to just the OS X / XCode related builds that
  aren't supported on Github Actions.
- Rename the .travis_test.sh script to ci.sh since it is the general
  CI script used for both Travis CI and Github Actions.
2021-04-21 13:36:54 -05:00