cyberia 3.0.3 → 3.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/{.env.production → .env.example} +20 -4
  2. package/.github/workflows/engine-cyberia.cd.yml +43 -10
  3. package/.github/workflows/engine-cyberia.ci.yml +48 -26
  4. package/.github/workflows/ghpkg.ci.yml +5 -5
  5. package/.github/workflows/gitlab.ci.yml +1 -1
  6. package/.github/workflows/hardhat.ci.yml +82 -0
  7. package/.github/workflows/npmpkg.ci.yml +60 -14
  8. package/.github/workflows/publish.ci.yml +26 -7
  9. package/.github/workflows/publish.cyberia.ci.yml +5 -5
  10. package/.github/workflows/pwa-microservices-template-page.cd.yml +6 -7
  11. package/.github/workflows/pwa-microservices-template-test.ci.yml +4 -4
  12. package/.github/workflows/release.cd.yml +14 -8
  13. package/.vscode/extensions.json +9 -8
  14. package/.vscode/settings.json +3 -2
  15. package/CHANGELOG.md +643 -1
  16. package/CLI-HELP.md +132 -57
  17. package/Dockerfile +4 -2
  18. package/README.md +347 -22
  19. package/WHITE-PAPER.md +1540 -0
  20. package/bin/build.js +21 -12
  21. package/bin/cyberia.js +2640 -106
  22. package/bin/deploy.js +258 -372
  23. package/bin/file.js +5 -1
  24. package/bin/index.js +2640 -106
  25. package/bin/vs.js +3 -3
  26. package/conf.js +169 -105
  27. package/deployment.yaml +236 -20
  28. package/hardhat/.env.example +31 -0
  29. package/hardhat/README.md +531 -0
  30. package/hardhat/WHITE-PAPER.md +1540 -0
  31. package/hardhat/contracts/ObjectLayerToken.sol +391 -0
  32. package/hardhat/deployments/.gitkeep +0 -0
  33. package/hardhat/deployments/hardhat-ObjectLayerToken.json +11 -0
  34. package/hardhat/hardhat.config.js +136 -0
  35. package/hardhat/ignition/modules/ObjectLayerToken.js +21 -0
  36. package/hardhat/networks/besu-object-layer.network.json +138 -0
  37. package/hardhat/package-lock.json +4323 -0
  38. package/hardhat/package.json +36 -0
  39. package/hardhat/scripts/deployObjectLayerToken.js +98 -0
  40. package/hardhat/test/ObjectLayerToken.js +592 -0
  41. package/hardhat/types/ethers-contracts/ObjectLayerToken.ts +690 -0
  42. package/hardhat/types/ethers-contracts/common.ts +92 -0
  43. package/hardhat/types/ethers-contracts/factories/ObjectLayerToken__factory.ts +1055 -0
  44. package/hardhat/types/ethers-contracts/factories/index.ts +4 -0
  45. package/hardhat/types/ethers-contracts/hardhat.d.ts +47 -0
  46. package/hardhat/types/ethers-contracts/index.ts +6 -0
  47. package/jsdoc.dd-cyberia.json +68 -0
  48. package/jsdoc.json +65 -49
  49. package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +5 -4
  50. package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +5 -4
  51. package/manifests/deployment/dd-cyberia-development/deployment.yaml +562 -0
  52. package/manifests/deployment/dd-cyberia-development/proxy.yaml +297 -0
  53. package/manifests/deployment/dd-cyberia-development/pv-pvc.yaml +132 -0
  54. package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
  55. package/manifests/deployment/dd-test-development/deployment.yaml +88 -74
  56. package/manifests/deployment/dd-test-development/proxy.yaml +13 -4
  57. package/manifests/deployment/playwright/deployment.yaml +1 -1
  58. package/manifests/pv-pvc-dd.yaml +1 -1
  59. package/nodemon.json +1 -1
  60. package/package.json +60 -48
  61. package/proxy.yaml +118 -10
  62. package/pv-pvc.yaml +132 -0
  63. package/scripts/k3s-node-setup.sh +1 -1
  64. package/scripts/ports-ls.sh +2 -0
  65. package/scripts/rhel-grpc-setup.sh +56 -0
  66. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.controller.js +47 -1
  67. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.model.js +17 -2
  68. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.router.js +5 -0
  69. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.service.js +80 -7
  70. package/src/api/cyberia-dialogue/cyberia-dialogue.controller.js +93 -0
  71. package/src/api/cyberia-dialogue/cyberia-dialogue.model.js +36 -0
  72. package/src/api/cyberia-dialogue/cyberia-dialogue.router.js +29 -0
  73. package/src/api/cyberia-dialogue/cyberia-dialogue.service.js +51 -0
  74. package/src/api/cyberia-entity/cyberia-entity.controller.js +74 -0
  75. package/src/api/cyberia-entity/cyberia-entity.model.js +24 -0
  76. package/src/api/cyberia-entity/cyberia-entity.router.js +27 -0
  77. package/src/api/cyberia-entity/cyberia-entity.service.js +42 -0
  78. package/src/api/cyberia-instance/cyberia-fallback-world.js +368 -0
  79. package/src/api/cyberia-instance/cyberia-instance.controller.js +92 -0
  80. package/src/api/cyberia-instance/cyberia-instance.model.js +84 -0
  81. package/src/api/cyberia-instance/cyberia-instance.router.js +63 -0
  82. package/src/api/cyberia-instance/cyberia-instance.service.js +191 -0
  83. package/src/api/cyberia-instance/cyberia-portal-connector.js +486 -0
  84. package/src/api/cyberia-instance-conf/cyberia-instance-conf.controller.js +74 -0
  85. package/src/api/cyberia-instance-conf/cyberia-instance-conf.defaults.js +413 -0
  86. package/src/api/cyberia-instance-conf/cyberia-instance-conf.model.js +228 -0
  87. package/src/api/cyberia-instance-conf/cyberia-instance-conf.router.js +27 -0
  88. package/src/api/cyberia-instance-conf/cyberia-instance-conf.service.js +42 -0
  89. package/src/api/cyberia-map/cyberia-map.controller.js +79 -0
  90. package/src/api/cyberia-map/cyberia-map.model.js +30 -0
  91. package/src/api/cyberia-map/cyberia-map.router.js +40 -0
  92. package/src/api/cyberia-map/cyberia-map.service.js +74 -0
  93. package/src/api/document/document.service.js +1 -1
  94. package/src/api/file/file.controller.js +3 -1
  95. package/src/api/file/file.ref.json +18 -0
  96. package/src/api/file/file.service.js +28 -5
  97. package/src/api/ipfs/ipfs.controller.js +4 -25
  98. package/src/api/ipfs/ipfs.model.js +43 -34
  99. package/src/api/ipfs/ipfs.router.js +8 -13
  100. package/src/api/ipfs/ipfs.service.js +56 -104
  101. package/src/api/object-layer/README.md +347 -22
  102. package/src/api/object-layer/object-layer.controller.js +6 -2
  103. package/src/api/object-layer/object-layer.model.js +12 -8
  104. package/src/api/object-layer/object-layer.router.js +698 -42
  105. package/src/api/object-layer/object-layer.service.js +119 -37
  106. package/src/api/object-layer-render-frames/object-layer-render-frames.model.js +1 -2
  107. package/src/api/user/user.router.js +10 -5
  108. package/src/api/user/user.service.js +15 -14
  109. package/src/cli/baremetal.js +6 -10
  110. package/src/cli/cloud-init.js +0 -3
  111. package/src/cli/cluster.js +7 -7
  112. package/src/cli/db.js +723 -857
  113. package/src/cli/deploy.js +215 -105
  114. package/src/cli/env.js +34 -5
  115. package/src/cli/fs.js +5 -4
  116. package/src/cli/image.js +0 -3
  117. package/src/cli/index.js +83 -15
  118. package/src/cli/kubectl.js +211 -0
  119. package/src/cli/monitor.js +5 -6
  120. package/src/cli/release.js +284 -0
  121. package/src/cli/repository.js +708 -62
  122. package/src/cli/run.js +371 -151
  123. package/src/cli/secrets.js +73 -2
  124. package/src/cli/ssh.js +1 -1
  125. package/src/cli/test.js +3 -3
  126. package/src/client/Cryptokoyn.index.js +3 -4
  127. package/src/client/CyberiaPortal.index.js +3 -4
  128. package/src/client/Default.index.js +3 -4
  129. package/src/client/Itemledger.index.js +4 -963
  130. package/src/client/Underpost.index.js +3 -4
  131. package/src/client/components/core/AgGrid.js +20 -5
  132. package/src/client/components/core/Alert.js +2 -2
  133. package/src/client/components/core/AppStore.js +69 -0
  134. package/src/client/components/core/CalendarCore.js +2 -2
  135. package/src/client/components/core/Content.js +22 -3
  136. package/src/client/components/core/Docs.js +30 -6
  137. package/src/client/components/core/DropDown.js +137 -17
  138. package/src/client/components/core/FileExplorer.js +71 -4
  139. package/src/client/components/core/Input.js +1 -1
  140. package/src/client/components/core/Keyboard.js +2 -2
  141. package/src/client/components/core/LogIn.js +2 -2
  142. package/src/client/components/core/LogOut.js +2 -2
  143. package/src/client/components/core/Modal.js +20 -7
  144. package/src/client/components/core/Panel.js +0 -1
  145. package/src/client/components/core/PanelForm.js +19 -19
  146. package/src/client/components/core/RichText.js +1 -2
  147. package/src/client/components/core/SocketIo.js +82 -29
  148. package/src/client/components/core/SocketIoHandler.js +75 -0
  149. package/src/client/components/core/Stream.js +143 -95
  150. package/src/client/components/core/Webhook.js +40 -7
  151. package/src/client/components/cryptokoyn/AppStoreCryptokoyn.js +5 -0
  152. package/src/client/components/cryptokoyn/LogInCryptokoyn.js +3 -3
  153. package/src/client/components/cryptokoyn/LogOutCryptokoyn.js +2 -2
  154. package/src/client/components/cryptokoyn/MenuCryptokoyn.js +3 -3
  155. package/src/client/components/cryptokoyn/SocketIoCryptokoyn.js +3 -51
  156. package/src/client/components/cyberia/InstanceEngineCyberia.js +700 -0
  157. package/src/client/components/cyberia/MapEngineCyberia.js +1359 -2
  158. package/src/client/components/cyberia/ObjectLayerEngineModal.js +17 -6
  159. package/src/client/components/cyberia/ObjectLayerEngineViewer.js +92 -54
  160. package/src/client/components/cyberia-portal/AppStoreCyberiaPortal.js +5 -0
  161. package/src/client/components/cyberia-portal/CommonCyberiaPortal.js +217 -30
  162. package/src/client/components/cyberia-portal/CssCyberiaPortal.js +44 -2
  163. package/src/client/components/cyberia-portal/LogInCyberiaPortal.js +3 -4
  164. package/src/client/components/cyberia-portal/LogOutCyberiaPortal.js +2 -2
  165. package/src/client/components/cyberia-portal/MenuCyberiaPortal.js +104 -9
  166. package/src/client/components/cyberia-portal/RoutesCyberiaPortal.js +5 -0
  167. package/src/client/components/cyberia-portal/SocketIoCyberiaPortal.js +3 -49
  168. package/src/client/components/cyberia-portal/TranslateCyberiaPortal.js +4 -0
  169. package/src/client/components/default/AppStoreDefault.js +5 -0
  170. package/src/client/components/default/LogInDefault.js +3 -3
  171. package/src/client/components/default/LogOutDefault.js +2 -2
  172. package/src/client/components/default/MenuDefault.js +5 -5
  173. package/src/client/components/default/SocketIoDefault.js +3 -51
  174. package/src/client/components/itemledger/AppStoreItemledger.js +5 -0
  175. package/src/client/components/itemledger/LogInItemledger.js +3 -3
  176. package/src/client/components/itemledger/LogOutItemledger.js +2 -2
  177. package/src/client/components/itemledger/MenuItemledger.js +3 -3
  178. package/src/client/components/itemledger/SocketIoItemledger.js +3 -51
  179. package/src/client/components/underpost/AppStoreUnderpost.js +5 -0
  180. package/src/client/components/underpost/CssUnderpost.js +59 -0
  181. package/src/client/components/underpost/LogInUnderpost.js +6 -3
  182. package/src/client/components/underpost/LogOutUnderpost.js +4 -2
  183. package/src/client/components/underpost/MenuUnderpost.js +104 -18
  184. package/src/client/components/underpost/RoutesUnderpost.js +2 -0
  185. package/src/client/components/underpost/SocketIoUnderpost.js +3 -51
  186. package/src/client/public/cryptokoyn/assets/logo/base-icon.png +0 -0
  187. package/src/client/public/cryptokoyn/browserconfig.xml +12 -0
  188. package/src/client/public/cryptokoyn/microdata.json +85 -0
  189. package/src/client/public/cryptokoyn/site.webmanifest +57 -0
  190. package/src/client/public/cryptokoyn/sitemap +3 -3
  191. package/src/client/public/default/sitemap +3 -3
  192. package/src/client/public/itemledger/browserconfig.xml +2 -2
  193. package/src/client/public/itemledger/manifest.webmanifest +4 -4
  194. package/src/client/public/itemledger/microdata.json +71 -0
  195. package/src/client/public/itemledger/sitemap +3 -3
  196. package/src/client/public/itemledger/yandex-browser-manifest.json +2 -2
  197. package/src/client/public/test/sitemap +3 -3
  198. package/src/client/services/core/core.service.js +20 -8
  199. package/src/client/services/cyberia-dialogue/cyberia-dialogue.service.js +105 -0
  200. package/src/client/services/cyberia-entity/cyberia-entity.management.js +57 -0
  201. package/src/client/services/cyberia-entity/cyberia-entity.service.js +105 -0
  202. package/src/client/services/cyberia-instance/cyberia-instance.management.js +194 -0
  203. package/src/client/services/cyberia-instance/cyberia-instance.service.js +122 -0
  204. package/src/client/services/cyberia-instance-conf/cyberia-instance-conf.service.js +105 -0
  205. package/src/client/services/cyberia-map/cyberia-map.management.js +193 -0
  206. package/src/client/services/cyberia-map/cyberia-map.service.js +126 -0
  207. package/src/client/services/instance/instance.management.js +2 -2
  208. package/src/client/services/ipfs/ipfs.service.js +3 -23
  209. package/src/client/services/object-layer/object-layer.management.js +3 -3
  210. package/src/client/services/object-layer/object-layer.service.js +21 -0
  211. package/src/client/services/user/user.management.js +2 -2
  212. package/src/client/ssr/body/404.js +15 -11
  213. package/src/client/ssr/body/500.js +15 -11
  214. package/src/client/ssr/body/SwaggerDarkMode.js +285 -0
  215. package/src/client/ssr/head/PwaItemledger.js +60 -0
  216. package/src/client/ssr/offline/NoNetworkConnection.js +11 -10
  217. package/src/client/ssr/pages/CyberiaServerMetrics.js +1 -1
  218. package/src/client/ssr/pages/Test.js +11 -10
  219. package/src/client.build.js +0 -3
  220. package/src/client.dev.js +0 -3
  221. package/src/db/DataBaseProvider.js +17 -2
  222. package/src/db/mariadb/MariaDB.js +14 -9
  223. package/src/db/mongo/MongooseDB.js +17 -1
  224. package/src/grpc/cyberia/OFF_CHAIN_ECONOMY.md +305 -0
  225. package/src/grpc/cyberia/README.md +326 -0
  226. package/src/grpc/cyberia/grpc-server.js +530 -0
  227. package/src/index.js +24 -1
  228. package/src/proxy.js +0 -3
  229. package/src/runtime/express/Dockerfile +4 -0
  230. package/src/runtime/express/Express.js +33 -10
  231. package/src/runtime/lampp/Dockerfile +13 -2
  232. package/src/runtime/lampp/Lampp.js +33 -17
  233. package/src/runtime/wp/Dockerfile +68 -0
  234. package/src/runtime/wp/Wp.js +639 -0
  235. package/src/server/auth.js +36 -15
  236. package/src/server/backup.js +39 -12
  237. package/src/server/besu-genesis-generator.js +1630 -0
  238. package/src/server/client-build-docs.js +133 -17
  239. package/src/server/client-build-live.js +9 -18
  240. package/src/server/client-build.js +229 -101
  241. package/src/server/client-dev-server.js +14 -13
  242. package/src/server/client-formatted.js +109 -57
  243. package/src/server/conf.js +391 -164
  244. package/src/server/cron.js +27 -24
  245. package/src/server/dns.js +29 -12
  246. package/src/server/downloader.js +0 -2
  247. package/src/server/ipfs-client.js +24 -1
  248. package/src/server/logger.js +27 -9
  249. package/src/server/object-layer.js +217 -103
  250. package/src/server/peer.js +8 -2
  251. package/src/server/process.js +1 -50
  252. package/src/server/proxy.js +4 -8
  253. package/src/server/runtime.js +30 -9
  254. package/src/server/semantic-layer-generator-floor.js +359 -0
  255. package/src/server/semantic-layer-generator-skin.js +1294 -0
  256. package/src/server/semantic-layer-generator.js +116 -555
  257. package/src/server/ssr.js +0 -3
  258. package/src/server/start.js +19 -12
  259. package/src/server/tls.js +0 -2
  260. package/src/server.js +0 -4
  261. package/src/ws/IoInterface.js +1 -10
  262. package/src/ws/IoServer.js +14 -33
  263. package/src/ws/core/channels/core.ws.chat.js +65 -20
  264. package/src/ws/core/channels/core.ws.mailer.js +113 -32
  265. package/src/ws/core/channels/core.ws.stream.js +90 -31
  266. package/src/ws/core/core.ws.connection.js +12 -33
  267. package/src/ws/core/core.ws.emit.js +10 -26
  268. package/src/ws/core/core.ws.server.js +25 -58
  269. package/src/ws/default/channels/default.ws.main.js +53 -12
  270. package/src/ws/default/default.ws.connection.js +26 -13
  271. package/src/ws/default/default.ws.server.js +30 -12
  272. package/.env.development +0 -43
  273. package/.env.test +0 -43
  274. package/hardhat/contracts/CryptoKoyn.sol +0 -59
  275. package/hardhat/contracts/ItemLedger.sol +0 -73
  276. package/hardhat/contracts/Lock.sol +0 -34
  277. package/hardhat/hardhat.config.cjs +0 -45
  278. package/hardhat/ignition/modules/Lock.js +0 -18
  279. package/hardhat/networks/cryptokoyn-itemledger.network.json +0 -29
  280. package/hardhat/scripts/deployCryptokoyn.cjs +0 -25
  281. package/hardhat/scripts/deployItemledger.cjs +0 -25
  282. package/hardhat/test/Lock.js +0 -126
  283. package/hardhat/white-paper.md +0 -581
  284. package/src/client/components/cryptokoyn/CommonCryptokoyn.js +0 -29
  285. package/src/client/components/cryptokoyn/ElementsCryptokoyn.js +0 -38
  286. package/src/client/components/cyberia-portal/ElementsCyberiaPortal.js +0 -38
  287. package/src/client/components/default/ElementsDefault.js +0 -38
  288. package/src/client/components/itemledger/CommonItemledger.js +0 -29
  289. package/src/client/components/itemledger/ElementsItemledger.js +0 -38
  290. package/src/client/components/underpost/CommonUnderpost.js +0 -29
  291. package/src/client/components/underpost/ElementsUnderpost.js +0 -38
  292. package/src/ws/core/management/core.ws.chat.js +0 -8
  293. package/src/ws/core/management/core.ws.mailer.js +0 -16
  294. package/src/ws/core/management/core.ws.stream.js +0 -8
  295. package/src/ws/default/management/default.ws.main.js +0 -8
  296. package/white-paper.md +0 -581
