refactor(architecture): Refactor text architecture to likec4
This commit is contained in:
parent
203e45d8b3
commit
2c981d3ce3
7 changed files with 150 additions and 147 deletions
|
|
@ -434,63 +434,7 @@ Integration with monitoring and logging:
|
|||
|
||||
### Application Deployment Flow
|
||||
|
||||
```text
|
||||
┌──────────────┐
|
||||
│ Developer │
|
||||
└──────┬───────┘
|
||||
│ git push
|
||||
▼
|
||||
┌─────────────────────────────────────────┐
|
||||
│ Forgejo │
|
||||
│ │
|
||||
│ ┌────────────────────────────────┐ │
|
||||
│ │ Git Repository │ │
|
||||
│ │ - Application Code │ │
|
||||
│ │ - Kubernetes Manifests │ │
|
||||
│ │ - Pipeline Configuration │ │
|
||||
│ └─────────┬──────────────────────┘ │
|
||||
│ │ │
|
||||
│ │ triggers │
|
||||
│ ▼ │
|
||||
│ ┌────────────────────────────────┐ │
|
||||
│ │ Forgejo Actions (CI/CD) │ │
|
||||
│ │ - Build Container Image │ │
|
||||
│ │ - Run Tests │ │
|
||||
│ │ - Security Scans │ │
|
||||
│ │ - Push to Registry │ │
|
||||
│ └─────────┬──────────────────────┘ │
|
||||
└────────────┼────────────────────────────┘
|
||||
│
|
||||
│ image pushed
|
||||
▼
|
||||
┌─────────────────────────────────────────┐
|
||||
│ Container Registry │
|
||||
└─────────────────────────────────────────┘
|
||||
│
|
||||
│ watches manifests
|
||||
▼
|
||||
┌─────────────────────────────────────────┐
|
||||
│ ArgoCD │
|
||||
│ │
|
||||
│ - Monitors Git Repository │
|
||||
│ - Detects Changes │
|
||||
│ - Syncs to Kubernetes │
|
||||
│ - Reports Health Status │
|
||||
└─────────────┬───────────────────────────┘
|
||||
│
|
||||
│ deploys
|
||||
▼
|
||||
┌─────────────────────────────────────────┐
|
||||
│ Kubernetes Cluster │
|
||||
│ │
|
||||
│ ┌────────────────────────────────┐ │
|
||||
│ │ Running Application │ │
|
||||
│ │ - Pods │ │
|
||||
│ │ - Services │ │
|
||||
│ │ - Ingress │ │
|
||||
│ └────────────────────────────────┘ │
|
||||
└─────────────────────────────────────────┘
|
||||
```
|
||||
{{< likec4-view view="application_deployment_flow" title="Application Deployment Flow" >}}
|
||||
|
||||
### CI/CD Pipeline Architecture
|
||||
|
||||
|
|
|
|||
|
|
@ -145,29 +145,7 @@ Within the IPCEI-CIS platform, we utilize the [CNOE (Cloud Native Operational Ex
|
|||
|
||||
A typical orchestration workflow in the IPCEI-CIS platform:
|
||||
|
||||
```text
|
||||
┌─────────────┐ ┌───────────┐ ┌───────────┐ ┌────────────┐
|
||||
│ Developer │────▶│ Forgejo │────▶│ Git │────▶│ ArgoCD │
|
||||
│ │ │ Pipelines│ │Repository │ │ │
|
||||
└─────────────┘ └───────────┘ └───────────┘ └─────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌───────────────────────────────────────────────┐
|
||||
│ │
|
||||
│ Kubernetes Cluster(s) │
|
||||
│ │
|
||||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
||||
│ │ Apps │ │Services │ │Resources │ │
|
||||
│ └──────────┘ └──────────┘ └──────────┘ │
|
||||
│ │
|
||||
└───────────────────────────────────────────────┘
|
||||
▲
|
||||
│
|
||||
┌────┴─────┐
|
||||
│Terraform │
|
||||
│ │
|
||||
└──────────┘
|
||||
```
|
||||
{{< likec4-view view="orchestration_workflow" title="Orchestration Workflow" >}}
|
||||
|
||||
**Workflow Steps**:
|
||||
|
||||
|
|
|
|||
|
|
@ -25,4 +25,12 @@ model {
|
|||
platformdeveloper -> idpbuilder 'runs'
|
||||
}
|
||||
|
||||
component terraform 'Terraform' {
|
||||
description 'Infrastructure provisioning (IaC)'
|
||||
technology 'Terraform'
|
||||
style {
|
||||
shape rectangle
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
model {
|
||||
runtimeCluster = system 'Kubernetes Cluster' {
|
||||
description 'Target cluster where applications are deployed'
|
||||
technology 'Kubernetes'
|
||||
|
||||
container runningApplication 'Running Application' {
|
||||
description 'Deployed workload'
|
||||
|
||||
component pods 'Pods'
|
||||
component services 'Services'
|
||||
component ingress 'Ingress'
|
||||
}
|
||||
}
|
||||
|
||||
// Relationships matching the documentation flow
|
||||
developer -> edp.forgejogit 'git push'
|
||||
edp.forgejogit -> edp.forgejoActions 'triggers'
|
||||
edp.forgejoActions -> edp.imageregistry 'push image'
|
||||
edp.forgejogit -> edp.argoCD 'watches manifests'
|
||||
edp.argoCD -> runtimeCluster 'deploys'
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
views {
|
||||
dynamic view orchestration_workflow {
|
||||
title 'Orchestration Workflow'
|
||||
|
||||
include developer
|
||||
include edp.forgejo
|
||||
include edp.forgejoActions
|
||||
include edp.forgejogit
|
||||
include edp.argoCD
|
||||
include runtimeCluster
|
||||
include terraform
|
||||
|
||||
developer -> edp.forgejo 'defines & commits'
|
||||
edp.forgejo -> edp.forgejoActions 'pipelines'
|
||||
edp.forgejo -> edp.forgejogit 'git repository'
|
||||
edp.forgejogit -> edp.argoCD 'sync trigger'
|
||||
edp.argoCD -> runtimeCluster 'deploys'
|
||||
terraform -> runtimeCluster 'provisions'
|
||||
|
||||
autoLayout TopBottom
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
views {
|
||||
|
||||
dynamic view application_deployment_flow {
|
||||
title 'Application Deployment Flow'
|
||||
|
||||
include developer
|
||||
include edp.forgejo
|
||||
include edp.forgejogit
|
||||
include edp.forgejoActions
|
||||
include edp.imageregistry
|
||||
include edp.argoCD
|
||||
include runtimeCluster
|
||||
|
||||
developer -> edp.forgejogit 'git push'
|
||||
edp.forgejogit -> edp.forgejoActions 'triggers'
|
||||
edp.forgejoActions -> edp.imageregistry 'push image'
|
||||
edp.forgejogit -> edp.argoCD 'watches manifests'
|
||||
edp.argoCD -> runtimeCluster 'deploys'
|
||||
|
||||
autoLayout TopBottom
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue