Merge _configs/ into config/ for single configuration directory. Update all path references. Changes: - Move _configs/* to config/ - Update .gitignore for new patterns - No code references to _configs/ found Impact: -1 root directory (layout_conventions.md compliance)
230 lines
5.5 KiB
TOML
230 lines
5.5 KiB
TOML
# syntaxis/.provctl/gen/values.toml
|
|
# Project-specific default values for syntaxis deployment generator
|
|
#
|
|
# These values override the provctl defaults and are specific to syntaxis
|
|
# They incorporate actual service configurations from the syntaxis codebase
|
|
|
|
[project]
|
|
name = "syntaxis"
|
|
version = "1.0.0"
|
|
description = "Syntaxis: Standalone project management platform with multi-interface support"
|
|
|
|
# Syntaxis-specific service configurations
|
|
# These match the actual crates and binaries in the workspace
|
|
|
|
[services.cli]
|
|
enabled = true
|
|
name = "syntaxis-cli"
|
|
display_name = "CLI Tool"
|
|
type = "cli"
|
|
platform_support = ["linux", "macos", "windows"]
|
|
min_disk_space_mb = 100
|
|
min_memory_mb = 128
|
|
background_service = false
|
|
config_location = "~/.config/syntaxis"
|
|
database_required = true
|
|
database_types = ["sqlite", "surrealdb"]
|
|
|
|
[services.tui]
|
|
enabled = true
|
|
name = "syntaxis-tui"
|
|
display_name = "Terminal UI"
|
|
type = "tui"
|
|
platform_support = ["linux", "macos"]
|
|
min_disk_space_mb = 100
|
|
min_memory_mb = 256
|
|
background_service = false
|
|
config_location = "~/.config/syntaxis"
|
|
database_required = true
|
|
database_types = ["sqlite", "surrealdb"]
|
|
requires = ["cli"]
|
|
|
|
[services.api]
|
|
enabled = true
|
|
name = "syntaxis-api"
|
|
display_name = "REST API"
|
|
type = "server"
|
|
port = 3000
|
|
platform_support = ["linux", "macos", "windows"]
|
|
min_disk_space_mb = 150
|
|
min_memory_mb = 512
|
|
background_service = true
|
|
config_location = "~/.config/syntaxis"
|
|
database_required = true
|
|
database_types = ["sqlite", "surrealdb"]
|
|
restart_policy = "on-failure"
|
|
restart_delay_seconds = 5
|
|
requires = ["cli"]
|
|
|
|
[services.api.health_check]
|
|
type = "http"
|
|
endpoint = "http://127.0.0.1:3000/health"
|
|
method = "GET"
|
|
expected_status = 200
|
|
interval_seconds = 10
|
|
timeout_seconds = 5
|
|
|
|
[services.dashboard]
|
|
enabled = true
|
|
name = "syntaxis-dashboard"
|
|
display_name = "Web Dashboard"
|
|
type = "web"
|
|
port = 8080
|
|
platform_support = ["linux", "macos", "windows"]
|
|
min_disk_space_mb = 100
|
|
min_memory_mb = 256
|
|
background_service = true
|
|
config_location = "~/.config/syntaxis"
|
|
database_required = false
|
|
restart_policy = "on-failure"
|
|
restart_delay_seconds = 5
|
|
requires = ["api"]
|
|
|
|
[services.dashboard.health_check]
|
|
type = "http"
|
|
endpoint = "http://127.0.0.1:8080"
|
|
method = "GET"
|
|
expected_status = 200
|
|
interval_seconds = 10
|
|
timeout_seconds = 5
|
|
|
|
# Database configurations for syntaxis
|
|
[databases]
|
|
supported = ["sqlite", "surrealdb", "postgres"]
|
|
default = "sqlite"
|
|
|
|
[databases.sqlite]
|
|
type = "sqlite"
|
|
path = "/var/lib/syntaxis/db.sqlite"
|
|
platform_support = ["linux", "macos", "windows"]
|
|
|
|
[databases.surrealdb]
|
|
type = "surrealdb"
|
|
host = "localhost"
|
|
port = 8000
|
|
platform_support = ["linux", "macos"]
|
|
|
|
[databases.postgres]
|
|
type = "postgres"
|
|
host = "localhost"
|
|
port = 5432
|
|
user = "syntaxis"
|
|
platform_support = ["linux", "macos"]
|
|
|
|
# Cache configuration (optional for syntaxis)
|
|
[cache]
|
|
enabled = false
|
|
default = "redis"
|
|
|
|
[cache.redis]
|
|
type = "redis"
|
|
host = "localhost"
|
|
port = 6379
|
|
platform_support = ["linux", "macos"]
|
|
|
|
[cache.memcached]
|
|
type = "memcached"
|
|
host = "localhost"
|
|
port = 11211
|
|
platform_support = ["linux", "macos"]
|
|
|
|
# Deployment presets for syntaxis
|
|
[presets.local]
|
|
name = "local"
|
|
description = "CLI Only - Command-line only, manual execution"
|
|
services_enabled = ["cli"]
|
|
manager = "manual"
|
|
database_type = "sqlite"
|
|
cache_enabled = false
|
|
|
|
[presets.dev]
|
|
name = "dev"
|
|
description = "Development - Full development stack with provctl"
|
|
services_enabled = ["cli", "tui", "api", "dashboard"]
|
|
manager = "provctl"
|
|
database_type = "sqlite"
|
|
cache_enabled = false
|
|
restart_policy = "on-failure"
|
|
|
|
[presets.staging]
|
|
name = "staging"
|
|
description = "Staging - Multi-machine deployment"
|
|
services_enabled = ["cli", "api", "dashboard"]
|
|
manager = "provisioning"
|
|
database_type = "postgres"
|
|
cache_enabled = false
|
|
restart_policy = "on-failure"
|
|
|
|
[presets.production]
|
|
name = "production"
|
|
description = "Production - HA production deployment"
|
|
services_enabled = ["api", "dashboard"]
|
|
manager = "provisioning"
|
|
database_type = "postgres"
|
|
cache_enabled = false
|
|
restart_policy = "always"
|
|
high_availability = true
|
|
|
|
# Port mappings for syntaxis
|
|
[ports]
|
|
api = 3000
|
|
dashboard = 8080
|
|
database_postgres = 5432
|
|
database_surrealdb = 8000
|
|
cache_redis = 6379
|
|
cache_memcached = 11211
|
|
|
|
# Platform-specific defaults
|
|
[platforms.linux]
|
|
manager = "systemd"
|
|
config_dir = "~/.config"
|
|
data_dir = "~/.local/share"
|
|
log_dir = "~/.local/share/logs"
|
|
|
|
[platforms.macos]
|
|
manager = "launchd"
|
|
config_dir = "~/Library/Application Support"
|
|
data_dir = "~/Library/Application Support"
|
|
log_dir = "~/Library/Logs"
|
|
|
|
[platforms.windows]
|
|
manager = "windows-service"
|
|
config_dir = "%APPDATA%"
|
|
data_dir = "%APPDATA%"
|
|
log_dir = "%APPDATA%\\Logs"
|
|
|
|
# Build configuration for syntaxis
|
|
[build]
|
|
rust_edition = "2021"
|
|
msrv = "1.75"
|
|
|
|
# Templates used by syntaxis generator
|
|
[templates]
|
|
# Template names should match filenames in gen/templates/
|
|
kcl = ["schemas.k.tera", "defaults.k.tera", "services.k.tera", "presets.k.tera", "deployment.k.tera"]
|
|
tera = ["provisioning-config.j2.tera", "provctl-config.j2.tera", "installer-settings.j2.tera"]
|
|
nushell = ["export-config.nu.tera"]
|
|
|
|
# Validation rules for generated code
|
|
[validation]
|
|
enforce_rustfmt = true
|
|
enforce_kcl_style = true
|
|
enforce_nushell_style = true
|
|
|
|
# Minimum requirements for any syntaxis deployment
|
|
min_memory_mb = 256
|
|
min_disk_space_mb = 150
|
|
|
|
# Additional syntaxis-specific settings
|
|
[syntaxis]
|
|
# Feature flags for what to generate
|
|
include_docker_configs = false
|
|
include_kubernetes_manifests = false
|
|
enable_provisioning_integration = true
|
|
|
|
# VAPORA integration (syntaxis as taskservs in provisioning)
|
|
[syntaxis.vapora]
|
|
enabled = false
|
|
description = "Integration as VAPORA taskservs"
|
|
taskservs_mode = "full" # Options: "full", "lite"
|