Skip to main content

Version: 23.10

Build Form List

There may be occasions when multiple forms need to be built, but not the entire set within the project. For example, only a subset of forms may use a newly updated component, or perhaps only the Production versions of the set of forms should be built (with newer development versions being ignored).

Given that the Maestro Offline Build Tool is a command-based tool, this can be achieved through scripting. Nevertheless, the Build Form List command has been included as a convenience feature.

Build Form List uses a text file containing a list of form versions to be built. Different text files can be maintained for different build sets.

Synopsis

maestro build-form-list [ options ] CONFIG-FILE-PATH

Parameters

ParameterDescription
CONFIG-FILE-PATH(Required) Full path and filename to the text file containing the list of forms to be built.

Options

All options are optional unless otherwise indicated.

info

Both short and long options are shown in the table below. When specifying a command, use either a short option or long option but not both.

OptionDescription
-l
--library-search
Library Search Path
A comma-separated list of paths on the local filesystem to search for release and organization libraries. For more information, see Build Project Forms.
-t
--target-format
Target Format
The output format of the built forms.
Supported formats:
  • a: (Default) ZIP format form archive – one per form
  • f: FAR format form archive – one per form
  • e: Expanded FAR format – one folder created per form
To learn more about output formats, see Output formats.
-b
--brands
Brands
A comma-separated list of brand names to build. If the form uses a multi-branded template, specific brands can be built in a single invocation. Separate assets will be produced.
Enclose the value in quotes if any brand names have spaces in them.
-a
--all-brands
(Flag) All Brands
Build all brands (only applicable for forms using a multi-branded template). If this option is set, the Brands option is ignored.
-f
--force-overwrite
(Flag) Force Overwrite
Indicate that any existing contents in the output folder may be overwritten.
If not provided and the folder is not empty, an error is displayed.
--debug(Flag) Debug Mode
Build the form in un-minified mode for debugging.
Do not set this option for Production forms.

About the Configuration File

The configuration file is a simple text file containing a list of forms to be built - one entry per line in the file.

Each line specifies the full path to a folder that contains a form's form.json file. For SCM Projects, form.json is inside the folder with the form's normalised name, while for Standard Projects, it is inside a specific version folder. For example:

C:\dev\cli-demo\orgs\offline-build-demo\demo-project\forms\demo-form
C:\dev\cli-demo\orgs\another-org\my-project\forms\main-form\1.0.5
C:\dev\cli-demo\orgs\another-org\my-project\forms\main-form\2.0.0
C:\dev\cli-demo\orgs\another-org\my-project\forms\second-form\1.0.0-develop

Examples

  • Build all forms in the specified file, using the release and organization libraries that reside within the default locations for each form, and creating a zip file for each form (default).

    maestro build-form-list forms.txt
  • Build all forms in a specified file, outputting to a different specified folder.

    maestro build-form-list build-manifests\prod-build.txt -o C:\builds\production
  • Build all forms in the specified file, searching for release and organization libraries in another set of folders.

    maestro build-form-list forms.txt -l C:\releases\23.4.0,C:\libraries\org1
  • Build all forms in the specified file, creating a FAR file for each form.

    maestro build-form-list forms.txt -t f