cyberia 3.0.2 → 3.1.3

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 (182) hide show
  1. package/{.env.production → .env.example} +20 -2
  2. package/.github/workflows/engine-cyberia.cd.yml +41 -10
  3. package/.github/workflows/engine-cyberia.ci.yml +53 -14
  4. package/.github/workflows/ghpkg.ci.yml +1 -1
  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 +37 -8
  8. package/.github/workflows/publish.ci.yml +5 -5
  9. package/.github/workflows/publish.cyberia.ci.yml +5 -5
  10. package/.github/workflows/pwa-microservices-template-page.cd.yml +3 -3
  11. package/.github/workflows/pwa-microservices-template-test.ci.yml +1 -1
  12. package/.github/workflows/release.cd.yml +3 -2
  13. package/.vscode/extensions.json +9 -8
  14. package/.vscode/settings.json +3 -2
  15. package/CHANGELOG.md +533 -290
  16. package/CLI-HELP.md +79 -53
  17. package/WHITE-PAPER.md +1540 -0
  18. package/bin/build.js +16 -11
  19. package/bin/cyberia.js +959 -8
  20. package/bin/deploy.js +103 -270
  21. package/bin/file.js +2 -1
  22. package/bin/index.js +959 -8
  23. package/bin/vs.js +3 -3
  24. package/conf.js +277 -77
  25. package/deployment.yaml +218 -4
  26. package/hardhat/.env.example +31 -0
  27. package/hardhat/README.md +531 -0
  28. package/hardhat/WHITE-PAPER.md +1540 -0
  29. package/hardhat/contracts/ObjectLayerToken.sol +391 -0
  30. package/hardhat/deployments/.gitkeep +0 -0
  31. package/hardhat/deployments/hardhat-ObjectLayerToken.json +11 -0
  32. package/hardhat/hardhat.config.js +136 -0
  33. package/hardhat/ignition/modules/ObjectLayerToken.js +21 -0
  34. package/hardhat/networks/besu-object-layer.network.json +138 -0
  35. package/hardhat/package-lock.json +7628 -0
  36. package/hardhat/package.json +45 -0
  37. package/hardhat/scripts/deployObjectLayerToken.js +98 -0
  38. package/hardhat/test/ObjectLayerToken.js +590 -0
  39. package/jsdoc.dd-cyberia.json +59 -0
  40. package/jsdoc.json +20 -13
  41. package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +1 -1
  42. package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +1 -1
  43. package/manifests/deployment/dd-cyberia-development/deployment.yaml +490 -0
  44. package/manifests/deployment/dd-cyberia-development/proxy.yaml +261 -0
  45. package/manifests/deployment/dd-cyberia-development/pv-pvc.yaml +132 -0
  46. package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
  47. package/manifests/deployment/dd-test-development/deployment.yaml +52 -52
  48. package/manifests/deployment/dd-test-development/proxy.yaml +4 -4
  49. package/manifests/pv-pvc-dd.yaml +1 -1
  50. package/package.json +60 -50
  51. package/proxy.yaml +128 -9
  52. package/pv-pvc.yaml +132 -0
  53. package/scripts/k3s-node-setup.sh +1 -1
  54. package/scripts/ports-ls.sh +2 -0
  55. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.controller.js +3 -1
  56. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.model.js +1 -2
  57. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.service.js +40 -7
  58. package/src/api/document/document.service.js +1 -1
  59. package/src/api/file/file.controller.js +3 -1
  60. package/src/api/file/file.service.js +28 -5
  61. package/src/api/ipfs/ipfs.service.js +2 -2
  62. package/src/api/object-layer/object-layer.controller.js +6 -2
  63. package/src/api/object-layer/object-layer.model.js +67 -21
  64. package/src/api/object-layer/object-layer.router.js +668 -42
  65. package/src/api/object-layer/object-layer.service.js +10 -16
  66. package/src/api/object-layer-render-frames/object-layer-render-frames.model.js +1 -2
  67. package/src/api/user/user.router.js +10 -5
  68. package/src/api/user/user.service.js +7 -7
  69. package/src/cli/baremetal.js +6 -10
  70. package/src/cli/cloud-init.js +0 -3
  71. package/src/cli/db.js +54 -71
  72. package/src/cli/deploy.js +64 -12
  73. package/src/cli/env.js +5 -5
  74. package/src/cli/fs.js +0 -2
  75. package/src/cli/image.js +0 -3
  76. package/src/cli/index.js +41 -13
  77. package/src/cli/monitor.js +5 -6
  78. package/src/cli/repository.js +329 -46
  79. package/src/cli/run.js +210 -122
  80. package/src/cli/secrets.js +1 -3
  81. package/src/cli/ssh.js +1 -1
  82. package/src/client/Itemledger.index.js +1 -959
  83. package/src/client/Underpost.index.js +36 -0
  84. package/src/client/components/core/AgGrid.js +20 -5
  85. package/src/client/components/core/Alert.js +2 -2
  86. package/src/client/components/core/Content.js +22 -3
  87. package/src/client/components/core/Docs.js +30 -6
  88. package/src/client/components/core/FileExplorer.js +71 -4
  89. package/src/client/components/core/Input.js +1 -1
  90. package/src/client/components/core/Modal.js +22 -6
  91. package/src/client/components/core/PublicProfile.js +3 -3
  92. package/src/client/components/core/RichText.js +1 -2
  93. package/src/client/components/core/Router.js +34 -1
  94. package/src/client/components/core/Worker.js +1 -1
  95. package/src/client/components/cryptokoyn/CssCryptokoyn.js +63 -1
  96. package/src/client/components/cyberia/ObjectLayerEngineModal.js +145 -119
  97. package/src/client/components/cyberia/ObjectLayerEngineViewer.js +64 -6
  98. package/src/client/components/cyberia-portal/CommonCyberiaPortal.js +1 -0
  99. package/src/client/components/cyberia-portal/CssCyberiaPortal.js +44 -2
  100. package/src/client/components/cyberia-portal/LogInCyberiaPortal.js +0 -1
  101. package/src/client/components/cyberia-portal/MenuCyberiaPortal.js +64 -2
  102. package/src/client/components/cyberia-portal/RoutesCyberiaPortal.js +1 -0
  103. package/src/client/components/itemledger/CssItemledger.js +62 -0
  104. package/src/client/components/underpost/CommonUnderpost.js +29 -0
  105. package/src/client/components/underpost/CssUnderpost.js +281 -0
  106. package/src/client/components/underpost/CyberpunkBloggerUnderpost.js +879 -0
  107. package/src/client/components/underpost/DocumentSearchProvider.js +448 -0
  108. package/src/client/components/underpost/ElementsUnderpost.js +38 -0
  109. package/src/client/components/underpost/LabGalleryUnderpost.js +82 -0
  110. package/src/client/components/underpost/LogInUnderpost.js +23 -0
  111. package/src/client/components/underpost/LogOutUnderpost.js +15 -0
  112. package/src/client/components/underpost/MenuUnderpost.js +691 -0
  113. package/src/client/components/underpost/RoutesUnderpost.js +47 -0
  114. package/src/client/components/underpost/SettingsUnderpost.js +16 -0
  115. package/src/client/components/underpost/SignUpUnderpost.js +9 -0
  116. package/src/client/components/underpost/SocketIoUnderpost.js +54 -0
  117. package/src/client/components/underpost/TranslateUnderpost.js +10 -0
  118. package/src/client/public/cryptokoyn/assets/logo/base-icon.png +0 -0
  119. package/src/client/public/cryptokoyn/browserconfig.xml +12 -0
  120. package/src/client/public/cryptokoyn/microdata.json +85 -0
  121. package/src/client/public/cryptokoyn/site.webmanifest +57 -0
  122. package/src/client/public/cryptokoyn/sitemap +3 -3
  123. package/src/client/public/default/sitemap +3 -3
  124. package/src/client/public/itemledger/browserconfig.xml +2 -2
  125. package/src/client/public/itemledger/manifest.webmanifest +4 -4
  126. package/src/client/public/itemledger/microdata.json +71 -0
  127. package/src/client/public/itemledger/sitemap +3 -3
  128. package/src/client/public/itemledger/yandex-browser-manifest.json +2 -2
  129. package/src/client/public/test/sitemap +3 -3
  130. package/src/client/services/object-layer/object-layer.management.js +23 -4
  131. package/src/client/ssr/body/404.js +15 -11
  132. package/src/client/ssr/body/500.js +15 -11
  133. package/src/client/ssr/body/SwaggerDarkMode.js +285 -0
  134. package/src/client/ssr/body/UnderpostDefaultSplashScreen.js +83 -0
  135. package/src/client/ssr/head/PwaItemledger.js +60 -0
  136. package/src/client/ssr/head/UnderpostScripts.js +6 -0
  137. package/src/client/ssr/offline/NoNetworkConnection.js +11 -10
  138. package/src/client/ssr/pages/Test.js +11 -10
  139. package/src/client.build.js +0 -3
  140. package/src/client.dev.js +0 -3
  141. package/src/db/DataBaseProvider.js +17 -2
  142. package/src/db/mariadb/MariaDB.js +14 -9
  143. package/src/db/mongo/MongooseDB.js +17 -1
  144. package/src/index.js +1 -1
  145. package/src/proxy.js +0 -3
  146. package/src/runtime/express/Express.js +15 -9
  147. package/src/runtime/lampp/Lampp.js +6 -13
  148. package/src/server/auth.js +12 -14
  149. package/src/server/backup.js +2 -3
  150. package/src/server/besu-genesis-generator.js +1630 -0
  151. package/src/server/client-build-docs.js +126 -17
  152. package/src/server/client-build-live.js +9 -18
  153. package/src/server/client-build.js +203 -75
  154. package/src/server/client-dev-server.js +14 -13
  155. package/src/server/conf.js +376 -164
  156. package/src/server/cron.js +2 -1
  157. package/src/server/dns.js +28 -12
  158. package/src/server/downloader.js +0 -2
  159. package/src/server/logger.js +27 -9
  160. package/src/server/object-layer.js +92 -16
  161. package/src/server/peer.js +0 -2
  162. package/src/server/process.js +1 -50
  163. package/src/server/proxy.js +4 -8
  164. package/src/server/runtime.js +5 -8
  165. package/src/server/semantic-layer-generator.js +1 -0
  166. package/src/server/ssr.js +0 -3
  167. package/src/server/start.js +19 -12
  168. package/src/server/tls.js +0 -2
  169. package/src/server.js +0 -4
  170. package/.env.development +0 -43
  171. package/.env.test +0 -43
  172. package/hardhat/contracts/CryptoKoyn.sol +0 -59
  173. package/hardhat/contracts/ItemLedger.sol +0 -73
  174. package/hardhat/contracts/Lock.sol +0 -34
  175. package/hardhat/hardhat.config.cjs +0 -45
  176. package/hardhat/ignition/modules/Lock.js +0 -18
  177. package/hardhat/networks/cryptokoyn-itemledger.network.json +0 -29
  178. package/hardhat/scripts/deployCryptokoyn.cjs +0 -25
  179. package/hardhat/scripts/deployItemledger.cjs +0 -25
  180. package/hardhat/test/Lock.js +0 -126
  181. package/hardhat/white-paper.md +0 -581
  182. package/white-paper.md +0 -581
