feat(c4-arch): added cicd-outerloop dynamic view
This commit is contained in:
parent
1192c02435
commit
c37cff7665
9 changed files with 102 additions and 7 deletions
BIN
likec4/doc/developer-landscape/cicd-outerloop-2.png
Normal file
BIN
likec4/doc/developer-landscape/cicd-outerloop-2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 71 KiB |
BIN
likec4/doc/developer-landscape/cicd-outerloop-draft.png
Normal file
BIN
likec4/doc/developer-landscape/cicd-outerloop-draft.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 467 KiB |
BIN
likec4/doc/developer-landscape/cicd-outerloop.png
Normal file
BIN
likec4/doc/developer-landscape/cicd-outerloop.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 88 KiB |
|
@ -6,12 +6,31 @@
|
|||
|
||||
* [What software delivery leaders need to know about inner & outer loops](https://curiositysoftware.medium.com/what-software-delivery-leaders-need-to-know-about-inner-outer-loops-9da765b0ca2c)
|
||||
|
||||
## Draft
|
||||
* (original articale is here](https://www.curiositysoftware.ie/blog/software-delivery-leaders-guide-inner-outer-loops)
|
||||
|
||||
## Landscape
|
||||
|
||||
### Draft
|
||||
|
||||

|
||||
|
||||
## C4 Result
|
||||
### C4
|
||||
|
||||
See [developer-landscape](../../views/landscape.c4)
|
||||
|
||||

|
||||

|
||||
|
||||
## CI/CD Outerloop
|
||||
|
||||
### Draft
|
||||
|
||||

|
||||
|
||||
ArgoCD and Cloud are CD, Forgejo is CI
|
||||
|
||||
### C4
|
||||
|
||||

|
||||
|
||||

|
BIN
likec4/doc/developer-landscape/developer-landscape-view-c4-2.png
Normal file
BIN
likec4/doc/developer-landscape/developer-landscape-view-c4-2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 121 KiB |
|
@ -9,12 +9,26 @@ model {
|
|||
collaboration and ticketing
|
||||
and security scanning
|
||||
'
|
||||
component forgejo 'Forgejo' {
|
||||
technology 'Golang'
|
||||
icon tech:go
|
||||
|
||||
component forgejo 'Git' {
|
||||
// this is ugly ... basically there should be a logical git component type
|
||||
// which gets deployed and then can have multiple deployed repos
|
||||
component application_gitrepo 'Git App Repo' {
|
||||
description 'Git Application Repository'
|
||||
technology 'Git'
|
||||
icon tech:git
|
||||
}
|
||||
component applicationspec_gitrepo 'Git AppSpec Repo' {
|
||||
description 'Git Application Specification Repository'
|
||||
technology 'Git'
|
||||
icon tech:git
|
||||
}
|
||||
}
|
||||
|
||||
component forgejoRunner 'CI Runner' {
|
||||
component forgejoRunner 'Forgejo Actions' {
|
||||
description 'Continuous Integration like Github Actions'
|
||||
technology 'Golang'
|
||||
icon tech:go
|
||||
style {
|
||||
|
@ -22,6 +36,12 @@ model {
|
|||
}
|
||||
}
|
||||
|
||||
component imageregistry 'OCI Image Registry' {
|
||||
description 'Container Image Registry'
|
||||
technology 'Golang'
|
||||
icon tech:go
|
||||
}
|
||||
|
||||
forgejoRunner -> forgejo 'executes pipelines'
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,5 +12,11 @@ model {
|
|||
color primary
|
||||
}
|
||||
}
|
||||
|
||||
git = component 'git' {
|
||||
description 'local git'
|
||||
technology 'Git'
|
||||
icon tech:git
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
24
likec4/models/deployment/git.c4
Normal file
24
likec4/models/deployment/git.c4
Normal file
|
@ -0,0 +1,24 @@
|
|||
deployment {
|
||||
|
||||
environment apprepo 'application_repo' {
|
||||
description 'Git repository for application'
|
||||
technology 'Git'
|
||||
icon tech:git
|
||||
instanceOf edp.forgejo.application_gitrepo
|
||||
}
|
||||
environment appspecrepo 'appspec_repo' {
|
||||
description 'Git repository for application specification'
|
||||
technology 'Git'
|
||||
icon tech:git
|
||||
instanceOf edp.forgejo.application_gitrepo
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
views {
|
||||
deployment view view_git_35 {
|
||||
title 'Untitled'
|
||||
|
||||
include apprepo, appspecrepo
|
||||
}
|
||||
}
|
26
likec4/views/gitops-inner-outer-loop.c4
Normal file
26
likec4/views/gitops-inner-outer-loop.c4
Normal file
|
@ -0,0 +1,26 @@
|
|||
views {
|
||||
dynamic view view_gitops-inner-outer-loop_15 {
|
||||
title 'outer-ci-loop'
|
||||
|
||||
include localbox, edp
|
||||
include edp.forgejo with {
|
||||
color gray
|
||||
title 'Forgejo'
|
||||
}
|
||||
|
||||
style edp._ {
|
||||
color secondary
|
||||
}
|
||||
|
||||
localbox.git -> edp.forgejo.forgejo.application_gitrepo 'git push'
|
||||
edp.forgejo.forgejo.application_gitrepo -> edp.forgejoRunner 'on push'
|
||||
|
||||
edp.forgejoRunner -> edp.forgejo.imageregistry 'pushes new image'
|
||||
edp.forgejoRunner -> edp.forgejo.forgejo.applicationspec_gitrepo 'pushes new appspec'
|
||||
|
||||
edp.forgejo.forgejo.applicationspec_gitrepo -> edp.argoCD 'triggers deployment'
|
||||
edp.argoCD -> cloud 'deploys application'
|
||||
cloud -> edp.forgejo.imageregistry 'pulls image'
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in a new issue