Support for boolean OR runner tags specification in .gitlab-ci.yml

Description

Currently, all runner tags are AND'ed together. I would like to have support for OR'ing them too.

The reason is that we are building our tool for different targets, RHEL5 and RHEL6. So we need runners on both OSes, tagged with the appropriate rhel5 and rhel6 names. However, we also have some parts of the pipeline that are not OS-specific (e.g. linting), and we could use either type of runner.

The only way to do this currently is to define yet another label, which is more than we need 😄

Proposal

Additional syntax in the YAML file could look something like:

job:
  tags:
    - rhel5|rhel6
    - other_tag

Essentially, all tags on the same line are OR'ed, tags on different lines are AND'ed: (rhel5 OR rhel6) AND other_tag.

Links / references