I was able to achieve this in GitLab with a CI/CD Component and an CI/CD inputs Array type.
Pipeline: bethomas/pipeline-experiments
Files:
.gitlab-ci.yml
:include:
- component: $CI_SERVER_FQDN/$CI_PROJECT_PATH/helloworld@$CI_COMMIT_SHA
inputs:
names: ["John", "Jane"]
templates/helloworld.yml
:spec:
inputs:
names:
description: Collection of names
type: array
default: []
---
component-job:
script: echo $NAME
parallel:
matrix:
- NAME: $[[ inputs.names ]]