They now have configuration includes and cross project pipeline triggers, which is part of what GP seems to be looking for.
Personally I’ve found that for my past and present use cases generating any needed step (e.g test matrix) e.g with a script is much more flexible, predictable, and reproducible since the generated result can be versioned.
I also successfully used various custom runners including baremetal Windows ones and virtualised macOS ones inside VirtualBox.
They have an integrated Docker registry as well!