Mobilize Plan
Run and validate Mobilize .yaml.mako plans directly from Visual Studio Code.
The extension provides integrated support for Mobilize plan development by combining VS Code's YAML language features with Mako template syntax highlighting. Expressions such as ${...}, % control statements, <%...%> Python blocks, Mako tags, and comments are highlighted while maintaining standard YAML editing capabilities. No separate YAML or Mako extension is required.
Prerequisites
Before using this extension, ensure that:
- Python 3.11 or later is installed and available in your system
PATH.
- You have access to the NI Python package repository:
https://pypi.ni.systems.
- Your system allows creation of Python virtual environments.
Verify your Python installation:
python --version
Features
- Run Mobilize plans directly from VS Code.
- Validate plans before execution.
- Automatic detection of plan parameter references.
- Parameter file selection prompt when required.
- Integrated YAML and Mako syntax highlighting for
.yaml.mako files.
- Automatic creation and management of a dedicated
plan_env virtual environment.
- Reuse of existing environments to reduce setup time.
- Execution and validation logs available in the Mobilize Plan Output panel.
Usage
Open a .yaml.mako file and either:
- Click the Run or Validate button in the editor title bar, or
- Open the Command Palette and run:
- Mobilize Plan: Run Mobilize Plan
- Mobilize Plan: Validate Mobilize Plan
If the plan contains parameter references such as:
${params["device_name"]}
the extension prompts you to select a parameter file (for example, params.yaml) before executing or validating the plan.
Environment Setup
The extension uses the plan's directory as its working directory.
If a plan_env virtual environment does not exist, the extension automatically:
- Creates a Python virtual environment named
plan_env.
- Installs Mobilize from
https://pypi.ni.systems.
Existing plan_env environments are reused. If the environment exists but does not contain the mobilize executable, Mobilize is installed automatically. Otherwise, the extension leaves the existing environment unchanged and does not reinstall or update packages.
Commands Executed
Run Plan
mobilize -v execute --plans <plan-file> [--params <params-file>]
Validate Plan
mobilize -v validate --plans <plan-file> [--params <params-file>]
Output
All execution and validation logs are displayed in the Mobilize Plan Output panel, providing visibility into command execution, validation results, and troubleshooting information.
Notes
.yaml.mako files are treated as YAML documents with injected Mako syntax support.
- No additional YAML or Mako extensions are required.
- Python is used to create and manage the
plan_env virtual environment automatically.