Jobsets have now been added.
The What
This allows predefining sets of “jobs” (largely export) operations for kicad data from schematic and pcb.
The purpose is to allow automating final deliverables/packages which can involve different combinations of outputs. The purpose of independent jobset file is to be reusable as users may want to create output pipelines that they can apply across their projects for consistency. Pretty useful in corporate environments and similar to at least one competing commercial CAD software.
Jobset file
The jobset file itself is in a json format though there are no promises over the format structure, future KiCad versions should remain compatible with older jobset files:
Each job and outputs uses a key-value store for settings which can be expanded or shrunk in future versions.
Output Types
Currently two main “output” types are supported.
- Folders - Basic folder
- Archives - Only zip format for now but this is probably the most important one
Outputs can be made to contain all jobs, or contain a subset of jobs,
Multiple outputs can share the same jobs.
Jobs
Jobs themselves are what you already find as separate Plot/export options in KiCad and the CLI interface.
You may add them from a selectable list in the jobset editor
Each job, even if its the same type as another, has its own settings store, allowing you for example to export multiple SVGs with different settings.
Existing KiCad dialogs were leveraged for the configuration of each job to keep the experience similar.
CLI
The command line interface has also been extended to support running jobset files
kicad-cli jobset run --file <jobset_file_path> [--output <output_key>] <kicad_pro path>
And of course, you can start creating a jobset by accessing a new menu option in the KiCad launcher menubar
Due to late fixes, this is not functional in the “9.0.0-rc1” singular build but is in the nightlies.