Skip to main content

Overview

When the Configuration forms do not expose a specific setting, Advanced Configuration provides a full code editor for individual service configuration files. It supports YAML, INI, and Jinja2 templates with syntax validation, auto-formatting, and integrated Git version control for tracking every change.
Prerequisites
  • Configuration completed with base settings saved
  • Services selected for deployment
  • Understanding of the specific service configuration options being modified

Editor Layout

Log in to XDeploy (https://xdeploy.<your-domain>) on the deployment node using administrative access. Navigate to Advanced Configuration in the left sidebar. The editor interface is organized into three panels.

Service Tree

Searchable tree of all services organized by category: compute, network, storage, identity, and orchestration. Click a service to browse its configuration files.

Code Editor

Full text editor for YAML, INI, and Jinja2 files. Includes syntax validation, auto-formatting, file preview, multi-tab support, and a cursor position status bar.

File Browser

Lists configuration files for the selected service. Toolbar actions include New File, Upload, Download, and Delete.

Editing Configuration Files

Select a service

Use the Service Tree on the left to browse or search for the service you want to configure. Services are organized by category:
CategoryServices
ComputeXloud Compute (nova), Libvirt, Scheduler
NetworkXloud Networking (neutron), L3 Agent, DHCP Agent, OVS Agent
StorageXloud Block Storage (cinder), Backup
IdentityXloud Identity (keystone)
OrchestrationXloud Orchestration (heat)
DashboardXloud Dashboard (horizon)
MonitoringPrometheus, Grafana
Click a service name to load its configuration files in the File Browser panel.

Open a configuration file

Select a file from the File Browser to open it in the Code Editor. The editor provides:
  • Syntax highlighting for YAML, INI, and Jinja2 formats
  • Validation that flags syntax errors before saving
  • Auto-formatting to normalize indentation and spacing
  • Multi-tab editing to work on multiple files simultaneously

Modify and save

Make your changes in the editor. The validation engine checks for syntax errors in real time. Click Save to persist the changes to the configuration directory.
The file is saved to the configuration override directory and will be applied during the next deployment or reconfiguration.
Use the Preview button to view the final rendered configuration before saving. This is especially useful for Jinja2 templates where the rendered output may differ from the source template.

Git Integration

Advanced Configuration includes built-in version control for tracking configuration changes. Every modification is trackable, reversible, and auditable.

Initialize the repository

Click Initialize Git to create a version control repository in the configuration directory. This is a one-time operation.

Track changes

After initialization, the editor tracks all file modifications. Use View Diff to see pending changes before committing them.

Commit changes

Commit your changes with a descriptive message. The commit history provides a complete audit trail of who changed what and when.

Branch for experiments

Create a branch before making experimental changes (e.g., test-nova-tuning). If something breaks during testing, switch back to the main branch to restore the working configuration instantly.
Additional Git operations available in the toolbar:
OperationDescription
PullFetch and merge changes from a remote repository
PushPush local commits to a remote repository
BranchCreate, switch, or delete branches
Resolve IssuesHandle merge conflicts when branch histories diverge
Create a branch before making experimental changes. If something breaks, switch back to the main branch to restore working configuration immediately.

How Config Overrides Work

The deployment automation supports per-service configuration overrides. Dropping a configuration file into the service-specific override directory merges your custom settings into the deployed configuration on the next Reconfigure operation.
etc
xavs
config
nova
nova.conf
neutron
neutron.conf
ml2_conf.ini
Override files do not replace the entire service configuration. They are merged with the base configuration generated by the deployment automation. Only the specific keys you define in your override file are changed --- all other settings retain their default values.
After modifying configuration overrides, you must run a Reconfigure operation from the Operations tool for changes to take effect. Editing files here does not automatically apply changes to running services.

Next Steps

Operations

Deploy or reconfigure services to apply your configuration changes

Configuration

Return to the guided configuration forms for common deployment settings