# 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](https://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`. ```bash # Provision containers cd terraform terraform init && terraform apply # Configure services cd ../ansible source ~/env/agathos/bin/activate ansible-playbook site.yml ``` ### Common Operations ```bash # 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 /deploy.yml ``` ## Documentation | Document | Description | |----------|-------------| | [docs/ouranos.md](docs/ouranos.md) | Complete lab reference — hosts, services, routing, workflows | | [docs/terraform.md](docs/terraform.md) | Terraform practices and patterns | | [docs/ansible.md](docs/ansible.md) | Ansible project structure and conventions | | [docs/red_panda_standards.md](docs/red_panda_standards.md) | Red Panda Approval™ quality standards | ## 🐾 Red Panda Approval™ This project adheres to [Red Panda Approval™ standards](docs/red_panda_standards.md).