How do I create dynamic pipelines with multiple parameters (some optional) in github work flows?
I've been trialling gitlab to make dynamic pipelines based on changes in a mono repo but have hit a bug that makes that solution essentially unworkable so am looking to try github instead.
Basic workflow I had was:
- Compare merge request branch to target branch and identify all changed files.
- Identify which (visual studio) solutions need to be rebuilt based on dependencies of changed files.
- Identify whether the solution includes NUnit or GTest tests.
- Dynamically generate .yaml script containing jobs with build (and optional test instructions).
- Pass the dynamic script back to the CI such that it launches all the build[and optional test] jobs.
I can see there's matrices that could potentially pass the required solution path but:
- All the examples have very simple looking text strings or numbers - can you pass dictionaries of options that way?
- Is there a cleaner way to dynamically generate jobs with more than one parameter for a single job?