-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path101.dsl
140 lines (118 loc) · 3.34 KB
/
101.dsl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# Comment
workspace "name" "description" {
!identifiers hierarchical
!impliedRelationships false
!docs .
# Comment
model {
# Comment
user = person "name" "description" "tags"
enterprise "name" {
# Comment
system1 = softwareSystem "name" "description" "tags" {
# Comment
container1 = container "name" "description" "technology" "tags" {
# Comment
url https://container.com/
component1 = component "name" "description" "technology" "tags" {
# Comment
}
component2 = component "name" "description" "technology" "tags" {
}
}
container2 = container "name" "description" "technology" "tags" {
}
}
}
system2 = softwareSystem "name" "description" "tags" {
}
system3 = softwareSystem "name" "description" "tags" {
# Comment
url http://softwareSystem.com/
container1 = container "name" "description" "technology" "tags" {
# Comment
component1 = component "name" "description" "technology" "tags" {
# Comment
}
}
}
#region Relationships
user -> system1 "description" "technology" "tags"
system1.container1 -> system3.container1 "description" "technology" "tags"
system1.container1.component1 -> system3.container1.component1 "description" "technology" "tags"
#endregion
# Complement model by importing fragment
!include ref.model.dslf
# Amend fragment
!ref ref {
tags "#external"
}
# Plug fragment into ecosystem
system1 -> ref "description" "technology" "tags"
system1.container1 -> ref "description" "technology" "tags"
dep_ = deploymentEnvironment "name" {
# Comment
group_ = deploymentGroup "name"
dep1_ = deploymentNode "name" "description" "technology" "tags" 2 {
}
dep2_ = deploymentNode "name" "description" "technology" "tags" 2 {
deploymentNode "name" "description" "technology" "tags" 34 {
container11_ = containerInstance system1.container1 group_ "tags" {
}
}
}
dep3_ = deploymentNode "name" "description" "technology" "tags" 2 {
# Comment
dep1_ = deploymentNode "name" "description" "technology" "tags" 9 {
# Comment
container11_ = containerInstance system1.container1 group_ "tags" {
}
system1_ = softwareSystemInstance system1 "" "tags" {
}
container31_ = containerInstance system3.container1 group_ "tags" {
# Comment
url https://containerInstance.com/
healthCheck "description" http://healthCheck.com/ 60 0
}
system2_ = softwareSystemInstance system2 "" "tags" {
healthCheck "description" https://healthCheck.com/ 60 0
url http://softwareSystemInstance.com/
# Comment
}
inf_ = infrastructureNode "name" "description" "technology" "tags"
}
}
}
}
views {
theme https://raw.githubusercontent.com/rvr06/cornifer-contrib/main/themes/semantic-alt/theme.json
styles {
element "tag_name" {
colour #color_code
}
relationship "tag_name" {
colour #color_code
}
}
# C4.L
systemLandscape "name" "description" {
include *
}
# C4.1
systemContext overwatch "name" "description" {
include *
}
# C4.2
container overwatch "name" "description" {
include *
}
# C4.3
component overwatch.api "name" "description" {
include *
}
# C4.D
deployment * identifier_ "name" "description" {
include *
}
}
}