# veriqta/devops-projects architecture

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

- Interactive diagram: https://gitdiagram.com/veriqta/devops-projects
- Repository: https://github.com/veriqta/devops-projects

## Overview

This repository is a collection of DevOps learning projects and portfolio labs, not one integrated runtime product. Its principal demonstrated user workflow is a developer submitting a service name and team to generate a validated service from a template. Other sampled projects expose small HTTP services for orders, jobs, health checks, and metrics. The tree also documents broader infrastructure, Kubernetes, delivery, security, and operations topics, but no README content or implementation excerpts establish their runtime wiring, so those are not expanded into speculative flows.

Main entry points: [`04. DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py`](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py) (Service Generator), [`04. DevOps-Portfolio-Projects/07.developer-self-service-platform/portal/request.py`](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/portal/request.py) (Service Request), [`03. Beginner to Advanced/25.multi-service-application/files/multiservice/app.py`](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/25.multi-service-application/files/multiservice/app.py) (Job API Worker), [`03. Beginner to Advanced/30.load-testing-and-resilience/files/load.js`](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/30.load-testing-and-resilience/files/load.js) (Load Client)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_self_service["Developer Self-Service"]
  node_service_request["Service Request<br/>[request.py]"]
  node_generator["Service Generator<br/>[generate.py]"]
  node_service_template["Service Template<br/>[server.py]"]
  node_generated_service["Generated Service"]
end

subgraph group_service_labs["Service Labs"]
  node_job_api_worker["Job API Worker<br/>[app.py]"]
  node_job_store[("SQLite Jobs<br/>[app.py]")]
  node_docker_demo["HTTP Demo<br/>[server.js]"]
  node_node_deploy_demo["HTTP Demo<br/>[server.js]"]
  node_dockerized_demo["HTTP Demo<br/>[server.js]"]
  node_multicontainer_demo["HTTP Demo<br/>[server.js]"]
  node_backup_demo["HTTP Demo<br/>[server.js]"]
  node_bluegreen_demo["HTTP Demo<br/>[server.js]"]
  node_prometheus_demo["HTTP Demo<br/>[server.js]"]
  node_discovery_demo["HTTP Demo<br/>[server.js]"]
  node_kubernetes_demo["HTTP Demo<br/>[server.js]"]
  node_gitops_demo["HTTP Demo<br/>[server.js]"]
  node_supply_demo["HTTP Demo<br/>[server.js]"]
  node_load_demo["HTTP Demo<br/>[server.js]"]
  node_load_client["Load Client<br/>[load.js]"]
  node_recovery_demo["HTTP Demo<br/>[server.js]"]
end

subgraph group_operations_labs["Operations Labs"]
  node_orders_sre["Orders API<br/>[server.py]"]
  node_orders_cost["Orders API<br/>[server.py]"]
  node_server_stats["Server Stats<br/>[server_stats.py]"]
  node_log_archive["Log Archiver<br/>[archive_logs.py]"]
  node_nginx_analyser["Nginx Log Analysis<br/>[analyse_nginx.py]"]
  node_integrity_checker["File Integrity Checker<br/>[integrity.py]"]
end

subgraph group_portfolio_apps["Portfolio Applications"]
  node_orders_delivery["Orders API<br/>[server.py]"]
  node_orders_kubernetes["Orders API<br/>[server.py]"]
  node_orders_supply["Orders API<br/>[server.py]"]
end

node_developer(("Developer"))

node_developer -->|"submits details"| node_service_request
node_service_request -->|"calls generator"| node_generator
node_generator -->|"renders template"| node_service_template
node_generator -->|"publishes service"| node_generated_service
node_job_api_worker -->|"reads and writes"| node_job_store
node_load_client -.->|"sends load"| node_load_demo

