@steedos/service-package-registry 2.6.1-beta.7 → 2.6.2-beta.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 (27) hide show
  1. package/main/default/client/project_nodes.client.js +2 -2
  2. package/main/default/manager/loader.js +136 -40
  3. package/main/default/manager/packages.js +29 -6
  4. package/main/default/manager/registry.js +28 -2
  5. package/main/default/objectTranslations/steedos_packages.en/steedos_packages.en.objectTranslation.yml +4 -0
  6. package/main/default/objects/steedos_packages/fields/dependencies.field.yml +4 -0
  7. package/main/default/objects/steedos_packages/fields/description.field.yml +1 -1
  8. package/main/default/objects/steedos_packages/fields/homepage.field.yml +4 -0
  9. package/main/default/objects/steedos_packages/fields/icon.field.yml +3 -0
  10. package/main/default/objects/steedos_packages/fields/instance_id.field.yml +1 -0
  11. package/main/default/objects/steedos_packages/fields/metadata.$.type.field.yml +1 -1
  12. package/main/default/objects/steedos_packages/fields/metadata.field.yml +2 -1
  13. package/main/default/objects/steedos_packages/fields/node_id.field.yml +1 -0
  14. package/main/default/objects/steedos_packages/fields/readme.field.yml +4 -0
  15. package/main/default/objects/steedos_packages/fields/service_name.field.yml +1 -0
  16. package/main/default/objects/steedos_packages/fields/static.field.yml +4 -0
  17. package/main/default/objects/steedos_packages/listviews/all.listview.yml +6 -5
  18. package/main/default/objects/steedos_packages/listviews/custom.listview.yml +8 -0
  19. package/main/default/objects/steedos_packages/listviews/system.listview.yml +8 -0
  20. package/main/default/pages/steedos_package_detail.page.amis.json +144 -0
  21. package/main/default/pages/steedos_package_detail.page.yml +12 -0
  22. package/main/default/pages/steedos_packages_list.page.amis.json +146 -0
  23. package/main/default/pages/steedos_packages_list.page.yml +12 -0
  24. package/package.json +7 -7
  25. package/project.package.service.js +183 -220
  26. package/main/default/routes/nodes.router.js +0 -226
  27. package/main/default/routes/registry.router.js +0 -21
