ci: replace only/except with rules
only/except keywords where deperecated in favor of rules.
Since we started using !1525 (merged) it introduced a second pipeline being run for each commit.
Detached pipelines are the only way to access CI_MERGE_REQUEST_* variables, and if we disable normal pipelines you will need to create wip/spam MRs in order to run the tests.
This reworked rules makes it so, the normal pipeline needs manual interaction to be started, and the detached/MR pipleines is always run.