-
Notifications
You must be signed in to change notification settings - Fork 0
/
artifacts-repo.drawio
82 lines (82 loc) · 7.82 KB
/
artifacts-repo.drawio
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
<mxfile host="Electron" modified="2023-09-19T01:48:55.396Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/21.7.5 Chrome/114.0.5735.289 Electron/25.8.1 Safari/537.36" etag="Du6B4uERcXudhpAfSSZg" version="21.7.5" type="device">
<diagram name="第 1 页" id="aNOy_0bnumjarbj2fQwa">
<mxGraphModel dx="1101" dy="752" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="826" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="AIhtDNjgpqZSeVCNlgIg-24" value="" style="shape=ext;double=0;rounded=0;whiteSpace=wrap;html=1;dashed=1;dashPattern=8 8;" parent="1" vertex="1">
<mxGeometry x="355" y="260" width="350" height="440" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-1" value="<font style="font-size: 14px;">Jenkins build server<br>('Jenkinsfile', in Groovy lang)</font>" style="shape=ext;double=1;rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="105" y="290" width="200" height="80" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-2" value="<font style="font-size: 14px;">Nginx<br>(Reverse proxy)</font>" style="shape=ext;double=1;rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="430" y="290" width="200" height="80" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-3" value="<font style="font-size: 14px;">Actix-web<br>(App server, in Rust lang)</font>" style="shape=ext;double=1;rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="430" y="394" width="200" height="80" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-4" value="<font style="font-size: 14px;">Diesel-ORM<br>(ORM, in Rust lang)</font>" style="shape=ext;double=1;rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="430" y="498" width="200" height="80" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-8" value="" style="group" parent="1" vertex="1" connectable="0">
<mxGeometry x="450" y="590" width="175" height="104" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-6" value="" style="shape=datastore;whiteSpace=wrap;html=1;" parent="AIhtDNjgpqZSeVCNlgIg-8" vertex="1">
<mxGeometry x="50" width="60" height="60" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-7" value="<font style="font-size: 14px;">PostgreSQL, the database</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="AIhtDNjgpqZSeVCNlgIg-8" vertex="1">
<mxGeometry x="-15" y="74" width="190" height="30" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-10" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="AIhtDNjgpqZSeVCNlgIg-6" target="AIhtDNjgpqZSeVCNlgIg-4" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-12" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="AIhtDNjgpqZSeVCNlgIg-3" target="AIhtDNjgpqZSeVCNlgIg-4" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="540" y="836" as="sourcePoint" />
<mxPoint x="540" y="750" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-13" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="AIhtDNjgpqZSeVCNlgIg-2" target="AIhtDNjgpqZSeVCNlgIg-3" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="550" y="846" as="sourcePoint" />
<mxPoint x="550" y="760" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-14" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=classic;startFill=1;" parent="1" source="AIhtDNjgpqZSeVCNlgIg-2" target="AIhtDNjgpqZSeVCNlgIg-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="560" y="856" as="sourcePoint" />
<mxPoint x="560" y="770" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-15" value="<font style="font-size: 14px;">JSON<br>(HTTP POST)</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="305" y="285" width="110" height="50" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-17" value="<font style="font-size: 14px;">Download website for human<br>(Angular, in JavaScript/TypeScript lang)</font>" style="shape=ext;double=1;rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="755" y="290" width="200" height="80" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-18" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=classic;startFill=1;" parent="1" source="AIhtDNjgpqZSeVCNlgIg-17" target="AIhtDNjgpqZSeVCNlgIg-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="440" y="340" as="sourcePoint" />
<mxPoint x="290" y="340" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-20" value="<font style="font-size: 14px;">Programmatic bots<br>(In any language)</font>" style="shape=ext;double=1;rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="755" y="130" width="200" height="80" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-21" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=classic;startFill=1;" parent="1" source="AIhtDNjgpqZSeVCNlgIg-20" target="AIhtDNjgpqZSeVCNlgIg-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="765" y="340" as="sourcePoint" />
<mxPoint x="640" y="340" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-22" value="<font style="font-size: 14px;">JSON<br>(Restful API)</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="645" y="275" width="100" height="50" as="geometry" />
</mxCell>
<mxCell id="AIhtDNjgpqZSeVCNlgIg-25" value="<b><font style="font-size: 24px;">The artifacts-repo restful api backend</font></b>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="305" y="700" width="450" height="40" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>