gitlab-ci: Overhaul job run policy
Use new rules: instead of only:. Stop treating LAVA jobs differently.
For container stage jobs:
-
In the main Mesa project, run them by default.
-
In merge requests, run them by default if any files affecting pipeline results are changed.
-
In all other cases (in particular branches in personal projects), don't run them by default but allow triggering them manually.
build & test stage jobs are left at the default (when: on_success), so they will run once all their dependencies are satisified.
In summary: No more need to deal with special branch names. Unnecessary job runs are avoided by default, but jobs which don't run by default can always be triggered manually.