website-and-documentation/resources/edp-likec4/deployment/kind/edp.c4
Stephan Lo 3239cfbc62 refactor(architecture): reorganize LikeC4 projects and consolidate webcomponents
Renamed resources/likec4 to resources/edp-likec4 to better reflect that this
directory contains the Enterprise Developer Platform architecture models,
not documentation platform architecture.

Extended element kinds in edp-likec4/models/spec.c4 to support documentation
platform modeling:
- Added person, tool, process, repository element kinds
- These allow modeling of documentation workflows and processes

Consolidated webcomponent generation:
- Combined both architecture projects (edp-likec4 and doc-likec4) into a
  single webcomponent output at static/js/likec4-webcomponent.js
- Updated Taskfile.yml to generate from edp-likec4 directory
- Removed duplicate webcomponent script loading in head-end.html
- Fixed CustomElementRegistry duplicate registration issue

Embedded TeleNeoOffice corporate fonts:
- Added font files to static/fonts/ and static/ root
- Required for correct rendering of diagrams in webcomponent
- Fonts are embedded in webcomponent but also served from Hugo static paths
- Fixed 404 errors for font loading

Updated architecture documentation:
- Fixed markdown linting issues (trailing spaces, fence spacing)
- Updated all references from resources/likec4 to resources/edp-likec4
- Enhanced setup.md with correct directory structure

This refactoring enables:
1. Clear separation between EDP architecture and documentation platform models
2. Single consolidated webcomponent containing all architecture views
3. Proper font loading for corporate branding in diagrams
4. Foundation for future architecture documentation expansion

Breaking changes: None (paths updated in documentation)
2025-11-07 11:50:17 +01:00

86 lines
2.2 KiB
Text

// Deployment model
deployment {
environment local 'Local kind-cluster' {
description 'Local kind-cluster environment for EDP, typically run by edpbuilder'
technology 'Kind'
icon tech:kubernetes
namespace backstage {
instanceOf edp.ui.backstage
instanceOf edp.ui.database
}
namespace argocd {
instanceOf edp.argoCD.argocdAppController
instanceOf edp.argoCD.argocdAppSetController
instanceOf edp.argoCD.argocdRedis
instanceOf edp.argoCD.argocdRepoServer
instanceOf edp.argoCD.argocdServer
}
namespace gitea {
instanceOf edp.forgejo
instanceOf forgejoRunner
}
namespace keycloak {
instanceOf edp.keycloak.keycloak
instanceOf edp.keycloak.keycloakDB
}
namespace crossplane 'crossplane-system' {
instanceOf edp.crossplane.crossplane
instanceOf edp.crossplane.crossplaneFunction
instanceOf edp.crossplane.crossplaneRbacManager
instanceOf edp.crossplane.providerArgoCD
instanceOf edp.crossplane.providerKind
instanceOf edp.crossplane.providerShell
}
namespace externalSecrets 'external-secrets' {
instanceOf edp.externalSecrets.certController
instanceOf edp.externalSecrets.externalSecrets
instanceOf edp.externalSecrets.webhook
}
namespace velero {
instanceOf edp.velero.velero
}
namespace minio 'minio-backup' {
instanceOf edp.minio.minio
}
namespace monitoring {
instanceOf edp.monitoring.alloy
instanceOf edp.monitoring.distributor
instanceOf edp.monitoring.gateway
instanceOf edp.monitoring.ingestor
instanceOf edp.monitoring.querier
instanceOf edp.monitoring.queryFrontend
}
namespace ingressNginx 'ingress-nginx'{
instanceOf edp.ingressNginx.ingressNginx
}
namespace openbao 'openbao' {
instanceOf edp.openbao.openbao
instanceOf edp.openbao.agentInjector
}
namespace fibonacci 'fibonacci-app' {
instanceOf edp.testApp.fibonacci
}
namespace mailhog 'mailhog' {
instanceOf edp.mailhog.mailhog
}
namespace spark 'spark' {
instanceOf edp.spark.sparkoperator
}
}
}