Generate matrix builds dynamically

I have to build multiple (different) binaries from the same source code repository. They get built using different environment settings.

The problem is that the process is very dynamic. So what I would like to do is to have dynamic matrix builds. The information about the binaries to built is stored in a microservice that could be called at the start of each run.

I’m thinking about a script that calls an API and then uses the response of that call to create the different environment settings for all my matrix builds.

How would I create such a setup, if possible at all?

Dynamic configuration are possible using plugins, for example, we have a reference implementation of a configuration plugin that converts jsonnet to yaml: https://github.com/drone/drone-jsonnet-config

You can learn more about configuration plugins here:

Unfortunately this is a new and undocumented feature so you should expect do some digging / reverse engineering to get something working. Sorry about that.