Skip to main content

Module domain

Module domain 

Source
Expand description

Domain Layer (DDD)

This module contains domain-specific business logic and entities. It includes pure domain models independent of technical implementation details.

§Components

  • backup - Backup configuration domain types (cron schedule, retention)
  • caddy - Caddy TLS reverse proxy service domain types
  • environment - Environment module with entity, name validation, and state management
    • environment::name - Environment name validation and management
    • environment::state - State marker types and type erasure for environment state machine
  • instance_name - LXD instance name validation and management
  • mysql - MySQL database service domain types (distinct from tracker database config)
  • profile_name - LXD profile name validation and management
  • provider - Infrastructure provider types (LXD, Hetzner) and configuration
  • template - Core template domain models and business logic
  • topology - Docker Compose topology domain types (networks, services)

Re-exports§

pub use backup::BackupConfig;
pub use backup::CronSchedule;
pub use backup::RetentionDays;
pub use caddy::CaddyConfig;
pub use environment::state::AnyEnvironmentState;
pub use environment::state::StateTypeError;
pub use environment::Environment;
pub use instance_name::InstanceName;
pub use instance_name::InstanceNameError;
pub use mysql::MysqlServiceConfig;
pub use profile_name::ProfileName;
pub use profile_name::ProfileNameError;
pub use provider::HetznerConfig;
pub use provider::LxdConfig;
pub use provider::Provider;
pub use provider::ProviderConfig;
pub use template::TemplateEngine;
pub use template::TemplateEngineError;
pub use template::TemplateManager;
pub use template::TemplateManagerError;
pub use topology::DockerComposeTopology;
pub use topology::Network;
pub use topology::Service;
pub use topology::ServiceTopology;

Modules§

backup
Backup domain types for the Torrust Tracker Deployer.
caddy
Caddy TLS reverse proxy service domain types
environment
Environment Domain Module
grafana
Grafana metrics visualization service domain types
https
HTTPS domain types
instance_name
Instance name validation and management for LXD VMs and containers
mysql
MySQL database service domain types
profile_name
LXD profile name validation and management
prometheus
Prometheus metrics collection domain
provider
Infrastructure provider types
template
Template rendering system for configuration files
topology
Docker Compose Topology Domain Types
tracker
Tracker configuration domain types

Structs§

EnvironmentName
Validated environment name following restricted format rules

Enums§

EnvironmentNameError
Errors that can occur when creating or validating environment names