Replaces the minimal project description with a comprehensive README including a component overview table, quick start instructions, common Ansible operations, and links to detailed documentation. Aligns with Red Panda Approval™ standards.
1.7 KiB
1.7 KiB
Ouranos
Red Panda Approved™ Infrastructure as Code
Ouranos is an infrastructure-as-code project that provisions and manages the Ouranos Lab — a development sandbox at ouranos.helu.ca. All infrastructure is tracked in Git for fully reproducible deployments.
| Component | Purpose |
|---|---|
| Terraform | Provisions 10 specialised Incus containers (LXC) with networking, security policies, and resource dependencies |
| Ansible | Configures Docker, databases, observability stack, and application runtimes across all containers |
Containers are named after moons of Uranus and resolved via the .incus DNS domain.
Quick Start
ℹ️ The Ansible virtual environment is expected at ~/env/agathos/bin/activate.
# Provision containers
cd terraform
terraform init && terraform apply
# Configure services
cd ../ansible
source ~/env/agathos/bin/activate
ansible-playbook site.yml
Common Operations
# Start all containers
ansible-playbook sandbox_up.yml
# Stop all containers
ansible-playbook sandbox_down.yml
# Update all hosts
ansible-playbook apt_update.yml
# Deploy a specific service
ansible-playbook <service>/deploy.yml
Documentation
| Document | Description |
|---|---|
| docs/ouranos.md | Complete lab reference — hosts, services, routing, workflows |
| docs/terraform.md | Terraform practices and patterns |
| docs/ansible.md | Ansible project structure and conventions |
| docs/red_panda_standards.md | Red Panda Approval™ quality standards |
🐾 Red Panda Approval™
This project adheres to Red Panda Approval™ standards.