@@ -9,13 +9,22 @@ spec:
9
9
  virtualhost:
10
10
  fqdn: test.nexodev.org
11
11
  routes:
12
+ - conditions:
13
+ - prefix: /wp
14
+
15
+ enableWebsockets: true
16
+ services:
17
+ - name: dd-test-development-blue-service
18
+ port: 4046
19
+ weight: 100
20
+
12
21
  - conditions:
13
22
  - prefix: /
14
23
 
15
24
  enableWebsockets: true
16
25
  services:
17
26
  - name: dd-test-development-blue-service
18
- port: 4030
27
+ port: 4047
19
28
  weight: 100
20
29
 
21
30
  - conditions:
@@ -24,7 +33,7 @@ spec:
24
33
  enableWebsockets: true
25
34
  services:
26
35
  - name: dd-test-development-blue-service
27
- port: 4031
36
+ port: 4048
28
37
  weight: 100
29
38
 
30
39
  ---
@@ -43,7 +52,7 @@ spec:
43
52
  enableWebsockets: true
44
53
  services:
45
54
  - name: dd-test-development-blue-service
46
- port: 4032
55
+ port: 4049
47
56
  weight: 100
48
57
 
49
58
  - conditions:
@@ -52,6 +61,6 @@ spec:
52
61
  enableWebsockets: true
