FluxBilling
Infrastructure

Deployment Templates

Build reusable cloud-init, Unattend.xml, network, and post-install templates to provision bare-metal servers consistently in FluxBilling.

Updated · 2026-09-03

What deployment templates are for

A deployment template is a reusable configuration recipe that turns a freshly imaged bare-metal server into a ready-to-use machine. It bundles the first-boot configuration a server needs — user accounts, packages, network settings and post-install commands — so the same setup is applied consistently every time you install an operating system.

An OS image decides what is installed. A deployment template decides how the machine is configured once that install finishes. The two are chosen together.

Where to find the templates page

Deployment templates live inside the Bare Metal settings area:

  1. Open Settings from the admin sidebar.
  2. Under Infrastructure, select Bare Metal.
  3. Click the Templates sub-tab (alongside Overview and OS Images).

Note: The Bare Metal settings tab only appears when the Inventory module is enabled for your company. If you do not see it, that module is switched off. See Bare Metal.

What a template contains

Every template carries four content areas. You fill in the ones your template type needs and leave the rest empty:

The four content areas of a template.
AreaWhat it holds
Cloud-initFirst-boot user data for Linux, written in YAML. This is where hostnames, users, SSH keys and package lists go.
Unattend.xmlThe Windows answer file that automates setup.
NetworkNetwork configuration in Netplan v2 YAML — static addressing or DHCP.
Post-installA shell or PowerShell script that runs once the operating system is installed.

Alongside the content, a template records its name, a short identifier, a category, a description, its type, the operating-system families it is compatible with, and whether it is active.

Reading the template list

Templates are shown as a grid of cards, and only active templates are listed. Above the grid is a row of category chipsAll Templates plus one chip per category, each with a count. Click a chip to narrow the grid. In the Bare Metal sub-tab the New Template button sits at the right-hand end of that same chip row. A search box below the chips filters by name or description; type a term and press Enter.

Each template card shows:

  • A coloured category icon in the top-left corner.
  • A System badge (amber) on built-in templates.
  • The template name and a short description.
  • A pill showing the template type, plus one pill per compatible OS family (for example linux or windows).
  • Edit and Delete actions in the card footer. Delete is hidden on system templates.

Template categories

A category is an organisational label that drives the card icon and the filter chips. The available categories are Basic Server, Web Server, Database, Docker, Kubernetes, Security, Windows and Custom.

Template types

The five template types.
TypeWhat it produces
Cloud-init (Linux)First-boot configuration for Linux servers.
Unattend.xml (Windows)An answer file that automates Windows setup.
Network ConfigStatic or DHCP network settings only.
Post-install ScriptA script that runs after the operating system is installed.
Combined TemplateBundles first-boot configuration, network settings and a post-install script into one selectable option.

Creating a template

  1. Click New Template. The Create Template window opens.
  2. Fill in the Name — this is what your staff see when picking a template.
  3. Enter a Slug, or click Generate to derive one from the name. It is a short, lowercase, hyphenated identifier.
  4. Choose a Category and optionally add a Description.
  5. Pick a Template Type.
  6. Fill in the relevant content tab or tabs. A Combined Template can use several at once.
  7. Set the Compatibility options and the Active checkbox.
  8. Click Save Template. The button stays disabled until both Name and Slug are filled in.

Content tabs

Inside the editor the content area has four tabs — Cloud-init, Unattend.xml, Network and Post-install — matching the four areas described above. Each shows a labelled text box, and the Cloud-init box carries a worked example as greyed placeholder text (hostname, a sudo user, SSH keys and a package list) to show the expected shape. The placeholder is a hint only; the box is empty until you type in it.

Variables and templating

Template content supports placeholders that are filled in when the machine is installed. Use:

  • {{variable}} — substitutes a value, for example {{hostname}} or {{username}}.
  • {{#each array}} ... {{/each}} — repeats a block for each item in a list, such as multiple SSH keys.
  • {{#if condition}} ... {{/if}} — includes a block only when a condition is met.

The values available at install time are the machine's hostname, the administrative username, the generated root password and the customer's SSH keys.

Field reference

Every field in the template editor.
FieldWhat it does
Name (required)Display name for the template, shown on the card and in the install dialog.
Slug (required)Unique short identifier; use Generate to create one from the name.
CategoryOrganisational grouping that sets the card icon and the filter chip.
DescriptionShort summary shown on the card and beside the template name when you pick it.
Template TypeDetermines which content this template provides.
OS FamiliesCheckboxes for Linux, FreeBSD and Windows — records which servers the template is meant for.
ActiveLeave it ticked for any template you want to use. Unticking it keeps the template on file but takes it out of this grid and out of the install picker, so it is no longer reachable from the panel.

Validating content

The content toolbar has a Validate button. Click it to check the syntax of the current Cloud-init or Unattend.xml content, depending on the template type. A green Syntax is valid banner confirms a clean template; a red banner shows the error so you can fix it before saving.

Previewing rendered output

For templates that have already been saved, a Preview button appears in the top-right of the editor. Preview fills the placeholders with sample values — a sample hostname, username and SSH key — and opens a Template Preview window showing exactly what the final output will look like.

Note: Preview is only available after a template has been saved. A brand-new, unsaved template has no Preview button yet — save it, reopen it, then preview.

System templates

Templates marked with the System badge ship with the platform. They cannot be deleted, and their name, slug, category, type, content and OS families are locked — you will see a System template (limited editing) note in the editor. The description and the Active checkbox stay editable. If you want a customised version, create a new template rather than trying to change the system one.

Editing and deleting

  • Edit — click the pencil icon on a card to reopen the editor and change content, compatibility or the Active state.
  • Delete — click the trash icon (shown only on non-system templates) and confirm. Deletion is permanent.

When a template is applied

A template takes effect at install time, and only then. There is no way to push a template onto a machine that is already running.

You choose one when you install or reinstall an operating system on a device:

  1. Open Inventory and click the server.
  2. Click Install OS in the header of the device view.
  3. Pick the Operating System (required), then a Deployment Template (Optional). The dropdown lists your templates by name and description, and its hint reads Templates include pre-configured cloud-init scripts for common setups.
  4. Leave the dropdown on No template (basic install) for a plain operating-system install with no extra configuration.
  5. Choose a boot method and, optionally, a RAID level, then start the install.

Once the install begins, the confirmation names both the operating system and the template that was applied, and shows the generated root password.

Warning: Installing an operating system erases the machine. The dialog warns that all data will be lost and the action cannot be undone.

Note: Selecting No template (basic install) means no first-boot configuration, no network configuration and no post-install script are applied — you get a plain operating system. Customers reinstalling their own server from the client portal choose an operating system only; the template choice is yours.

Tips

  • Give templates names that read well in a dropdown — the picker shows the name followed by the start of the description.
  • Validate before saving. A template with broken syntax will fail during the install, when it is hardest to notice.
  • Preview a saved template before using it in anger, so you can see how the placeholders resolve.
  • The grid and the install picker both list active templates only, so unticking Active takes a template out of circulation everywhere. Untick it only for a recipe you have finished with.

Related articles

OS Images · Bare Metal · Inventory · Services