package/bin/deploy.js CHANGED
@@ -6,24 +6,18 @@ import dotenv from 'dotenv';
6
6
  import { pbcopy, shellCd, shellExec } from '../src/server/process.js';
7
7
  import { loggerFactory } from '../src/server/logger.js';
8
8
  import {
9
- Config,
10
9
  addApiConf,
11
10
  addClientConf,
12
11
  buildApiSrc,
13
12
  buildClientSrc,
14
13
  cloneConf,
15
- loadConf,
16
- loadReplicas,
17
14
  addWsConf,
18
15
  buildWsSrc,
19
16
  cloneSrcComponents,
20
- getDataDeploy,
21
- buildReplicaId,
22
- Cmd,
23
17
  writeEnv,
24
18
  buildCliDoc,
19
+ loadConf,
25
20
  } from '../src/server/conf.js';
26
- import { buildClient } from '../src/server/client-build.js';
27
21
  import colors from 'colors';
28
22
  import { program } from '../src/cli/index.js';
29
23
  import { timer } from '../src/client/components/core/CommonJs.js';
@@ -120,19 +114,6 @@ try {
120
114
  buildWsSrc({ toOptions, fromOptions });
121
115
  }
122
116
  break;
123
- case 'conf': {
124
- let subConf = process.argv[5] ?? '';
125
-
126
- if (!['current', 'clean', 'root'].includes(process.argv[3])) {
127
- const path = fs.existsSync(`./engine-private/replica/${process.argv[3]}`)
128
- ? `./engine-private/replica/${process.argv[3]}/.env.${process.argv[4]}`
129
- : `./engine-private/conf/${process.argv[3]}/.env.${process.argv[4]}`;
130
- dotenv.config({ path, override: true });
131
- }
132
-
133
- loadConf(process.argv[3], subConf);
134
- break;
135
- }
136
117
 