click node_service_request "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/portal/request.py"
click node_generator "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py"
click node_service_template "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/template/server.py"
click node_generated_service "https://github.com/veriqta/devops-projects/tree/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform"
click node_orders_delivery "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/01.production-delivery-platform/app/server.py"
click node_orders_kubernetes "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/03.kubernetes-application-platform/app/server.py"
click node_orders_sre "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/04.sre-observability-and-incidents/app/server.py"
click node_orders_supply "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/05.software-supply-chain-security/app/server.py"
click node_orders_cost "https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/08.cloud-cost-and-capacity/app/server.py"
click node_job_api_worker "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/25.multi-service-application/files/multiservice/app.py"
click node_job_store "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/25.multi-service-application/files/multiservice/app.py"
click node_server_stats "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/01.server-performance-stats/files/server_stats.py"
click node_log_archive "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/02.log-archive-tool/files/archive_logs.py"
click node_nginx_analyser "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/03.nginx-log-analyser/files/analyse_nginx.py"
click node_docker_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/10.basic-dockerfile/files/app/server.js"
click node_node_deploy_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/15.node-js-service-deployment/files/app/server.js"
click node_dockerized_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/16.dockerized-service/files/app/server.js"
click node_multicontainer_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/17.multi-container-application/files/app/server.js"
click node_backup_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/18.automated-db-backups/files/app/server.js"
click node_integrity_checker "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/20.file-integrity-checker/files/integrity.py"
click node_bluegreen_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/23.blue-green-deployment/files/app/server.js"
click node_prometheus_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/24.prometheus-and-grafana/files/app/server.js"
click node_discovery_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/26.service-discovery/files/app/server.js"
click node_kubernetes_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/27.local-kubernetes-operations/files/app/server.js"
click node_gitops_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/28.gitops-delivery/files/app/server.js"
click node_supply_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/29.supply-chain-security/files/app/server.js"
click node_load_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/30.load-testing-and-resilience/files/app/server.js"
click node_load_client "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/30.load-testing-and-resilience/files/load.js"
click node_recovery_demo "https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/31.backup-and-recovery-drill/files/app/server.js"

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_service_request,node_generator,node_service_template,node_generated_service toneBlue
class node_job_api_worker,node_job_store,node_docker_demo,node_node_deploy_demo,node_dockerized_demo,node_multicontainer_demo,node_backup_demo,node_bluegreen_demo,node_prometheus_demo,node_discovery_demo,node_kubernetes_demo,node_gitops_demo,node_supply_demo,node_load_demo,node_load_client,node_recovery_demo toneAmber
class node_orders_sre,node_orders_cost,node_server_stats,node_log_archive,node_nginx_analyser,node_integrity_checker toneMint
class node_orders_delivery,node_orders_kubernetes,node_orders_supply toneRose
class node_developer toneIndigo
```

## Components

### Developer Self-Service

- [Service Request](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/portal/request.py): `04. DevOps-Portfolio-Projects/07.developer-self-service-platform/portal/request.py`
- [Service Generator](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py): `04. DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py`
- [Service Template](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform/template/server.py): `04. DevOps-Portfolio-Projects/07.developer-self-service-platform/template/server.py`
- [Generated Service](https://github.com/veriqta/devops-projects/tree/main/04.%20DevOps-Portfolio-Projects/07.developer-self-service-platform): `04. DevOps-Portfolio-Projects/07.developer-self-service-platform`

### Service Labs

- [Job API Worker](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/25.multi-service-application/files/multiservice/app.py): `03. Beginner to Advanced/25.multi-service-application/files/multiservice/app.py`
- [SQLite Jobs](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/25.multi-service-application/files/multiservice/app.py): `03. Beginner to Advanced/25.multi-service-application/files/multiservice/app.py`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/10.basic-dockerfile/files/app/server.js): `03. Beginner to Advanced/10.basic-dockerfile/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/15.node-js-service-deployment/files/app/server.js): `03. Beginner to Advanced/15.node-js-service-deployment/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/16.dockerized-service/files/app/server.js): `03. Beginner to Advanced/16.dockerized-service/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/17.multi-container-application/files/app/server.js): `03. Beginner to Advanced/17.multi-container-application/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/18.automated-db-backups/files/app/server.js): `03. Beginner to Advanced/18.automated-db-backups/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/23.blue-green-deployment/files/app/server.js): `03. Beginner to Advanced/23.blue-green-deployment/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/24.prometheus-and-grafana/files/app/server.js): `03. Beginner to Advanced/24.prometheus-and-grafana/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/26.service-discovery/files/app/server.js): `03. Beginner to Advanced/26.service-discovery/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/27.local-kubernetes-operations/files/app/server.js): `03. Beginner to Advanced/27.local-kubernetes-operations/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/28.gitops-delivery/files/app/server.js): `03. Beginner to Advanced/28.gitops-delivery/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/29.supply-chain-security/files/app/server.js): `03. Beginner to Advanced/29.supply-chain-security/files/app/server.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/30.load-testing-and-resilience/files/app/server.js): `03. Beginner to Advanced/30.load-testing-and-resilience/files/app/server.js`
- [Load Client](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/30.load-testing-and-resilience/files/load.js): `03. Beginner to Advanced/30.load-testing-and-resilience/files/load.js`
- [HTTP Demo](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/31.backup-and-recovery-drill/files/app/server.js): `03. Beginner to Advanced/31.backup-and-recovery-drill/files/app/server.js`

