Skip to content

Jet Templates

A Jet Template defines the blueprint for Jets: lifecycle states, actions, Flight Plans for install/uninstall/clone, waypoints, and dependencies. You install a template on Servers, then create Jets from it on those servers.

Access Rules

Group Action Condition
User R Access level is "User" or user is added in "Users" or in "Users" of any Jets created from the template
Manager R Access level is "Manager" or less or user is added in "Users" or "Managers"
Manager CRU Access level is "Manager" or less and user is added to "Managers"
Manager CRUD Access level is "Manager" or less and user is added to "Managers" and the record is created by the user
Root CRUD Any record

Info

CRUD stands for Create, Read, Update, Delete.

Jet Template Configuration

Jet Templates are located under the Cetmix Tower > Jets > Jet Templates menu.

Jet Template Kanban

Important

Field and tab visibility depend on the user's Access Level. Many configuration tabs are only available to users with Manager and Root access levels.

General Settings

Jet Template Form - General Settings

Field Description
Reference Used for Odoo automation and YAML export/import. Leave blank to generate automatically.
Access Level Default Access Level for this template.
Show in Wizard If enabled, the template appears in the wizard to create a new Jet.
Installation Flight Plan Flight Plan used to install the template on a server.
Uninstallation Flight Plan Flight Plan used to uninstall the template from a server.
Limit per Server Maximum number of Jets of this template per server. Set to 0 for no limit.
Cloning – Same Server Flight Plan used to clone a Jet on the same server.
Cloning – Different Server Flight Plan used to clone a Jet to another server.
Note Optional comments or notes.

Lifecycle vs Install/Uninstall

The fields above (Installation, Uninstallation, Cloning) control template installation on a server. The Prepare, Build, Start, Stop, Remove lifecycle is defined in the Actions tab via Jet States and Jet Actions, where each action links a Flight Plan to a state transition. In YAML, use action_ids with jet_action records (each with plan_id), not plan_prepare_id or similar fields. Each jet_action must have state_transit_id — transit states must be defined and referenced; import fails without it.

Clone flight plan variables

Clone flight plans run on the cloned Jet. Available variables: __original_jet__, __original_server__, __requested_jet_state__. In Python commands you can use jet.jet_cloned_from_id to get the original Jet.

Configuration

Configuration Tab

Configuration Variables for this template. Used when rendering Commands and Files on Jets created from this template. Variable resolution order: Jet → Jet Template → Server → Global.

Use variable_value_ids to define default values. Each item links a variable (variable_id) to a value (value_char). The variable model has no value field — values live in variable_value records.

Variable Access Level

By default, the Access Level of the variable value is set to that of the Variable.
It is possible to change the Access Level only to a higher level.

Actions

Actions Tab

Lifecycle Actions define how Jets of this template move between states. Each action has:

  • From state (optional) – initial state; if empty, the action can be used to create a new Jet.
  • Transit state – state while the action is running.
  • To state (optional) – target state; if empty, the action can be used to destroy the Jet.
  • Error state (optional) – state to set if the action fails.
  • Flight Plan (optional) – Flight Plan executed when the action runs.

Create Jet and Destroy Jet are set from the actions that have no initial state (create) or no final state (destroy).

Build and Start need different plans

Each action runs a Flight Plan. Start must not reuse the Build plan — Build creates resources; re-running on Start fails. Start should use different commands (e.g. docker start for Docker). Production templates should define Stop, Remove, Destroy with distinct plans. Actions that do the same thing in different contexts (e.g. two Start actions in different template variants, or the same template with different initial states) can share the same plan.

Dependencies

Dependencies Tab

Define other Jet Templates that must be in specific states for this template to work (Requires), and templates that require this one (Required by). Used so that Jets can depend on other Jets (e.g. app Jet requiring a database Jet in "running" state). A dependency graph is shown when defined.

Design pattern: atomized vs monolithic

Consider whether to use atomized templates (separate DB, proxy, app) for reusability, or monolithic (single stack) for simplicity. See Jet Template structure: atomized vs monolithic in the developer guidelines.

Waypoints

Waypoints Tab

Waypoint templates for this Jet Template. Jets created from this template can create waypoints from these templates to save or restore state and configuration.

Access Roles

Access Tab

Access Roles: Users and Managers who can access or modify this Jet Template and Jets created from it.

Jet Logs

Jet Logs Tab

Server Logs configured at the template level. These log definitions are copied to new Jets created from this template (e.g. to fetch application logs from a Command or File).

Scheduled Tasks

Scheduled Tasks Tab

Scheduled tasks linked to this template. They are assigned to new Jets created from this template so that Commands or Flight Plans can run on a schedule.

Installed on Servers

Installed on Servers Tab

Read-only list of Servers where this template is installed. Use the Install button in the form header to install the template on more servers; use Uninstall on a server row to remove the template from that server (only when no Jets of this template remain on it).

Installation Logs

Installation Logs Tab

History of template installations: server, date, and status. Used to track install/uninstall operations.

Export YAML

Export YAML

Jet Templates can be exported and imported in YAML format for backup or deployment. See YAML export/import.

Buttons

Button Description
Install Install this Jet Template on selected servers (Manager).
New Jet Open the wizard to create a new Jet from this template (when Show in Wizard is enabled).
Jets List of Jets created from this template.
Command Logs Command logs for Jets of this template.
Flight Plan Logs Flight Plan logs for Jets of this template.
Files Files linked to this template.