Create a table linking predefined variables to pipeline types
It's hard to determine how rules will affect various pipeline types.
For example, we have 12 pipeline sources: https://gitlab.com/gitlab-org/gitlab/-/blob/60fcd51414b6b348ada67b45d9aee6f7fc798b51/app/models/ci/pipeline_enums.rb#L15-35. But those sources can match multiple types of pipelines. Both Tag pipelines and Branch pipelines have the push source, but Branch pipelines have CI_COMMIT_BRANCH exposed, and Tags do not. Merge Request, Merged Result (and merge train) pipelines have a pipeline source of merge_request_event, but only merged results pipelines have the CI_MERGE_REQUEST_SOURCE_BRANCH_SHA variable exposed.
We should create a "XO" table of pipelines and variables in the docs, to help people define their rules configs.
Edited by Marcel Amirault