### Operations Labs

- [Orders API](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/04.sre-observability-and-incidents/app/server.py): `04. DevOps-Portfolio-Projects/04.sre-observability-and-incidents/app/server.py`
- [Orders API](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/08.cloud-cost-and-capacity/app/server.py): `04. DevOps-Portfolio-Projects/08.cloud-cost-and-capacity/app/server.py`
- [Server Stats](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/01.server-performance-stats/files/server_stats.py): `03. Beginner to Advanced/01.server-performance-stats/files/server_stats.py`
- [Log Archiver](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/02.log-archive-tool/files/archive_logs.py): `03. Beginner to Advanced/02.log-archive-tool/files/archive_logs.py`
- [Nginx Log Analysis](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/03.nginx-log-analyser/files/analyse_nginx.py): `03. Beginner to Advanced/03.nginx-log-analyser/files/analyse_nginx.py`
- [File Integrity Checker](https://github.com/veriqta/devops-projects/blob/main/03.%20Beginner%20to%20Advanced/20.file-integrity-checker/files/integrity.py): `03. Beginner to Advanced/20.file-integrity-checker/files/integrity.py`

### Portfolio Applications

- [Orders API](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/01.production-delivery-platform/app/server.py): `04. DevOps-Portfolio-Projects/01.production-delivery-platform/app/server.py`
- [Orders API](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/03.kubernetes-application-platform/app/server.py): `04. DevOps-Portfolio-Projects/03.kubernetes-application-platform/app/server.py`
- [Orders API](https://github.com/veriqta/devops-projects/blob/main/04.%20DevOps-Portfolio-Projects/05.software-supply-chain-security/app/server.py): `04. DevOps-Portfolio-Projects/05.software-supply-chain-security/app/server.py`

### Other components

- **Developer**

## Connections

- Developer → Service Request: submits details
- Service Request → Service Generator: calls generator (evidence: `04. DevOps-Portfolio-Projects/07.developer-self-service-platform/portal/request.py`)
- Service Generator → Service Template: renders template (evidence: `04. DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py`)
- Service Generator → Generated Service: publishes service (evidence: `04. DevOps-Portfolio-Projects/07.developer-self-service-platform/automation/generate.py`)
- Job API Worker → SQLite Jobs: reads and writes (evidence: `03. Beginner to Advanced/25.multi-service-application/files/multiservice/app.py`)
- Load Client → HTTP Demo: sends load
