edp-doc/likec4/deployment/otc-edp-foundry.c4

67 lines
1.8 KiB
Text
Raw Normal View History

2025-05-06 10:55:44 +00:00
// Deployment model
deployment {
cloud otc-edpFoundry 'OTC EDP Foundry kubernetes clusters' {
description '
OTC kubernetes cluster environment for EDP Foundry, set up by IaC terraform.
A tenant is a folder in Foundry-Config-Forgejo. On merge triggers reconciliation to EDP.
Optionally we will have a WebUI/API/CLI
'
2025-05-06 10:55:44 +00:00
technology 'OTC'
kubernetes cce 'OTC CCE' {
description 'OTC Container Cluster Engine'
icon tech:kubernetes
technology 'Kubernetes'
cluster internalServices 'EDP Foundry Internal Services' {
instanceOf edp.argoCD
instanceOf edp.forgejo {
-> workflowSetupEDPInfrastructure.forgejoRunner 'invokes'
-> workflowSetupArgoCD.forgejoRunner 'invokes'
}
instanceOf edp.externalSecrets
instanceOf edp.openbao
instanceOf edp.ingressNginx
}
2025-05-06 10:55:44 +00:00
cluster centralObservability 'EDP Foundry Central Observability' {
instanceOf edp.grafana
instanceOf edp.prometheus
instanceOf edp.loki
}
2025-05-06 10:55:44 +00:00
}
node workflowSetupEDPInfrastructure 'EDP infrastructure Workflow' {
description 'EDP infrastructure Workflow'
instanceOf forgejoRunner {
-> forgejoRunnerWorker 'runs'
}
instanceOf forgejoRunnerWorker {
-> edpworkflow 'executes'
}
instanceOf edpworkflow {
-> otc-edp-per-tenant.cce.edp 'deploys edp to otc.cce'
-> otc-edp-per-tenant.cloudServices 'deploys edp to otc.paas'
}
}
node workflowSetupArgoCD 'EDP ArgoCD Workflow' {
description 'EDP Setup ArgoCD Workflow'
instanceOf forgejoRunner {
-> forgejoRunnerWorker 'runs'
}
instanceOf forgejoRunnerWorker {
-> edpworkflow 'executes'
}
instanceOf edpworkflow {
-> otc-edp-per-tenant.cce.argoCD
}
}
2025-05-06 10:55:44 +00:00
}
}