@steedos/service-package-registry 3.0.0-beta.2 → 3.0.0-beta.9
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.
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
const yaml = require('js-yaml');
|
|
2
2
|
const _ = require('lodash');
|
|
3
|
-
const steedos = require('@steedos/core');
|
|
4
3
|
const fs = require("fs");
|
|
5
4
|
const path = require('path');
|
|
6
5
|
const objectql = require('@steedos/objectql');
|
|
@@ -101,7 +100,6 @@ const appendToPackagesConfig = (packageName, options, actionName)=>{
|
|
|
101
100
|
|
|
102
101
|
const loadPackages = async ()=>{
|
|
103
102
|
let schema = objectql.getSteedosSchema();
|
|
104
|
-
let broker = schema.broker;
|
|
105
103
|
const packages = loadPackagesConfig();
|
|
106
104
|
for (const packageName in packages) {
|
|
107
105
|
const package = packages[packageName]
|
|
@@ -116,7 +114,7 @@ const loadPackages = async ()=>{
|
|
|
116
114
|
}
|
|
117
115
|
}
|
|
118
116
|
} catch (error) {
|
|
119
|
-
|
|
117
|
+
console.error(`start package ${packageName} error: ${error.message}`)
|
|
120
118
|
}
|
|
121
119
|
|
|
122
120
|
}else if(package.local !== true){
|
|
@@ -134,7 +132,7 @@ const loadPackages = async ()=>{
|
|
|
134
132
|
const packageInfo = await loadPackage(packageName);
|
|
135
133
|
appendToPackagesConfig(packageInfo.name, {version: packageInfo.version, description: packageInfo.description, local: false});
|
|
136
134
|
} catch (error) {
|
|
137
|
-
|
|
135
|
+
console.error(`start package ${packageName} error: ${error.message}`)
|
|
138
136
|
}
|
|
139
137
|
}
|
|
140
138
|
}else if(package.local === true && package.static != true){
|
|
@@ -149,7 +147,7 @@ const loadPackages = async ()=>{
|
|
|
149
147
|
appendToPackagesConfig(packageInfo.name, {version: packageInfo.version, description: packageInfo.description, local: true});
|
|
150
148
|
}
|
|
151
149
|
} catch (error) {
|
|
152
|
-
|
|
150
|
+
console.error(`start package ${packageName} error: ${error.message}`)
|
|
153
151
|
}
|
|
154
152
|
}
|
|
155
153
|
}
|
|
@@ -183,7 +181,7 @@ const destroyExistThePackageService = async (packageInfo)=>{
|
|
|
183
181
|
});
|
|
184
182
|
}
|
|
185
183
|
if (svc) {
|
|
186
|
-
|
|
184
|
+
console.info(`Destroy previous '${schema.name}' service...`);
|
|
187
185
|
await broker.destroyService(svc);
|
|
188
186
|
}
|
|
189
187
|
}
|
|
@@ -249,7 +247,7 @@ const loadPackage = async (packageName, packagePath)=>{
|
|
|
249
247
|
let schema = objectql.getSteedosSchema();
|
|
250
248
|
let broker = schema.broker;
|
|
251
249
|
if(!fs.existsSync(packagePath) || !fs.existsSync(path.join(packagePath, 'package.json'))){
|
|
252
|
-
|
|
250
|
+
console.warn(`已经从 steedos-packages.yml 文件中删除无效的软件包配置 ${packageName} : ${packagePath}`)
|
|
253
251
|
removePackageConfig(packageName);
|
|
254
252
|
return ;
|
|
255
253
|
}
|
|
@@ -264,7 +262,7 @@ const loadPackage = async (packageName, packagePath)=>{
|
|
|
264
262
|
}
|
|
265
263
|
|
|
266
264
|
await destroyExistThePackageService(packageInfo);
|
|
267
|
-
await
|
|
265
|
+
await metaDataCore.loadPackage(packagePath);
|
|
268
266
|
// const packageConfig = getPackageConfig(packageName);
|
|
269
267
|
// if(packageInfo.dependencies){
|
|
270
268
|
// for (const dependencyName in packageInfo.dependencies) {
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"actions": [
|
|
33
33
|
{
|
|
34
34
|
"label": "${uiSchema.actions.enable.label}",
|
|
35
|
-
"disabledOn": "${status === 'enable' || window:
|
|
35
|
+
"disabledOn": "${status === 'enable' || window:Steedos.settings.public.enable_saas}",
|
|
36
36
|
"className": "mr-4",
|
|
37
37
|
"onEvent": {
|
|
38
38
|
"click": {
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
},
|
|
49
49
|
{
|
|
50
50
|
"label": "${uiSchema.actions.disable.label}",
|
|
51
|
-
"disabledOn": "${status !== 'enable' || window:
|
|
51
|
+
"disabledOn": "${status !== 'enable' || window:Steedos.settings.public.enable_saas}",
|
|
52
52
|
"onEvent": {
|
|
53
53
|
"click": {
|
|
54
54
|
"actions": [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/service-package-registry",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.9",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "package.service.js",
|
|
6
6
|
"scripts": {
|
|
@@ -9,11 +9,10 @@
|
|
|
9
9
|
"author": "",
|
|
10
10
|
"license": "ISC",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@steedos/auth": "3.0.0-beta.
|
|
13
|
-
"@steedos/core": "3.0.0-beta.
|
|
14
|
-
"@steedos/
|
|
15
|
-
"@steedos/
|
|
16
|
-
"@steedos/service-package-loader": "3.0.0-beta.2",
|
|
12
|
+
"@steedos/auth": "3.0.0-beta.9",
|
|
13
|
+
"@steedos/metadata-core": "3.0.0-beta.9",
|
|
14
|
+
"@steedos/objectql": "3.0.0-beta.9",
|
|
15
|
+
"@steedos/service-package-loader": "3.0.0-beta.9",
|
|
17
16
|
"clone": "^2.1.2",
|
|
18
17
|
"fs-extra": "8.1.0",
|
|
19
18
|
"i18next": "20.3.2",
|
|
@@ -32,5 +31,5 @@
|
|
|
32
31
|
"publishConfig": {
|
|
33
32
|
"access": "public"
|
|
34
33
|
},
|
|
35
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "9111ae9e9ce7c57c67c6bd670706f4344c28d69d"
|
|
36
35
|
}
|
package/package.service.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* @Author: baozhoutao@steedos.com
|
|
3
3
|
* @Date: 2022-07-16 15:58:42
|
|
4
|
-
* @LastEditors:
|
|
5
|
-
* @LastEditTime:
|
|
4
|
+
* @LastEditors: baozhoutao@steedos.com
|
|
5
|
+
* @LastEditTime: 2025-02-18 11:23:24
|
|
6
6
|
* @Description:
|
|
7
7
|
*/
|
|
8
8
|
"use strict";
|
|
@@ -47,6 +47,7 @@ module.exports = {
|
|
|
47
47
|
* Service started lifecycle event handler
|
|
48
48
|
*/
|
|
49
49
|
async started() {
|
|
50
|
+
|
|
50
51
|
},
|
|
51
52
|
|
|
52
53
|
/**
|
|
@@ -42,7 +42,7 @@ module.exports = {
|
|
|
42
42
|
/**
|
|
43
43
|
* Dependencies
|
|
44
44
|
*/
|
|
45
|
-
dependencies: ['
|
|
45
|
+
dependencies: ['@steedos/service-packages'],
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
48
|
* Actions
|
|
@@ -260,7 +260,38 @@ module.exports = {
|
|
|
260
260
|
* Events
|
|
261
261
|
*/
|
|
262
262
|
events: {
|
|
263
|
-
|
|
263
|
+
'steedos-server.started': async function(){
|
|
264
|
+
const PACKAGE_INSTALL_NODE = process.env.PACKAGE_INSTALL_NODE
|
|
265
|
+
if(PACKAGE_INSTALL_NODE){
|
|
266
|
+
await this.broker.call('metadata.add', {key: `#package_install_node.${this.broker.nodeID}`, data: {nodeID: PACKAGE_INSTALL_NODE}}, {meta: {}})
|
|
267
|
+
}
|
|
268
|
+
packages.maintainSystemFiles()
|
|
269
|
+
// 单包路径steedos-app
|
|
270
|
+
try {
|
|
271
|
+
const packagePath = path.join(process.cwd(), 'steedos-app');
|
|
272
|
+
if(fs.existsSync(packagePath)){
|
|
273
|
+
const packageInfo = require(path.join(packagePath, 'package.json'));
|
|
274
|
+
loader.appendToPackagesConfig(`${packageInfo.name}`, {version: packageInfo.version, description: packageInfo.description || '', local: true, path: util.getPackageRelativePath(process.cwd(), packagePath)});
|
|
275
|
+
}
|
|
276
|
+
} catch (error) {
|
|
277
|
+
console.log(`started error`, error)
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
await metadata.uncompressPackages(process.cwd());
|
|
281
|
+
const mPackages = metadata.getAllPackages(process.cwd());
|
|
282
|
+
_.each(mPackages, (packagePath)=>{
|
|
283
|
+
try {
|
|
284
|
+
const packageInfo = require(path.join(packagePath, 'package.json'));
|
|
285
|
+
loader.appendToPackagesConfig(packageInfo.name, {version: packageInfo.version, description: packageInfo.description, local: true, path: util.getPackageRelativePath(process.cwd(), packagePath)});
|
|
286
|
+
} catch (error) {
|
|
287
|
+
console.log(`started error`, error)
|
|
288
|
+
}
|
|
289
|
+
})
|
|
290
|
+
await this.initialPackages();
|
|
291
|
+
await loader.loadPackages();
|
|
292
|
+
|
|
293
|
+
await this.installPackagesSyncToMetaData()
|
|
294
|
+
}
|
|
264
295
|
},
|
|
265
296
|
|
|
266
297
|
/**
|
|
@@ -420,19 +451,30 @@ module.exports = {
|
|
|
420
451
|
case "directory":
|
|
421
452
|
case "remote":
|
|
422
453
|
case "file":
|
|
454
|
+
installProps.name = parsed.rawSpec;
|
|
455
|
+
break;
|
|
423
456
|
case "git":
|
|
424
457
|
installProps.url = parsed.rawSpec;
|
|
425
458
|
break;
|
|
426
459
|
case "alias":
|
|
427
460
|
throw new Error(`not support ${parsed.type}`);
|
|
428
461
|
}
|
|
429
|
-
if(
|
|
430
|
-
|
|
431
|
-
|
|
462
|
+
if(parsed.type === 'file' || parsed.type === 'directory'){
|
|
463
|
+
const pInfos = await this.yarnAddPackage(packageName)
|
|
464
|
+
for(const pInfo of pInfos){
|
|
465
|
+
await this.broker.call('@steedos/service-project.enablePackage', {module: pInfo.name})
|
|
466
|
+
}
|
|
467
|
+
|
|
432
468
|
}else{
|
|
433
|
-
|
|
434
|
-
|
|
469
|
+
if(installProps.url){
|
|
470
|
+
//module, version, url, auth, enable, registry_url, broker
|
|
471
|
+
await this.installPackageFromUrl(installProps.url, installProps.version, installProps.url, null, true, null, this.broker);
|
|
472
|
+
}else{
|
|
473
|
+
//module, version, label, description, enable, broker
|
|
474
|
+
await this.installPackage(installProps.name, installProps.version, null, null, true, this.broker, process.env.NPM_REGISTRY_URL);
|
|
475
|
+
}
|
|
435
476
|
}
|
|
477
|
+
|
|
436
478
|
} catch (error) {
|
|
437
479
|
this.broker.logger.error(`initialPackages: ${packageName}. ${error.message}`);
|
|
438
480
|
}
|
|
@@ -548,6 +590,7 @@ module.exports = {
|
|
|
548
590
|
})
|
|
549
591
|
})
|
|
550
592
|
}
|
|
593
|
+
return packages;
|
|
551
594
|
}
|
|
552
595
|
}
|
|
553
596
|
},
|
|
@@ -563,36 +606,6 @@ module.exports = {
|
|
|
563
606
|
* Service started lifecycle event handler
|
|
564
607
|
*/
|
|
565
608
|
async started() {
|
|
566
|
-
|
|
567
|
-
const PACKAGE_INSTALL_NODE = process.env.PACKAGE_INSTALL_NODE
|
|
568
|
-
if(PACKAGE_INSTALL_NODE){
|
|
569
|
-
await this.broker.call('metadata.add', {key: `#package_install_node.${this.broker.nodeID}`, data: {nodeID: PACKAGE_INSTALL_NODE}}, {meta: {}})
|
|
570
|
-
}
|
|
571
|
-
packages.maintainSystemFiles()
|
|
572
|
-
// 单包路径steedos-app
|
|
573
|
-
try {
|
|
574
|
-
const packagePath = path.join(process.cwd(), 'steedos-app');
|
|
575
|
-
if(fs.existsSync(packagePath)){
|
|
576
|
-
const packageInfo = require(path.join(packagePath, 'package.json'));
|
|
577
|
-
loader.appendToPackagesConfig(`${packageInfo.name}`, {version: packageInfo.version, description: packageInfo.description || '', local: true, path: util.getPackageRelativePath(process.cwd(), packagePath)});
|
|
578
|
-
}
|
|
579
|
-
} catch (error) {
|
|
580
|
-
console.log(`started error`, error)
|
|
581
|
-
}
|
|
582
|
-
|
|
583
|
-
await metadata.uncompressPackages(process.cwd());
|
|
584
|
-
const mPackages = metadata.getAllPackages(process.cwd());
|
|
585
|
-
_.each(mPackages, (packagePath)=>{
|
|
586
|
-
try {
|
|
587
|
-
const packageInfo = require(path.join(packagePath, 'package.json'));
|
|
588
|
-
loader.appendToPackagesConfig(packageInfo.name, {version: packageInfo.version, description: packageInfo.description, local: true, path: util.getPackageRelativePath(process.cwd(), packagePath)});
|
|
589
|
-
} catch (error) {
|
|
590
|
-
console.log(`started error`, error)
|
|
591
|
-
}
|
|
592
|
-
})
|
|
593
|
-
await loader.loadPackages();
|
|
594
|
-
|
|
595
|
-
await this.installPackagesSyncToMetaData()
|
|
596
609
|
|
|
597
610
|
},
|
|
598
611
|
|