53
62
  services:
54
63
  - name: dd-test-development-blue-service
55
- port: 4033
64
+ port: 4050
56
65
  weight: 100
57
66
 
@@ -14,7 +14,7 @@ spec:
14
14
  spec:
15
15
  containers:
16
16
  - name: playwright
17
- image: mcr.microsoft.com/playwright:v1.58.1-jammy
17
+ image: mcr.microsoft.com/playwright:v1.59.0-jammy
18
18
  command:
19
19
  - /bin/bash
20
20
  - -c
@@ -31,4 +31,4 @@ spec:
31
31
  storageClassName: manual
32
32
  resources:
33
33
  requests:
34
- storage: 1Gi
34
+ storage: 5Gi
package/nodemon.json CHANGED
@@ -2,5 +2,5 @@
2
2
  "watch": ["./src"],
3
3
  "ext": "js",
4
4
  "delay": 0,
5
- "ignore": []
5
+ "ignore": ["src/client/public"]
6
6
  }
package/package.json CHANGED
@@ -2,25 +2,30 @@
2
2
  "type": "module",
3
3
  "main": "src/index.js",
4
4
  "name": "cyberia",
5
- "version": "3.0.3",
5
+ "version": "3.2.5",
6
6
  "description": "Cyberia Engine - Object Layer and Assets Management Microservice",
