74 lines
2.3 KiB
Text
74 lines
2.3 KiB
Text
// Deployment model
|
|
deployment {
|
|
|
|
cloud otc-edpFoundry 'OTC EDP Foundry Central Service clusters' {
|
|
description '
|
|
OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder.
|
|
|
|
A tenant is a folder in Foundry-Config-Forgejo. On merge triggers reconciliation to EDP.
|
|
Optionally we will have a WebUI/API/CLI
|
|
'
|
|
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'
|
|
-> workflowSetupArgoCDInfrastructure.forgejoRunner 'invokes'
|
|
}
|
|
instanceOf edp.externalSecrets
|
|
instanceOf edp.openbao
|
|
instanceOf edp.ingressNginx
|
|
}
|
|
|
|
cluster centralObservability 'EDP Foundry Central Observability' {
|
|
instanceOf edp.grafana
|
|
instanceOf edp.prometheus
|
|
instanceOf edp.loki
|
|
}
|
|
}
|
|
computeressource 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'
|
|
|
|
}
|
|
}
|
|
|
|
computeressource workflowSetupArgoCDInfrastructure 'EDP ArgoCD Workflow' {
|
|
description 'EDP Setup ArgoCD Workflow'
|
|
instanceOf forgejoRunner {
|
|
-> forgejoRunnerWorker 'runs'
|
|
}
|
|
instanceOf forgejoRunnerWorker {
|
|
-> edpworkflow 'executes'
|
|
}
|
|
instanceOf edpworkflow {
|
|
-> otc-edp-per-tenant.cce.argoCD
|
|
|
|
}
|
|
}
|
|
|
|
computeressource forgejoRunnerInfrastructure 'EDP ForgejoRunner infrastructure' {
|
|
description 'Infrastructure for Forgejo runners like pods, vms, lxds, etc'
|
|
instanceOf forgejoRunner {
|
|
-> cce.internalServices.forgejo 'registers'
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|