File generators are invoked by actions to create new files, using options provided by the action, and handing the resulting file back to the action for further use. In this way, tasks can make choices about what files to generate, and what to do with the results.
Accepts its own set of file generators, returning a ZIP archive of the results
File generator objects, like action objects, are plain JSON objects each having a single key, and a single value. The object key specifies which file generator is to be invoked; the object value contains the options used for that generator.
In practice, file generator objects are given as values in a larger JSON object, in which filenames are mapped to file generators.
The plaintext file generator is invoked implicitly by supplying a string, instead of supplying the usual file generator object.
In the following example, a Files action is defined, mapping filenames ("invoice.pdf", "external.jpg", and plain.txt) to file generators (a PDF generator, a URL generator, and – implicitly – a plaintext generator). Note how the file generator invocation varies, based on the specific file generator in play.