@@ -1,226 +0,0 @@
1
- const express = require('express');
2
- const router = express.Router();
3
- const core = require('@steedos/core');
4
- const registry = require('../manager/registry');
5
- const loader = require('../manager/loader');
6
- const objectql = require('@steedos/objectql');
7
- let schema = objectql.getSteedosSchema();
8
-
9
- const packageInstallationNodeID = process.env.STEEDOS_PACKAGE_INSTALLATION_NODEID || null;
10
- router.get('/api/nodes/install', core.requireAuthentication, async function (req, res) {
11
- const userSession = req.user;
12
- const isSpaceAdmin = userSession.is_space_admin;
13
- const body = JSON.parse(decodeURIComponent(Buffer.from(req.query.data, "base64").toString('utf8')));
14
- if(!isSpaceAdmin){
15
- return res.status(401).send({ message: 'No permission' });
16
- }
17
- try {
18
- const { module, version, label, description} = body || {};
19
- let broker = schema.broker;
20
- const result = await broker.call(`~packages-project-server.installPackage`, {
21
- module, version, label, description
22
- },{
23
- nodeID: packageInstallationNodeID
24
- })
25
- res.redirect(302, `/app/admin/steedos_packages/grid/all`);
26
- // res.status(200).send(result); //TODO 完善返回信息
27
- } catch (error) {
28
- console.error(error);
29
- res.status(500).send({error: error.message});
30
- }
31
- });
32
-
33
- router.post('/api/nodes/uninstall', core.requireAuthentication, async function (req, res) {
34
- const userSession = req.user;
35
- const isSpaceAdmin = userSession.is_space_admin;
36
- const body = req.body;
37
- if(!isSpaceAdmin){
38
- return res.status(401).send({ message: 'No permission' });
39
- }
40
- try {
41
- await loader.removePackage(body.module);
42
- await registry.uninstallModule(body.module)
43
- const { module, nodeID} = body || {};
44
- let broker = schema.broker;
45
- const result = await broker.call(`~packages-project-server.uninstallPackage`, {
46
- module
47
- },{
48
- nodeID: packageInstallationNodeID
49
- })
50
- res.status(200).send(result); //TODO 完善返回信息
51
- } catch (error) {
52
- console.error(error);
53
- res.status(500).send({error: error.message});
54
- }
55
- });
56
-
57
- router.post('/api/nodes/reload', core.requireAuthentication, async function (req, res) {
58
- const userSession = req.user;
59
- const isSpaceAdmin = userSession.is_space_admin;
60
- const body = req.body;
61
- if(!isSpaceAdmin){
62
- return res.status(401).send({ message: 'No permission' });
63
- }
64
- try {
65
- const { module, nodeID} = body || {};
66
- let broker = schema.broker;
67
- const result = await broker.call(`~packages-project-server.reloadPackage`, {
68
- module
69
- },{
70
- nodeID: packageInstallationNodeID
71
- })
72
- res.status(200).send(result);
73
- } catch (error) {
74
- console.error(error);
75
- res.status(500).send({error: error.message});
76
- }
77
- });
78
-
79
- router.post('/api/nodes/disable', core.requireAuthentication, async function (req, res) {
80
- const userSession = req.user;
81
- const isSpaceAdmin = userSession.is_space_admin;
82
- const body = req.body;
83
- if(!isSpaceAdmin){
84
- return res.status(401).send({ message: 'No permission' });
85
- }
86
- try {
87
- const { module, nodeID} = body || {};
88
- let broker = schema.broker;
89
- console.log(`disablePackage ${module}, node id is`, packageInstallationNodeID)
90
- const result = await broker.call(`~packages-project-server.disablePackage`, {
91
- module
92
- },{
93
- nodeID: packageInstallationNodeID
94
- })
95
- res.status(200).send(result);
96
- } catch (error) {
97
- console.error(error);
98
- res.status(500).send({error: error.message});
99
- }
100
- });
101
-
102
- router.post('/api/nodes/enable', core.requireAuthentication, async function (req, res) {
103
- const userSession = req.user;
104
- const isSpaceAdmin = userSession.is_space_admin;
105
- const body = req.body;
106
- if(!isSpaceAdmin){
107
- return res.status(401).send({ message: 'No permission' });
108
- }
109
- try {
110
- const { module, nodeID} = body || {};
111
- let broker = schema.broker;
112
- const result = await broker.call(`~packages-project-server.enablePackage`, {
113
- module
114
- },{
115
- nodeID: packageInstallationNodeID
116
- })
117
- res.status(200).send(result);
118
- } catch (error) {
119
- console.error(error);
120
- res.status(500).send({error: error.message});
121
- }
122
- });
123
- router.get('/api/nodes/versions', core.requireAuthentication, async function (req, res) {
124
- const userSession = req.user;
125
- const isSpaceAdmin = userSession.is_space_admin;
126
- // console.log(`req.query`, req.query)
127
- const body = req.query;
128
- const { module } = body || {};
129
- if(!module){
130
- return res.status(500).send({ message: 'Not find module' });
131
- }
132
- if(!isSpaceAdmin){
133
- return res.status(401).send({ message: 'No permission' });
134
- }
135
- try {
136
-
137
- let broker = schema.broker;
138
- const result = await broker.call(`~packages-project-server.getPackageVersions`, {
139
- module
140
- },{
141
- nodeID: packageInstallationNodeID
142
- })
143
- res.status(200).send(result); //TODO 完善返回信息
144
- } catch (error) {
145
- console.error(error);
146
- res.status(500).send({error: error.message});
147
- }
148
- });
149
-
150
- router.post('/api/nodes/upgrade', core.requireAuthentication, async function (req, res) {
151
- const userSession = req.user;
152
- const isSpaceAdmin = userSession.is_space_admin;
153
- const body = req.body;
154
- if(!isSpaceAdmin){
155
- return res.status(401).send({ message: 'No permission' });
156
- }
157
- try {
158
- const { module, version} = body || {};
159
- let broker = schema.broker;
160
- const result = await broker.call(`~packages-project-server.upgradePackage`, {
161
- module, version
162
- },{
163
- nodeID: packageInstallationNodeID
164
- })
165
- res.status(200).send(result);
166
- } catch (error) {
167
- console.error(error);
168
- res.status(500).send({error: error.message});
169
- }
170
- });
171
-
172
- router.get('/api/nodes/cloud/saas/packages/purchased', core.requireAuthentication, async function (req, res) {
173
- const userSession = req.user;
174
- try {
175
- let broker = schema.broker;
176
- const result = await broker.call(`~packages-project-server.getCloudSaasPurchasedPackages`, {
177
- }, {
178
- nodeID: packageInstallationNodeID,
179
- meta: {
180
- user: userSession
181
- }
182
- })
183
- res.status(200).send(result);
184
- } catch (error) {
185
- console.error(error);
186
- res.status(500).send(error.message);
187
- }
188
- });
189
-
190
- router.post('/api/nodes/cloud/saas/packages/purchased', core.requireAuthentication, async function(req, res){
191
- const userSession = req.user;
192
- try {
193
- let broker = schema.broker;
194
- const result = await broker.call(`~packages-project-server.installPurchasedPackages`, {}, {
195
- nodeID: packageInstallationNodeID,
196
- meta: {
197
- user: userSession
198
- }
199
- })
200
- res.status(200).send(result);
201
- } catch (error) {
202
- console.error(error);
203
- res.status(500).send(error.message);
204
- }
205
- });
206
-
207
- router.post('/api/nodes/cloud/saas/packages/url', core.requireAuthentication, async function(req, res){
208
- const userSession = req.user;
209
- try {
210
- let broker = schema.broker;
211
- const { module, version, url, auth, registry_url } = req.body;
212
- const result = await broker.call(`~packages-project-server.installPackageFromUrl`, {module, version, url, auth, registry_url}, {
213
- nodeID: packageInstallationNodeID,
214
- meta: {
215
- user: userSession
216
- }
217
- })
218
- res.status(200).send(result);
219
- } catch (error) {
220
- console.error(error);
221
- res.status(500).send(error.message);
222
- }
223
- })
224
-
225
-
226
- exports.default = router;
@@ -1,21 +0,0 @@
1
- /*
2
- * @Author: baozhoutao@steedos.com
3
- * @Date: 2022-11-17 16:29:17
4
- * @LastEditors: baozhoutao@steedos.com
5
- * @LastEditTime: 2022-11-28 18:01:04
6
- * @Description:
7
- */
8
- const express = require('express');
9
- const router = express.Router();
10
- const core = require("@steedos/core");
11
-
12
- let STEEDOS_REGISTRY_URL = process.env.STEEDOS_REGISTRY_URL ? process.env.STEEDOS_REGISTRY_URL : 'https://registry.steedos.cn/';
13
-
14
- router.get("/api/nodes/registry", core.requireAuthentication, async function (req, res) {
15
- res.status(200).send([
16
- { label: "https://registry.npmjs.org/", value: "https://registry.npmjs.org/" },
17
- { label: "https://registry.npm.taobao.org/", value: "https://registry.npm.taobao.org/" },
18
- { label: STEEDOS_REGISTRY_URL, value: STEEDOS_REGISTRY_URL },
19
- ]);
20
- });
21
- exports.default = router;