7
7
  "scripts": {
8
- "start": "env-cmd -f .env.production node --max-old-space-size=8192 src/server",
9
- "build": "node bin/deploy build-full-client",
10
- "test": "env-cmd -f .env.test c8 mocha",
11
- "dev": "env-cmd -f .env.development nodemon src/server",
12
- "dev-img": "env-cmd -f .env.development node src/server",
13
- "prod-img": "env-cmd -f .env.production node src/server",
14
- "dev-api": "env-cmd -f .env.development nodemon --watch src --ignore src/client src/api",
15
- "dev-client": "env-cmd -f .env.development node src/client.dev",
16
- "dev-proxy": "env-cmd -f .env.development node src/proxy proxy",
8
+ "start": "node --max-old-space-size=8192 src/server",
9
+ "build": "node bin client",
10
+ "test": "NODE_ENV=test c8 mocha",
11
+ "dev": "NODE_ENV=development nodemon src/server",
12
+ "dev:container": "NODE_ENV=development node src/server",
13
+ "prod:container": "NODE_ENV=production node src/server",
14
+ "dev:api": "NODE_ENV=development nodemon --watch src --ignore src/client src/api",
15
+ "dev:client": "NODE_ENV=development node src/client.dev",
16
+ "dev:proxy": "NODE_ENV=development node src/proxy proxy",
17
17
  "docs": "jsdoc -c jsdoc.json",
18
- "install-global": "npm install -g jsdoc && npm install -g prettier && npm install -g env-cmd",
19
- "install-test": "npm install -g mocha && npm install -g c8 && npm install -g coveralls",
20
- "install": "npm run install-global && npm run install-test",
18
+ "install:global": "npm install -g jsdoc && npm install -g prettier",
19
+ "install:test": "npm install -g mocha && npm install -g c8 && npm install -g coveralls-next",
20
+ "install": "npm run install:global && npm run install:test",
21
21
  "prettier": "prettier --write .",
22
22
  "fix": "npm audit fix --force && npm audit",
23
- "baremetal": "node bin baremetal --dev --commission --ls --create-machine"
23
+ "baremetal": "node bin baremetal --dev --commission --ls --create-machine",
24
+ "security:secrets": "gitleaks detect --source . --config .gitleaks.toml --report-path ./gitleaks-report.json --report-format json --redact=0",
25
+ "security:secrets:ci": "gitleaks detect --source . --config .gitleaks.toml --redact=1",
26
+ "security:deps": "npm audit",
27
+ "security": "npm run security:secrets:ci && npm run security:deps",
28
+ "clean": "node bin env clean && node bin run clean"
24
29
  },
