Não, isso não é possível. Isso vai contra a idéia de por que esse método existe, porque e se você adicionar um repositório / projeto git que precisa de um arquivo yml completamente diferente?
O que você poderia fazer (como mencionou) é ter um script executado, que é baixado durante o processo de execução .gitlab-ci.yml
. Algo parecido com isto:
stages:
- prep
- run
get_script:
stage: prep
script:
- wget http://my_local_script.lan/run_suite.sh -O /tmp/run_suite.sh
run_script:
stage: run
script:
- bash /tmp/run_suite.sh
Defina isso como o script para cada projeto e, em seguida, tudo o que você precisa fazer é atualizar o run_suite.sh uma vez e todos os novos projetos o usarão.
Eu não acho que haja uma maneira melhor do que isso, eu tenho medo.