Tasks

The nmk-workspace plugin defines the tasks described below.

Setup tasks

All tasks in this chapter are dependencies of the base setup task.

workspace.setup – subprojects setup

This task iterates on specified subprojects, and call their own setup task.

Property

Value/description

builder

nmk_workspace.builders.SubProjectsBuilder

if

${workspaceBuildEnabled.setup}

unless

${workspaceDisableLocalTasks}

Added in version 1.2.0

root

${PROJECTDIR}

to_build_first

${workspaceSubProjectsToBuildFirst}

to_build

${workspaceSubProjectsToBuild}

to_build_after

${workspaceSubProjectsToBuildAfter}

excluded

${workspaceSubProjectsToExclude}

args

setup ${workspaceBuildExtraArgs}

ignore_failures

${workspaceBuildIgnoreFailures.setup}

Build tasks

All tasks in this chapter are dependencies of the base build task.

workspace.build – subprojects build

This task iterates on specified subprojects, and call their own build task.

Property

Value/description

builder

nmk_workspace.builders.SubProjectsBuilder

if

${workspaceBuildEnabled.build}

unless

${workspaceDisableLocalTasks}

Added in version 1.2.0

root

${PROJECTDIR}

to_build_first

${workspaceSubProjectsToBuildFirst}

to_build

${workspaceSubProjectsToBuild}

to_build_after

${workspaceSubProjectsToBuildAfter}

excluded

${workspaceSubProjectsToExclude}

args

build ${workspaceBuildExtraArgs}

ignore_failures

${workspaceBuildIgnoreFailures.build}

Tests tasks

All tasks in this chapter are dependencies of the base tests task.

workspace.tests – subprojects tests

This task iterates on specified subprojects, and call their own tests task.

Property

Value/description

builder

nmk_workspace.builders.SubProjectsBuilder

if

${workspaceBuildEnabled.tests}

unless

${workspaceDisableLocalTasks}

Added in version 1.2.0

root

${PROJECTDIR}

to_build_first

${workspaceSubProjectsToBuildFirst}

to_build

${workspaceSubProjectsToBuild}

to_build_after

${workspaceSubProjectsToBuildAfter}

excluded

${workspaceSubProjectsToExclude}

args

tests ${workspaceBuildExtraArgs}

ignore_failures

${workspaceBuildIgnoreFailures.tests}

Package tasks

All tasks in this chapter are dependencies of the base package task.

workspace.package – subprojects package

This task iterates on specified subprojects, and call their own package task.

Property

Value/description

builder

nmk_workspace.builders.SubProjectsBuilder

if

${workspaceBuildEnabled.package}

unless

${workspaceDisableLocalTasks}

Added in version 1.2.0

root

${PROJECTDIR}

to_build_first

${workspaceSubProjectsToBuildFirst}

to_build

${workspaceSubProjectsToBuild}

to_build_after

${workspaceSubProjectsToBuildAfter}

excluded

${workspaceSubProjectsToExclude}

args

package ${workspaceBuildExtraArgs}

ignore_failures

${workspaceBuildIgnoreFailures.package}

Clean tasks

All tasks in this chapter are dependencies of the base clean task.

workspace.clean – subprojects clean

This task iterates on specified subprojects, and call their own clean task.

Property

Value/description

builder

nmk_workspace.builders.SubProjectsBuilder

if

${workspaceBuildEnabled.clean}

unless

${workspaceDisableLocalTasks}

Added in version 1.2.0

root

${PROJECTDIR}

to_build_first

${workspaceSubProjectsToBuildFirst}

to_build

${workspaceSubProjectsToBuild}

to_build_after

${workspaceSubProjectsToBuildAfter}

excluded

${workspaceSubProjectsToExclude}

args

clean ${workspaceBuildExtraArgs}

ignore_failures

${workspaceBuildIgnoreFailures.clean}

Other tasks

workspace.sync – submodules synchronization

This task triggers a recursive submodules update process, and checks out the corresponding branch (i.e. the remote branch identified in .gitmodules root file) for each submodule.

Property

Value/description

builder

nmk_workspace.builders.SubProjectsSyncBuilder

root

${PROJECTDIR}

to_sync

${workspaceSubModules}

Added in version 1.2.0