25
30
  "bin": {
26
31
  "cyberia": "bin/index.js"
@@ -44,67 +49,70 @@
44
49
  },
45
50
  "homepage": "https://github.com/underpostnet/engine-cyberia#readme",
46
51
  "dependencies": {
47
- "@fortawesome/fontawesome-free": "^6.4.2",
48
- "@fullcalendar/rrule": "^6.1.15",
49
- "@neodrag/vanilla": "^2.0.3",
50
- "adm-zip": "^0.5.10",
51
- "ag-grid-community": "^31.3.4",
52
- "axios": "^1.5.1",
53
- "chai": "^5.1.0",
52
+ "@fortawesome/fontawesome-free": "^7.2.0",
53
+ "@fullcalendar/rrule": "^6.1.20",
54
+ "@grpc/grpc-js": "^1.12.5",
55
+ "@grpc/proto-loader": "^0.8.0",
56
+ "@neodrag/vanilla": "^2.3.1",
57
+ "adm-zip": "^0.5.17",
58
+ "ag-grid-community": "^35.2.1",
59
+ "axios": "^1.14.0",
60
+ "chai": "^6.2.2",
54
61
  "clean-jsdoc-theme": "^4.3.0",
55
- "clipboardy": "^4.0.0",
62
+ "clipboardy": "^5.3.1",
56
63
  "cloudinary": "^2.5.1",
57
64
  "colors": "^1.4.0",
58
- "commander": "^12.1.0",
65
+ "commander": "^14.0.3",
59
66
  "compression": "^1.7.4",
60
67
  "cookie-parser": "^1.4.7",
61
- "cors": "^2.8.5",
68
+ "cors": "^2.8.6",
62
69
  "d3": "^7.9.0",
63
- "dotenv": "^16.3.1",
70
+ "dotenv": "^17.4.2",
64
71
  "easymde": "^2.18.0",
65
- "env-cmd": "^10.1.0",
66
- "express": "^4.18.2",
72
+ "esbuild": "^0.28.0",
73
+ "escape-string-regexp": "^5.0.0",
74
+ "express": "^5.2.1",
67
75
  "express-fileupload": "^1.4.3",
68
- "express-rate-limit": "^8.1.0",
69
- "express-slow-down": "^3.0.0",
76
+ "express-rate-limit": "^8.3.2",
77
+ "express-slow-down": "^3.1.0",
70
78
  "fast-json-stable-stringify": "^2.1.0",
71
79
  "favicons": "^7.2.0",
72
- "fs-extra": "^11.1.1",
80
+ "fs-extra": "^11.3.4",
73
81
  "fullcalendar": "^6.1.15",
74
82
  "helmet": "^8.1.0",
75
83
  "html-minifier-terser": "^7.2.0",
76
- "http-proxy-middleware": "^2.0.6",
84
+ "http-proxy-middleware": "^3.0.5",
77
85
  "ignore-walk": "^8.0.0",
78
- "iovalkey": "^0.2.1",
79
- "json-colorizer": "^2.2.2",
80
- "jsonwebtoken": "^9.0.2",
86
+ "iovalkey": "^0.3.3",
87
+ "json-colorizer": "^3.0.1",
88
+ "jsonwebtoken": "^9.0.3",
81
89
  "mariadb": "^3.2.2",
82
- "marked": "^12.0.2",
90
+ "marked": "^18.0.0",
83
91
  "mocha": "^11.3.0",
84
- "mongoose": "^8.9.5",
92
+ "mongoose": "^9.4.1",
85
93
  "morgan": "^1.10.0",
86
- "nodemailer": "^7.0.9",
94
+ "nodemailer": "^8.0.3",
87
95
  "nodemon": "^3.0.1",
88
96
  "peer": "^1.0.2",
89
- "peerjs": "^1.5.2",
97
+ "peerjs": "^1.5.5",
90
98
  "prom-client": "^15.1.2",
91
- "read": "^2.1.0",
99
+ "read": "^5.0.1",
92
100
  "rrule": "^2.8.1",
93
101
  "shelljs": "^0.10.0",
94
- "sitemap": "^7.1.1",
95
- "socket.io": "^4.8.0",
102
+ "sitemap": "^9.0.1",
103
+ "socket.io": "^4.8.3",
96
104
  "sortablejs": "^1.15.0",
97
105
  "split-file": "^2.3.0",
98
- "swagger-autogen": "^2.9.2",
106
+ "swagger-autogen": "^2.23.7",
99
107
  "swagger-ui-express": "^5.0.0",
100
- "uglify-js": "^3.17.4",
101
- "validator": "^13.11.0",
102
- "vanilla-jsoneditor": "^2.3.2",
103
- "winston": "^3.11.0",
108
+ "validator": "^13.15.35",
109
+ "vanilla-jsoneditor": "^3.12.0",
110
+ "winston": "^3.19.0",
104
111
  "maxrects-packer": "^2.7.3",
105
112
  "pngjs": "^7.0.0",
106
113
  "jimp": "^1.6.0",
107
- "sharp": "^0.32.5"
114
+ "sharp": "^0.34.5",
115
+ "ethers": "~6.16.0"
108
116
  },
