Commandline Usage

To display distgen help, you can always run dg -h or dg --help. A detailed explanation of commandline arguments follows:

  • --projectdir PROJECTDIR - path to directory with project (defaults to current working directory)
  • --distro DIST - use distribution metadata specified by DIST yaml file
  • --multispec MULTISPEC - use MULTISPEC yaml file to fill the TEMPLATE file
  • --multispec-selector MULTISPEC_SELECTOR - selectors for the multispec file
    • a selector must be present for each multispec group except distroinfo
    • selectors must be used in form of <group>=<selector-name>
  • --spec SPEC - use SPEC yaml file to fill the TEMPLATE
  • --output OUTPUT - write result to OUTPUT file instead of stdout; note, that permissions of the created file respect current umask value
  • --macros-from PROJECTDIR - load variables from PROJECTDIR
  • --container CONTAINER_TYPE - container type, e.g. docker
  • --macro MACRO - define distgen’s macro
  • --max-passes PASSES - maximum number of spec expansion passes, defaults to 32
  • --template TEMPLATE - use TEMPLATE file, e.g. docker.tpl or a template string, e.g. {{ config.docker.from }}
  • --multispec-combinations print available multispec combinations

Note that --template and --multispec-combinations options are mutually exclusive; exactly one of them must be used on every invocation.