This directory contains the JSON Schema file used for validating user environment configuration files.
File: environment-config.json
Purpose: Validates the JSON files that users create to define deployment environments.
This schema validates user-provided environment configuration files stored in the envs/ directory. These are the configuration files you create when you want to deploy a new Torrust Tracker instance.
Example file: envs/my-deployment.json
- Environment settings: Name, instance name
- SSH credentials: Key paths, username, port
- Provider configuration: LXD profiles or Hetzner server settings
- Tracker configuration: Database, UDP/HTTP trackers, API settings
In your IDE (VS Code, IntelliJ, etc.):
Configure your editor to associate envs/*.json files with this schema for autocomplete and validation. See the JSON Schema IDE Setup Guide for detailed instructions.
Creating a new environment:
# 1. Create your configuration file in envs/
vim envs/my-deployment.json
# 2. Your IDE will provide autocomplete using this schema
# 3. Deploy using your configuration
cargo run -- create environment --env-file envs/my-deployment.jsoncargo run -- create schema > schemas/environment-config.jsonWhen to regenerate:
- After adding new configuration fields
- After changing validation rules or types
- After modifying enums or provider options
Important Note: This schema does NOT apply to internal application state files (data/*/environment.json), which have a different structure managed by the application.
For CLI documentation, see the docs command which generates machine-readable documentation of the CLI interface.
📖 JSON Schema IDE Setup Guide - Configure your IDE for environment configuration autocomplete