109
117
  "publishConfig": {
110
118
  "provenance": true,
@@ -112,11 +120,15 @@
112
120
  "registry": "https://registry.npmjs.org/"
113
121
  },
114
122
  "overrides": {
123
+ "simple-xml-to-json": "1.2.4",
115
124
  "minimatch": "^10.2.2",
116
125
  "glob": "^11.0.0",
117
126
  "diff": ">=8.0.3",
118
127
  "js-yaml": ">=3.14.2",
119
128
  "debug": ">=4.3.6",
120
- "serialize-javascript": ">=7.0.3"
129
+ "serialize-javascript": ">=7.0.5",
130
+ "router": {
131
+ "path-to-regexp": ">=8.4.0"
132
+ }
121
133
  }
122
134
  }
package/proxy.yaml CHANGED
@@ -27,6 +27,42 @@ spec:
27
27
  port: 4006
28
28
  weight: 100
29
29
 
30
+ - conditions:
31
+ - prefix: /r1
32
+
33
+ enableWebsockets: true
34
+ services:
35
+ - name: dd-cyberia-development-blue-service
36
+ port: 4007
37
+ weight: 100
38
+
39
+ - conditions:
40
+ - prefix: /r1/peer
41
+
42
+ enableWebsockets: true
43
+ services:
44
+ - name: dd-cyberia-development-blue-service
45
+ port: 4008
46
+ weight: 100
47
+
48
+ - conditions:
49
+ - prefix: /r5
50
+
51
+ enableWebsockets: true
52
+ services:
53
+ - name: dd-cyberia-development-blue-service
54
+ port: 4009
55
+ weight: 100
56
+
57
+ - conditions:
58
+ - prefix: /r5/peer
59
+
60
+ enableWebsockets: true
61
+ services:
62
+ - name: dd-cyberia-development-blue-service
63
+ port: 4010
64
+ weight: 100
65
+
30
66
  ---
31
67
  apiVersion: projectcontour.io/v1
32
68
  kind: HTTPProxy
@@ -43,7 +79,7 @@ spec:
43
79
  enableWebsockets: true
44
80
  services:
45
81
  - name: dd-cyberia-development-blue-service
46
- port: 4007
82
+ port: 4011
47
83
  weight: 100
48
84
 
49
85
  ---
@@ -62,7 +98,7 @@ spec:
62
98
  enableWebsockets: true
63
99
  services:
64
100
  - name: dd-cyberia-development-blue-service
65
- port: 4008
101
+ port: 4012
66
102
  weight: 100
67
103
 
68
104
  - conditions:
@@ -71,7 +107,79 @@ spec:
71
107
  enableWebsockets: true
72
108
  services:
73
109
  - name: dd-cyberia-development-blue-service
74
- port: 4009
110
+ port: 4013
111
+ weight: 100
112
+
113
+ - conditions:
114
+ - prefix: /r1
115
+
116
+ enableWebsockets: true
117
+ services:
118
+ - name: dd-cyberia-development-blue-service
119
+ port: 4014
120
+ weight: 100
121
+
122
+ - conditions:
123
+ - prefix: /r1/peer
124
+
125
+ enableWebsockets: true
126
+ services:
127
+ - name: dd-cyberia-development-blue-service
128
+ port: 4015
129
+ weight: 100
130
+
131
+ - conditions:
132
+ - prefix: /r2
133
+
134
+ enableWebsockets: true
135
+ services:
136
+ - name: dd-cyberia-development-blue-service
137
+ port: 4016
138
+ weight: 100
139
+
140
+ - conditions:
141
+ - prefix: /r2/peer
142
+
143
+ enableWebsockets: true
144
+ services:
145
+ - name: dd-cyberia-development-blue-service
146
+ port: 4017
147
+ weight: 100
148
+
149
+ - conditions:
150
+ - prefix: /r3
151
+
152
+ enableWebsockets: true
153
+ services:
154
+ - name: dd-cyberia-development-blue-service
155
+ port: 4018
156
+ weight: 100
157
+
158
+ - conditions:
159
+ - prefix: /r3/peer
160
+
161
+ enableWebsockets: true
162
+ services:
163
+ - name: dd-cyberia-development-blue-service
164
+ port: 4019
165
+ weight: 100
166
+
167
+ - conditions:
168
+ - prefix: /r4
169
+
170
+ enableWebsockets: true
171
+ services:
172
+ - name: dd-cyberia-development-blue-service
173
+ port: 4020
174
+ weight: 100
175
+
176
+ - conditions:
177
+ - prefix: /r4/peer
178
+
179
+ enableWebsockets: true
180
+ services:
181
+ - name: dd-cyberia-development-blue-service
182
+ port: 4021
75
183
  weight: 100