137
118
  case 'new-nodejs-app':
138
119
  {
@@ -143,7 +124,7 @@ try {
143
124
 
144
125
  shellExec(`node bin/deploy build-nodejs-src-app ${deployId} ${clientId}`);
145
126
 
146
- shellExec(`node bin/deploy build-full-client ${deployId}`);
127
+ await Underpost.repo.client(deployId);
147
128
 
148
129
  shellExec(`npm run dev ${deployId}`);
149
130
  }
@@ -180,8 +161,6 @@ try {
180
161
  shellExec(`node bin/deploy build-nodejs-conf-api ${apiId} ${deployId} ${clientId}`);
181
162
 
182
163
  shellExec(`node bin/deploy build-nodejs-src-api ${apiId} ${deployId} ${clientId}`);
183
-
184
- // shellExec(`npm run dev ${deployId}`);
185
164
  }
186
165
  break;
187
166
  case 'new-nodejs-ws':
@@ -198,42 +177,6 @@ try {
198
177
  shellExec(`npm run dev ${deployId}`);
199
178
  }
200
179
  break;
201
- case 'build-full-client':
202
- {
203
- dotenv.config({ override: true });
204
- if (!process.argv[3]) process.argv[3] = 'dd-default';
205
- const { deployId } = loadConf(process.argv[3], process.argv[4] ?? '');
206
-
207
- let argHost = process.argv[5] ? process.argv[5].split(',') : [];
208
- let argPath = process.argv[6] ? process.argv[6].split(',') : [];
209
- let deployIdSingleReplicas = [];
210
- const serverConf = deployId
211
- ? JSON.parse(fs.readFileSync(`./conf/conf.server.json`, 'utf8'))
212
- : Config.default.server;
213
- for (const host of Object.keys(serverConf)) {
214
- for (const path of Object.keys(serverConf[host])) {
215
- if (argHost.length && argPath.length && (!argHost.includes(host) || !argPath.includes(path))) {
216
- delete serverConf[host][path];
217
- } else {
218
- serverConf[host][path].liteBuild = false;
219
- serverConf[host][path].minifyBuild = process.env.NODE_ENV === 'production' ? true : false;
220
- if (serverConf[host][path].singleReplica && serverConf[host][path].replicas) {
221
- deployIdSingleReplicas = deployIdSingleReplicas.concat(
222
- serverConf[host][path].replicas.map((replica) => buildReplicaId({ deployId, replica })),
223
- );
224
- }
225
- }
226
- }
227
- }
228
- fs.writeFileSync(`./conf/conf.server.json`, JSON.stringify(serverConf, null, 4), 'utf-8');
229
- await buildClient();
230
-
231
- for (const replicaDeployId of deployIdSingleReplicas) {
232
- shellExec(Cmd.conf(replicaDeployId, process.env.NODE_ENV));
233
- shellExec(Cmd.build(replicaDeployId));
234
- }
235
- }
236
- break;
237
180
 
238
181
  case 'update-dependencies':
239
182
  const files = await fs.readdir(`./engine-private/conf`, { recursive: true });
@@ -244,102 +187,12 @@ try {
244
187
  const deployPackage = JSON.parse(fs.readFileSync(filePah, 'utf8'));
245
188
  deployPackage.dependencies = originPackage.dependencies;
246
189
  deployPackage.devDependencies = originPackage.devDependencies;
190
+ deployPackage.overrides = originPackage.overrides;
247
191
  fs.writeFileSync(filePah, JSON.stringify(deployPackage, null, 4), 'utf8');
248
192
  }
249
193
  }
