Jesús Pérez a658bdd73a
chore: complete nickel migration and consolidate legacy configs
- Remove KCL ecosystem (~220 files deleted)
  - Migrate all infrastructure to Nickel schema system
  - Consolidate documentation: legacy docs → provisioning/docs/src/
  - Add CI/CD workflows (.github/) and Rust build config (.cargo/)
  - Update core system for Nickel schema parsing
  - Breaking changes: KCL workspaces require migration
  - Migration bridge available in docs/src/development/
2026-01-08 09:52:22 +00:00

80 lines
1.7 KiB
Plaintext

# Example: Simple API with SQLite database
# Scenario: Development/Testing environment
# Deployment: Docker Compose
# Version: 1.0.0
{
provisioning = {
project = {
name = "simple-api",
version = "0.1.0",
description = "Simple REST API with SQLite database",
tags = ["api", "sqlite", "development"],
},
services = {
api = {
type = 'api,
image = {
name = "simple-api",
tag = "latest",
build_context = ".",
dockerfile = "Dockerfile",
},
ports = [{
container_port = 8080,
host_port = 8080,
protocol = 'tcp,
}],
environment = {
LOG_LEVEL = "debug",
DATABASE_PATH = "./data/app.db",
SERVER_HOST = "0.0.0.0",
SERVER_PORT = "8080",
},
healthcheck = {
enabled = true,
endpoint = "/health",
interval = 30,
timeout = 10,
retries = 3,
start_period = 10,
},
volumes = ["./data:/app/data"],
restart_policy = 'unless-stopped,
replicas = 1,
},
},
database = {
type = 'sqlite,
sqlite = {
database_path = "./data/app.db",
journal_mode = 'WAL,
synchronous = 'NORMAL,
cache_size = -2000,
foreign_keys = true,
},
migrations_path = "./migrations",
auto_migrate = false,
},
deployment = {
target = 'docker,
docker_compose = {
enabled = true,
version = 'v3_8,
env_file = ".env",
},
},
network = {},
storage = {},
monitoring = {},
security = {
tls = {enabled = false},
auth = {method = 'none},
},
},
}