76
184
 
77
185
  ---
@@ -90,7 +198,7 @@ spec:
90
198
  enableWebsockets: true
91
199
  services:
92
200
  - name: dd-cyberia-development-blue-service
93
- port: 4010
201
+ port: 4022
94
202
  weight: 100
95
203
 
96
204
  ---
@@ -109,7 +217,7 @@ spec:
109
217
  enableWebsockets: true
110
218
  services:
111
219
  - name: dd-cyberia-development-blue-service
112
- port: 4011
220
+ port: 4023
113
221
  weight: 100
114
222
 
115
223
  - conditions:
@@ -118,7 +226,7 @@ spec:
118
226
  enableWebsockets: true
119
227
  services:
120
228
  - name: dd-cyberia-development-blue-service
121
- port: 4012
229
+ port: 4024
122
230
  weight: 100
123
231
 
124
232
  ---
@@ -137,7 +245,7 @@ spec:
137
245
  enableWebsockets: true
138
246
  services:
139
247
  - name: dd-cyberia-development-blue-service
140
- port: 4013
248
+ port: 4025
141
249
  weight: 100
142
250
 
143
251
  ---
@@ -156,7 +264,7 @@ spec:
156
264
  enableWebsockets: true
157
265
  services:
158
266
  - name: dd-cyberia-development-blue-service
159
- port: 4014
267
+ port: 4026
160
268
  weight: 100
161
269
 
162
270
  - conditions:
@@ -165,7 +273,7 @@ spec:
165
273
  enableWebsockets: true
166
274
  services:
167
275
  - name: dd-cyberia-development-blue-service
168
- port: 4015
276
+ port: 4027
169
277
  weight: 100
170
278
 
171
279
  ---
@@ -184,6 +292,6 @@ spec:
184
292
  enableWebsockets: true
185
293
  services:
186
294
  - name: dd-cyberia-development-blue-service
187
- port: 4016
295
+ port: 4028
188
296
  weight: 100
189
297
 
package/pv-pvc.yaml ADDED
@@ -0,0 +1,132 @@
1
+ ---
2
+ apiVersion: v1
3
+ kind: PersistentVolume
4
+ metadata:
5
+ name: pv-public-dd-cyberia-dd-cyberia-development-blue
6
+ spec:
7
+ capacity:
8
+ storage: 5Gi
9
+ accessModes:
10
+ - ReadWriteOnce
11
+ persistentVolumeReclaimPolicy: Retain
12
+ storageClassName: manual
13
+ claimRef:
14
+ apiVersion: v1
15
+ kind: PersistentVolumeClaim
16
+ name: pvc-public-dd-cyberia-dd-cyberia-development-blue
17
+ namespace: default
18
+ hostPath:
19
+ path: /home/dd/engine/volume/pv-public-dd-cyberia-dd-cyberia-development-blue
20
+ type: DirectoryOrCreate
21
+ ---
22
+ apiVersion: v1
23
+ kind: PersistentVolumeClaim
24
+ metadata:
25
+ name: pvc-public-dd-cyberia-dd-cyberia-development-blue
26
+ spec:
27
+ accessModes:
28
+ - ReadWriteOnce
29
+ storageClassName: manual
30
+ volumeName: pv-public-dd-cyberia-dd-cyberia-development-blue
31
+ resources:
32
+ requests:
33
+ storage: 5Gi
34
+ ---
35
+ apiVersion: v1
36
+ kind: PersistentVolume
37
+ metadata:
38
+ name: pv-public-dd-cyberia-underpost-dd-cyberia-development-blue
39
+ spec:
40
+ capacity:
41
+ storage: 5Gi
42
+ accessModes:
43
+ - ReadWriteOnce
44
+ persistentVolumeReclaimPolicy: Retain
45
+ storageClassName: manual
46
+ claimRef:
47
+ apiVersion: v1
48
+ kind: PersistentVolumeClaim
49
+ name: pvc-public-dd-cyberia-underpost-dd-cyberia-development-blue
50
+ namespace: default
51
+ hostPath:
52
+ path: /home/dd/engine/volume/pv-public-dd-cyberia-underpost-dd-cyberia-development-blue
53
+ type: DirectoryOrCreate
54
+ ---
55
+ apiVersion: v1
56
+ kind: PersistentVolumeClaim
57
+ metadata:
58
+ name: pvc-public-dd-cyberia-underpost-dd-cyberia-development-blue
59
+ spec:
60
+ accessModes:
61
+ - ReadWriteOnce
62
+ storageClassName: manual
63
+ volumeName: pv-public-dd-cyberia-underpost-dd-cyberia-development-blue
64
+ resources:
65
+ requests:
66
+ storage: 5Gi
67
+ ---
68
+ apiVersion: v1
69
+ kind: PersistentVolume
70
+ metadata:
71
+ name: pv-public-dd-cyberia-dd-cyberia-development-green
72
+ spec:
73
+ capacity:
74
+ storage: 5Gi
75
+ accessModes:
76
+ - ReadWriteOnce
77
+ persistentVolumeReclaimPolicy: Retain
78
+ storageClassName: manual
79
+ claimRef:
80
+ apiVersion: v1
81
+ kind: PersistentVolumeClaim
82
+ name: pvc-public-dd-cyberia-dd-cyberia-development-green
83
+ namespace: default
84
+ hostPath:
85
+ path: /home/dd/engine/volume/pv-public-dd-cyberia-dd-cyberia-development-green
86
+ type: DirectoryOrCreate
87
+ ---
88
+ apiVersion: v1
89
+ kind: PersistentVolumeClaim
90
+ metadata:
91
+ name: pvc-public-dd-cyberia-dd-cyberia-development-green
92
+ spec:
93
+ accessModes:
94
+ - ReadWriteOnce
95
+ storageClassName: manual
96
+ volumeName: pv-public-dd-cyberia-dd-cyberia-development-green
97
+ resources:
98
+ requests:
99
+ storage: 5Gi
100
+ ---
101
+ apiVersion: v1
102
+ kind: PersistentVolume
103
+ metadata:
104
+ name: pv-public-dd-cyberia-underpost-dd-cyberia-development-green
105
+ spec:
106
+ capacity:
107
+ storage: 5Gi
108
+ accessModes:
109
+ - ReadWriteOnce
110
+ persistentVolumeReclaimPolicy: Retain
111
+ storageClassName: manual
112
+ claimRef:
113
+ apiVersion: v1
114
+ kind: PersistentVolumeClaim
115
+ name: pvc-public-dd-cyberia-underpost-dd-cyberia-development-green
116
+ namespace: default
117
+ hostPath:
118
+ path: /home/dd/engine/volume/pv-public-dd-cyberia-underpost-dd-cyberia-development-green
119
+ type: DirectoryOrCreate
120
+ ---
121
+ apiVersion: v1
122
+ kind: PersistentVolumeClaim
123
+ metadata:
124
+ name: pvc-public-dd-cyberia-underpost-dd-cyberia-development-green
125
+ spec:
126
+ accessModes:
127
+ - ReadWriteOnce
128
+ storageClassName: manual
129
+ volumeName: pv-public-dd-cyberia-underpost-dd-cyberia-development-green
130
+ resources:
131
+ requests:
132
+ storage: 5Gi
@@ -52,7 +52,7 @@ cd /home/dd/engine
52
52
 
