ci: run CI on push instead of on merge
Using the hacky way it's implemented with, the pipeline is always run under one user, regardless of who did the MR/push. This has several disadvantages:
- the author does not get the email notification that the pipeline failed
- other pipelines of the user (me) on the shared runner are postponed until the preceding one finishes (and vice versa - if I am running a pipeline on some other project, this project's pipelines have to wait)
AFAIK it originated because of frequent pushes due to sharing code and testing on hathi. I propose the following:
- We can do the testing locally in docker. The runner script is attached and installing docker on debian/ubuntu is well documented.
- Or we can do the testing on gitlab. Just modify the .gitlab-ci.yml file and rewrite test_fast to test_debug. When opening a MR, mark the line with a TODO as not to forget to revert it before merging.
With the second point, I also propose to create a MR at the same time as the topic branch, marked as WIP. This will allow us to comment on the code immediately.
Any thoughts, everyone?