# ghxs1/development architecture

> Architecture diagram of the GitHub repository ghxs1/development, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/ghxs1/development
- Repository: https://github.com/ghxs1/development

## Overview

This repository demonstrates an infrastructure automation workflow: Terraform provisions infrastructure, Ansible configures it, and CI/CD is intended to keep updates consistent and repeatable. The README documents those stages but no source excerpts were provided, so the graph avoids inferring details of Terraform resources, workflow triggers, or how the two workflow files relate.

Main entry points: [`.github/workflows/ci.yml`](https://github.com/ghxs1/development/blob/main/.github/workflows/ci.yml) (CI workflow), [`terraform/main.tf`](https://github.com/ghxs1/development/blob/main/terraform/main.tf) (Terraform provisioning), [`ansible/playbook.yml`](https://github.com/ghxs1/development/blob/main/ansible/playbook.yml) (Ansible configuration)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_provisioning["Infrastructure provisioning"]
  node_terraform["Terraform provisioning<br/>[main.tf]"]
end

subgraph group_configuration["Host configuration"]
  node_ansible["Ansible configuration<br/>[playbook.yml]"]
end

subgraph group_automation["CI/CD automation"]
  node_ci["CI workflow<br/>[ci.yml]"]
  node_deployment["Deployment workflow<br/>[deployment.yml]"]
end

node_operator(("Project operator"))

node_terraform -->|"configures provisioned infra"| node_ansible
node_ci -->|"keeps updates consistent"| node_terraform
node_ci -->|"keeps updates consistent"| node_ansible

click node_terraform "https://github.com/ghxs1/development/blob/main/terraform/main.tf"
click node_ansible "https://github.com/ghxs1/development/blob/main/ansible/playbook.yml"
click node_ci "https://github.com/ghxs1/development/blob/main/.github/workflows/ci.yml"
click node_deployment "https://github.com/ghxs1/development/blob/main/.github/workflows/deployment.yml"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_terraform toneBlue
class node_ansible toneAmber
class node_ci,node_deployment toneMint
class node_operator toneIndigo
```

## Components

### Infrastructure provisioning

- [Terraform provisioning](https://github.com/ghxs1/development/blob/main/terraform/main.tf): `terraform/main.tf`

### Host configuration

- [Ansible configuration](https://github.com/ghxs1/development/blob/main/ansible/playbook.yml): `ansible/playbook.yml`

### CI/CD automation

- [CI workflow](https://github.com/ghxs1/development/blob/main/.github/workflows/ci.yml): `.github/workflows/ci.yml`
- [Deployment workflow](https://github.com/ghxs1/development/blob/main/.github/workflows/deployment.yml): `.github/workflows/deployment.yml`

### Other components

- **Project operator**

## Connections

- Terraform provisioning → Ansible configuration: configures provisioned infra (evidence: `README.md`)
- CI workflow → Terraform provisioning: keeps updates consistent (evidence: `README.md`)
- CI workflow → Ansible configuration: keeps updates consistent (evidence: `README.md`)