250
194
  break;
251
195
 
252
- case 'sync-env-port':
253
- const dataDeploy = getDataDeploy({ disableSyncEnvPort: true });
254
- const dataEnv = [
255
- { env: 'production', port: 3000 },
256
- { env: 'development', port: 4000 },
257
- { env: 'test', port: 5000 },
258
- ];
259
- let portOffset = 0;
260
- for (const deployIdObj of dataDeploy) {
261
- const { deployId } = deployIdObj;
262
- const baseConfPath = fs.existsSync(`./engine-private/replica/${deployId}`)
263
- ? `./engine-private/replica`
264
- : `./engine-private/conf`;
265
- for (const envInstanceObj of dataEnv) {
266
- const envPath = `${baseConfPath}/${deployId}/.env.${envInstanceObj.env}`;
267
- const envObj = dotenv.parse(fs.readFileSync(envPath, 'utf8'));
268
- envObj.PORT = `${envInstanceObj.port + portOffset}`;
269
-
270
- writeEnv(envPath, envObj);
271
- }
272
- const serverConf = loadReplicas(
273
- deployId,
274
- JSON.parse(fs.readFileSync(`${baseConfPath}/${deployId}/conf.server.json`, 'utf8')),
275
- );
276
- for (const host of Object.keys(serverConf)) {
277
- for (const path of Object.keys(serverConf[host])) {
278
- if (serverConf[host][path].singleReplica) {
279
- portOffset--;
280
- continue;
281
- }
282
- portOffset++;
283
- if (serverConf[host][path].peer) portOffset++;
284
- }
285
- }
286
- }
287
- break;
288
-
289
- case 'build-single-replica': {
290
- const deployId = process.argv[3];
291
- const host = process.argv[4];
292
- const path = process.argv[5];
293
- const serverConf = loadReplicas(
294
- deployId,
295
- JSON.parse(fs.readFileSync(`./engine-private/conf/${deployId}/conf.server.json`, 'utf8')),
296
- );
297
-
298
- if (serverConf[host][path].replicas) {
299
- {
300
- let replicaIndex = -1;
301
- for (const replica of serverConf[host][path].replicas) {
302
- replicaIndex++;
303
- const replicaDeployId = `${deployId}-${serverConf[host][path].replicas[replicaIndex].slice(1)}`;
304
- // fs.mkdirSync(`./engine-private/replica/${deployId}${replicaIndex}`, { recursive: true });
305
- await fs.copy(`./engine-private/conf/${deployId}`, `./engine-private/replica/${replicaDeployId}`);
306
- fs.writeFileSync(
307
- `./engine-private/replica/${replicaDeployId}/package.json`,
308
- fs
309
- .readFileSync(`./engine-private/replica/${replicaDeployId}/package.json`, 'utf8')
310
- .replaceAll(`${deployId}`, `${replicaDeployId}`),
311
- 'utf8',
312
- );
313
- }
314
- }
315
- {
316
- let replicaIndex = -1;
317
- for (const replica of serverConf[host][path].replicas) {
318
- replicaIndex++;
319
- const replicaDeployId = `${deployId}-${serverConf[host][path].replicas[replicaIndex].slice(1)}`;
320
- let replicaServerConf = JSON.parse(
321
- fs.readFileSync(`./engine-private/replica/${replicaDeployId}/conf.server.json`, 'utf8'),
322
- );
323
-
324
- const singleReplicaConf = replicaServerConf[host][path];
325
- singleReplicaConf.replicas = undefined;
326
- singleReplicaConf.singleReplica = undefined;
327
-
328
- replicaServerConf = {};
329
- replicaServerConf[host] = {};
330
- replicaServerConf[host][replica] = singleReplicaConf;
331
-
332
- fs.writeFileSync(
333
- `./engine-private/replica/${replicaDeployId}/conf.server.json`,
334
- JSON.stringify(replicaServerConf, null, 4),
335
- 'utf8',
336
- );
337
- }
338
- }
339
- }
340
- break;
341
- }
342
-
343
196
  case 'rename-package': {
344
197
  const name = process.argv[3];
345
198
  const originPackage = JSON.parse(fs.readFileSync(`./package.json`, 'utf8'));
@@ -373,11 +226,10 @@ try {
373
226
  shellExec(`node bin run kill 4001`);
374
227
  shellExec(`node bin run kill 4002`);
375
228
  shellExec(`node bin run kill 4003`);
376
- shellExec(`npm run update-template`);
377
- shellExec(
378
- `cd ../pwa-microservices-template && npm install && echo "\nENABLE_FILE_LOGS=true" >> .env.development`,
379
- );
380
- shellExec(`cd ../pwa-microservices-template && npm run build && timeout 5s npm run dev`, {
229
+ shellExec(`npm run update:template`);
230
+ shellExec(`cd ../pwa-microservices-template && npm install && npm run build`);
231
+ console.log(fs.existsSync(`../pwa-microservices-template/engine-private/conf/dd-default`));
232
+ shellExec(`cd ../pwa-microservices-template && ENABLE_FILE_LOGS=true timeout 5s npm run dev`, {
381
233
  async: true,
382
234
  });
383
235
  await timer(5500);
@@ -392,7 +244,6 @@ try {
392
244
  Underpost.repo.clean({ paths: ['/home/dd/engine', '/home/dd/engine/engine-private '] });
393
245
  const originPackageJson = JSON.parse(fs.readFileSync(`package.json`, 'utf8'));
394
246
  const newVersion = process.argv[3] ?? originPackageJson.version;
395
- const node = process.argv[4] ?? 'kind-control-plane';
396
247
  const { version } = originPackageJson;
397
248
  originPackageJson.version = newVersion;
398
249
  fs.writeFileSync(`package.json`, JSON.stringify(originPackageJson, null, 4), 'utf8');
@@ -449,30 +300,16 @@ try {
449
300
  shellExec(`node bin/deploy cli-docs ${version} ${newVersion}`);
450
301
  shellExec(`node bin/deploy update-dependencies`);
451
302
  shellExec(`node bin/build dd`);
452
- shellExec(
453
- `node bin deploy --kubeadm --build-manifest --sync --info-router --replicas 1 --node ${node} dd production`,
454
- );
455
- shellExec(
456
- `node bin deploy --kubeadm --build-manifest --sync --info-router --replicas 1 --node ${node} dd development `,
457
- );
458
- for (const deployId of fs.readFileSync(`./engine-private/deploy/dd.router`, 'utf8').split(`,`)) {
459
- fs.copySync(
460
- `./engine-private/conf/${deployId}/build/development/deployment.yaml`,
461
- `./manifests/deployment/${deployId}-development/deployment.yaml`,
462
- );
463
- fs.copySync(
464
- `./engine-private/conf/${deployId}/build/development/proxy.yaml`,
465
- `./manifests/deployment/${deployId}-development/proxy.yaml`,
466
- );
467
- shellExec(`node bin new --dev --default-conf --deploy-id ${deployId}`);
468
- }
303
+ shellExec(`node bin deploy --build-manifest --sync --info-router --replicas 1 dd production`);
304
+ shellExec(`node bin deploy --build-manifest --sync --info-router --replicas 1 dd development`);
305
+ shellExec(`node bin/deploy build-default-confs`);
469
306
  shellExec(`sudo rm -rf ./engine-private/conf/dd-default`);
470
307
  shellExec(`node bin new --deploy-id dd-default`);
471
308
  console.log(fs.existsSync(`./engine-private/conf/dd-default`));
472
309
  shellExec(`sudo rm -rf ./engine-private/conf/dd-default`);
473
310
  shellExec(`node bin cron --dev --setup-start`);
474
- shellExec(`node bin/deploy build-envs`);
475
311
  shellExec(`node bin cmt --changelog-build`);
312
+ process.exit(0);
476
313
  break;
477
314
  }
478
315
 
@@ -481,7 +318,6 @@ try {
481
318
  shellExec(
482
319
  `underpost secret underpost --create-from-file /home/dd/engine/engine-private/conf/dd-cron/.env.production`,
483
320
  );
484
- shellExec(`node bin/deploy sync-envs`);
485
321
  shellExec(`node bin/build dd conf`);
486
322
  shellExec(`git add . && cd ./engine-private && git add .`);
487
323
  shellExec(`node bin cmt . ci package-pwa-microservices-template 'New release v:${process.argv[3]}'`);
@@ -491,6 +327,31 @@ try {
491
327
  break;
492
328
  }
493
329
 
330
+ case 'build-default-confs': {
331
+ for (const deployId of fs
332
+ .readFileSync(`./engine-private/deploy/dd.router`, 'utf8')
333
+ .split(`,`)
334
+ .concat(['dd-cron'])) {
335
+ if (fs.existsSync(`./engine-private/conf/${deployId}/build/development/deployment.yaml`))
336
+ fs.copySync(
337
+ `./engine-private/conf/${deployId}/build/development/deployment.yaml`,
338
+ `./manifests/deployment/${deployId}-development/deployment.yaml`,
339
+ );
340
+ if (fs.existsSync(`./engine-private/conf/${deployId}/build/development/proxy.yaml`))
341
+ fs.copySync(
342
+ `./engine-private/conf/${deployId}/build/development/proxy.yaml`,
343
+ `./manifests/deployment/${deployId}-development/proxy.yaml`,
344
+ );
345
+ if (fs.existsSync(`./engine-private/conf/${deployId}/build/development/pv-pvc.yaml`))
346
+ fs.copySync(
347
+ `./engine-private/conf/${deployId}/build/development/pv-pvc.yaml`,
348
+ `./manifests/deployment/${deployId}-development/pv-pvc.yaml`,
349
+ );
350
+ shellExec(`node bin new --dev --default-conf --deploy-id ${deployId}`);
351
+ }
352
+ break;
353
+ }
354
+
494
355
  case 'update-authors': {
495
356
  // #### Ordered by first contribution.
496
357
  fs.writeFileSync(
@@ -507,31 +368,6 @@ ${shellExec(`git log | grep Author: | sort -u`, { stdout: true }).split(`\n`).jo
507
368
  break;
508
369
  }
509
370
 
510
- case 'heb': {
511
- // https://besu.hyperledger.org/
512
- // https://github.com/hyperledger/besu/archive/refs/tags/24.9.1.tar.gz
513
-
514
- shellCd(`..`);
515
-
516
- // Download the Linux binary
517
- shellExec(`wget https://github.com/hyperledger/besu/releases/download/24.9.1/besu-24.9.1.tar.gz`);
518
-
519
- // Unzip the file:
520
- shellExec(`tar -xvzf besu-24.9.1.tar.gz`);
521
-
522
- shellCd(`besu-24.9.1`);
523
-
524
- shellExec(`bin/besu --help`);
525
-
526
- // Set env path
527
- // export PATH=$PATH:/home/dd/besu-24.9.1/bin
528
-
529
- // Open src
530
- // shellExec(`sudo code /home/dd/besu-24.9.1 --user-data-dir="/root/.vscode-root" --no-sandbox`);
531
-
532
- break;
533
- }
534
-
535
371
  case 'maas-db': {
536
372
  // DROP, ALTER, CREATE, WITH ENCRYPTED
537
373
  // sudo -u <user> -h <host> psql <db-name>
@@ -873,71 +709,6 @@ nvidia/gpu-operator \
873
709
  break;
874
710
  }
875
711
 
876
- case 'udpate-version-files': {
877
- const oldNpmVersion = process.argv[3];
878
- const oldNodeVersion = process.argv[4];
879
- const oldNodeMajorVersion = oldNodeVersion.split('.')[0];
880
- const nodeVersion = shellExec(`node --version`, { stdout: true }).trim().replace('v', '');
881
- const newNodeMajorVersion = nodeVersion.split('.')[0];
882
- const npmVersion = shellExec(`npm --version`, { stdout: true }).trim();
883
-
884
- fs.writeFileSync(
885
- `README.md`,
886
- fs
887
- .readFileSync(`README.md`, 'utf8')
888
- .replaceAll(oldNodeVersion, nodeVersion)
889
- .replaceAll(oldNpmVersion, npmVersion),
890
- );
891
- fs.writeFileSync(
892
- `src/client/public/nexodev/docs/references/Getting started.md`,
893
- fs
894
- .readFileSync(`src/client/public/nexodev/docs/references/Getting started.md`, 'utf8')
895
- .replaceAll(oldNodeVersion, nodeVersion)
896
- .replaceAll(oldNpmVersion, npmVersion),
897
- );
898
-
899
- const workflowFiles = [
900
- `./.github/workflows/coverall.ci.yml`,
901
-
902
- `./.github/workflows/engine-core.ci.yml`,
903
-
904
- `./.github/workflows/engine-cyberia.ci.yml`,
905
-
906
- `./.github/workflows/engine-lampp.ci.yml`,
907
-
908
- `./.github/workflows/engine-test.ci.yml`,
909
-
910
- `./.github/workflows/ghpkg.ci.yml`,
911
-
912
- `./.github/workflows/npmpkg.ci.yml`,
913
-
914
- `./.github/workflows/publish.ci.yml`,
915
-
916
- `./.github/workflows/pwa-microservices-template-page.cd.yml`,
917
-
918
- `./.github/workflows/pwa-microservices-template-test.ci.yml`,
919
-
920
- `./.github/workflows/test-api-rest.cd.yml`,
921
-
922
- `./src/runtime/lampp/Dockerfile`,
923
-
924
- `./Dockerfile`,
925
- ];
926
-
927
- workflowFiles.forEach((file) => {
928
- fs.writeFileSync(
929
- file,
930
- fs
931
- .readFileSync(file, 'utf8')
932
- .replaceAll(oldNodeMajorVersion + '.x', newNodeMajorVersion + '.x')
933
- .replaceAll(oldNodeVersion, nodeVersion)
934
- .replaceAll(oldNpmVersion, npmVersion),
935
- );
936
- });
937
- pbcopy(`nvm alias default v${nodeVersion}`);
938
- break;
939
- }
940
-
941
712
  case 'tls': {
942
713
  fs.mkdirSync(`./engine-private/ssl/localhost`, { recursive: true });
943
714
  const targetDir = `./engine-private/ssl/${process.argv[3] ? process.argv[3] : 'localhost'}`;
@@ -988,12 +759,18 @@ nvidia/gpu-operator \
988
759
  }
989
760
 
990
761
  case 'sync-start': {
762
+ const targetDeployId = process.argv[3] || 'dd';
763
+ const deployIds =
764
+ targetDeployId === 'dd'
765
+ ? fs.readFileSync(`./engine-private/deploy/dd.router`, 'utf8').split(',')
766
+ : [targetDeployId];
991
767
  const originPackageJson = JSON.parse(fs.readFileSync(`./package.json`, 'utf8'));
992
- for (const deployId of fs.readFileSync(`./engine-private/deploy/dd.router`, 'utf8').split(',')) {
768
+ for (const deployId of deployIds) {
993
769
  const packageJsonPath = `./engine-private/conf/${deployId}/package.json`;
994
770
  const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
995
- packageJson.scripts.start = `${originPackageJson.scripts.start} ${deployId}`;
771
+ packageJson.scripts = { start: `${originPackageJson.scripts.start} ${deployId}` };
996
772
  fs.writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 4), 'utf8');
773
+ logger.info(`sync-start`, { deployId, start: packageJson.scripts.start });
997
774
  }
998
775
  break;
999
776
  }
@@ -1013,9 +790,31 @@ nvidia/gpu-operator \
1013
790
  break;
1014
791
  }
1015
792
 
1016
- case 'envs': {
1017
- shellExec(`node bin/deploy sync-envs`);
1018
- shellExec(`node bin/deploy build-envs`);
793
+ case 'sync-conf': {
794
+ const originPackageJson = JSON.parse(fs.readFileSync(`./package.json`, 'utf8'));
795
+ for (const deployId of ['dd-cron'].concat(
796
+ fs.readFileSync(`./engine-private/deploy/dd.router`, 'utf8').split(','),
797
+ )) {
798
+ for (const file of fs.readdirSync(`./engine-private/conf/${deployId}/`)) {
799
+ const deployPackage = JSON.parse(fs.readFileSync(`./engine-private/conf/${deployId}/package.json`, 'utf8'));
800
+ deployPackage.overrides = originPackageJson.overrides;
801
+ fs.writeFileSync(
802
+ `./engine-private/conf/${deployId}/package.json`,
803
+ JSON.stringify(deployPackage, null, 4),
804
+ 'utf8',
805
+ );
806
+ if (file.startsWith('conf.server') && file.endsWith('.json')) {
807
+ const filePath = `./engine-private/conf/${deployId}/${file}`;
808
+ const confObj = JSON.parse(fs.readFileSync(filePath, 'utf8'));
809
+ for (const host of Object.keys(confObj)) {
810
+ for (const path of Object.keys(confObj[host])) {
811
+ }
812
+ }
813
+ fs.writeFileSync(filePath, JSON.stringify(confObj, null, 4), 'utf8');
814
+ logger.info(`sync-conf`, { deployId, file });
815
+ }
816
+ }
817
+ }
1019
818
  break;
1020
819
  }
1021
820
 
@@ -1073,6 +872,40 @@ nvidia/gpu-operator \
1073
872
  `);
1074
873
  break;
1075
874
  }
875
+
876
+ case 'dependabot': {
877
+ shellExec(`git fetch origin`);
878
+
879
+ const { stdout: branchOutput } = shellExec(`git branch -r`, { silent: true });
880
+ const dependabotBranches = branchOutput
881
+ .split('\n')
882
+ .map((b) => b.trim())
883
+ .filter((b) => b.startsWith('remotes/origin/dependabot/') || b.startsWith('origin/dependabot/'))
884
+ .map((b) => b.replace(/^remotes\//, '').replace(/^origin\//, ''));
885
+
886
+ if (dependabotBranches.length === 0) {
887
+ logger.info('No remote dependabot branches found');
888
+ break;
889
+ }
890
+
891
+ logger.info('Found dependabot branches:', dependabotBranches);
892
+
893
+ for (const branch of dependabotBranches) {
894
+ logger.info(`Checking out branch: ${branch}`);
895
+ shellExec(`git checkout -B ${branch} origin/${branch}`);
896
+ }
897
+
898
+ logger.info('Checking out master');
899
+ shellExec(`git checkout master`);
900
+
901
+ for (const branch of dependabotBranches) {
902
+ logger.info(`Merging branch: ${branch}`);
903
+ shellExec(`git merge ${branch}`);
904
+ }
905
+
906
+ logger.info('All dependabot branches merged into master');
907
+ break;
908
+ }
1076
909
  }
1077
910
  } catch (error) {
1078
911
  logger.error(error, error.stack);
package/bin/file.js CHANGED
@@ -99,6 +99,7 @@ try {
99
99
  './src/server/atlas-sprite-sheet-generator.js',
100
100
  './src/server/shape-generator.js',
101
101
  './src/server/semantic-layer-generator.js',
102
+ './src/server/besu-genesis-generator.js',
102
103
  './test/shape-generator.test.js',
103
104
  'bin/cyberia.js',
104
105
  ]) {
@@ -141,7 +142,7 @@ try {
141
142
  templatePackageJson.keywords = uniqueArray(
142
143
  ['pwa', 'microservices', 'template', 'builder'].concat(templatePackageJson.keywords),
143
144
  );
144
- delete templatePackageJson.scripts['update-template'];
145
+ delete templatePackageJson.scripts['update:template'];
145
146
  fs.writeFileSync(
146
147
  '../pwa-microservices-template/package.json',
147
148
  JSON.stringify(templatePackageJson, null, 4),