guile-gi
guile-gi copied to clipboard
A better CI/CD solution
The current CI/CD solution is passable, but, it has some weaknesses
- The
docsdirectory problem referenced in #52 - It only tests one environment
- The actual CD part of CI/CD is being neglected. The tarball isn't being published anywhere.
Beyond those problems, it would be cool to have a CI/CD solution that delivered a complete test image with Guile, guile-gi, the Gtk libraries, and emacs
- In a container (Docker or Podman)
- In a bootable VM for one of the BSDs
- In a bootable VM beginning with the Guix qcow2 image.
As far as distribution is concerned, my opinion is, that tarballs should be sufficient. We're a library, not an operating system like Guix or Emacs. The docker container, that we currently is more of a crutch to deal with Travis than anything else.
I agree with you on the main points, though, but to be honest, I don't know enough CI/CD systems to have any valuable opinion on them.
I don't directly have any experience with it, but I think porting our CI/CD to Github Actions might solve all of these problems. For the docs directory problem, there is the Github Pages action. They can be configured to test more than one Docker container (I believe), and they probably have deploy actions as well.
I have been playing with Actions a bit. It has a somewhat annoying property of hiding some error messages, but, it would be a path forward.
Do they have a way of getting full raw logs somehow? Or are those "full" logs already incomplete?
I think most of this issue is now resolved, the only thing still missing is #52 and some of the more exotic build options, no?
I think the Github Actions is capable enough. As you say, #52 and the less common builds. Also to update the bulid passing flair.