Configuration Reference

The nmk-workspace plugin handles the configuration items listed in this page.

All of them are initiliazed with convenient default values, so that you don’t need to setup them for a default working behavior. You can anyway override them in your project if you need to fine tune the plugin behavior.

Subprojects listing

This configuration items are used to list current workspace project subprojects.

workspaceSubModules – raw submodules list

Type

Default value

list[str]

Generated by nmk_workspace.resolvers.SubProjectsResolver

This is the recursive list of all relative submodules folders.

Added in version 1.2.0

workspaceSubProjects – full subprojects list

Type

Default value

list[str]

Generated by nmk_workspace.resolvers.SubProjectsResolver

This is the recursive list of all founds relative nmk subprojects folders (i.e. all subfolders that both are a git submodule and contains a nmk.yml file).

Subprojects building

This configuration items are used to parameterize how workspace subprojects are built.

workspaceSubProjectsToBuildFirst – ordered list of subprojects to build first

Type

Default value

list[str]

[]

This list is used by the subprojects builder to identify which projects need to be built first, and in which order. Subprojects path are provided relatively to the workspace root.

Note

Projects in this list that are not referenced in ${workspaceSubProjectsToBuild} will be ignored.

Behavior changed in version 1.1.0

workspaceSubProjectsToBuild – list of subprojects to build

Type

Default value

list[str]

${workspaceSubProjects}

This list is used by the subprojects builder to identify all projects that need to be built. Projects in this list will be built after the ${workspaceSubProjectsToBuildFirst} ones, and before the ${workspaceSubProjectsToBuildAfter} ones. Subprojects path are provided relatively to the workspace root.

Note

Projects in this list that are also referenced in ${workspaceSubProjectsToBuildAfter} will be automatically ignored.

workspaceSubProjectsToBuildAfter – ordered list of subprojects to build after all the others

Type

Default value

list[str]

[]

This list is used by the subprojects builder to identify which projects need to be built after all the other ones, and in which order. Subprojects path are provided relatively to the workspace root.

Note

Projects in this list that are not referenced in ${workspaceSubProjectsToBuild} will be ignored.

Behavior changed in version 1.1.0

workspaceSubProjectsToExclude – list of subprojects patterns to be ignored

Type

Default value

list[str]

[]

When iterating over projects to be built, the subprojects builder will ignore ones matching with any of the patterns (fnmatch-style) provided in this list.

workspaceBuildExtraArgs – nmk command extra args for subprojects build

Type

Default value

str

“”

This string will be appended to the nmk command used to build subprojects. E.g. this can be usefull to ignore specific tasks.

workspaceBuildExtraArgsByStage – nmk command extra args for subprojects build

Type

Default value

str

“” for all commands

This string will be appended to the nmk command used to build subprojects, specifically for each metacommand defined by this plugin.

Added in version 1.1.0

workspaceBuildEnabled – meta-commands enablement for subprojects build

Type

Default value

dict[str, bool]

true for all commands

This dict allows to enable/disable different metacommands defined by this plugin.

workspaceBuildIgnoreFailures – failures ignore options for subprojects build

Type

Default value

dict[str, bool]

false for all commands, except for “tests”

This dict allows to tell builder to ignore any failures occurring when building a subproject.

workspaceDisableLocalTasks – local build disablement for subprojects build

Type

Default value

bool

${isLocalBuild}

This item disables all subprojects builds if the project is built locally (no effect in CI).

Added in version 1.2.0