53
53
  echo "Applying host configuration..."
54
54
 
55
- underpost install
55
+ npm install
56
56
 
57
57
  node bin run secret
58
58
 
@@ -3,6 +3,8 @@ set -euo pipefail
3
3
 
4
4
  BASHRC="$HOME/.bashrc"
5
5
 
6
+ sudo dnf install -y iproute lsof nmap-ncat net-tools procps-ng
7
+
6
8
  # Check whether a "ports" function is already defined
7
9
  if grep -Eq '^\s*(function\s+ports|ports\s*\(\))' "$BASHRC"; then
8
10
  echo "The 'ports' function already exists in $BASHRC. Nothing was changed."
@@ -0,0 +1,56 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ # ──────────────────────────────────────────────────────────────────
5
+ # rhel-grpc-setup.sh — Install gRPC / Protocol Buffers system
6
+ # packages on RHEL / Rocky Linux / AlmaLinux / Fedora.
7
+ #
8
+ # Installs:
9
+ # 1. protobuf-compiler (protoc) + protobuf-devel
10
+ # 2. grpc / grpc-devel / grpc-plugins (C++ libs + plugin binaries)
11
+ #
12
+ # For Go-specific tooling (protoc-gen-go, protoc-gen-go-grpc,
13
+ # go mod tidy, proto codegen) use:
14
+ # ./cyberia-server/scripts/grpc-setup.sh
15
+ #
16
+ # Usage:
17
+ # sudo ./scripts/rhel-grpc-setup.sh
18
+ # ──────────────────────────────────────────────────────────────────
19
+
20
+ if [[ "${1:-}" == "-h" || "${1:-}" == "--help" ]]; then
21
+ echo "Usage: sudo $0"
22
+ echo "Installs protobuf + gRPC system packages via dnf."
23
+ echo "For Go codegen plugins, run: ./cyberia-server/scripts/grpc-setup.sh"
24
+ exit 0
25
+ fi
26
+
27
+ # ── 1. Enable EPEL (needed for protobuf / grpc on RHEL) ──────────
28
+ echo ">>> Enabling EPEL repository..."
29
+ sudo dnf install -y epel-release || true
30
+ sudo dnf install -y dnf-plugins-core || true
31
+
32
+ # On RHEL proper, enable CRB/PowerTools for devel headers
33
+ if grep -qi 'Red Hat Enterprise' /etc/os-release 2>/dev/null; then
34
+ sudo dnf config-manager --set-enabled codeready-builder-for-rhel-"$(rpm -E %rhel)"-"$(uname -m)-rpms" 2>/dev/null || true
35
+ elif grep -qi 'Rocky\|AlmaLinux' /etc/os-release 2>/dev/null; then
36
+ sudo dnf config-manager --set-enabled crb 2>/dev/null || \
37
+ sudo dnf config-manager --set-enabled powertools 2>/dev/null || true
38
+ fi
39
+
40
+ # ── 2. Install protobuf compiler + gRPC system packages ──────────
41
+ echo ">>> Installing protobuf-compiler, protobuf-devel, grpc, grpc-devel, grpc-plugins..."
42
+ sudo dnf install -y \
43
+ protobuf-compiler \
44
+ protobuf-devel \
45
+ grpc \
46
+ grpc-devel \
47
+ grpc-plugins
48
+
49
+ # ── 3. Verify protoc ─────────────────────────────────────────────
50
+ if command -v protoc &>/dev/null; then
51
+ echo ">>> protoc installed: $(protoc --version)"
52
+ else
53
+ echo "WARNING: protoc not found in PATH after install." >&2
54
+ fi
55
+
56
+ echo ">>> gRPC system packages setup complete."