qcobjects-cli 2.3.49 → 2.4.21
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.
- package/.github/FUNDING.yml +12 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
- package/.github/ISSUE_TEMPLATE/custom.md +10 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- package/.github/ISSUE_TEMPLATE/issue-template.md +33 -0
- package/.github/workflows/codeql-analysis.yml +71 -0
- package/.github/workflows/npmpublish-beta.yml +38 -0
- package/.github/workflows/npmpublish-lts.yml +38 -0
- package/.github/workflows/npmpublish-main.yml +38 -0
- package/.gitlab-ci.yml +3 -2
- package/VERSION +1 -1
- package/backend/com.qcobjects.backend.microservice.static.js +40 -24
- package/backend/org.qcobjects.backend.php.js +149 -116
- package/{org.quickcorp.qcobjects.cli.commands.jira.client_services.js → com.qcobjects.cli.commands.jira.client_services.js} +29 -22
- package/{org.quickcorp.qcobjects.cli.commands.jira.js → com.qcobjects.cli.commands.jira.js} +77 -60
- package/{org.quickcorp.qcobjects.cli.commands.js → com.qcobjects.cli.commands.js} +3 -3
- package/com.qcobjects.cli.commands.version.js +285 -0
- package/org.qcobjects.common.pipelog.js +55 -0
- package/org.qcobjects.enterprise.commands.js +149 -139
- package/org.quickcorp.qcobjects.api.client_services.js +31 -20
- package/org.quickcorp.qcobjects.cli.js +288 -275
- package/org.quickcorp.qcobjects.collab.server.js +317 -308
- package/org.quickcorp.qcobjects.defaultsettings.js +1 -1
- package/org.quickcorp.qcobjects.main.file.js +100 -79
- package/org.quickcorp.qcobjects.main.http.gae.server.js +265 -234
- package/org.quickcorp.qcobjects.main.http.server.js +156 -147
- package/org.quickcorp.qcobjects.main.http2.server.js +198 -191
- package/package.json +18 -10
- package/qcobjects-cli.js +8 -11
- package/qcobjects-collab.js +8 -6
- package/qcobjects-createcert.js +28 -16
- package/qcobjects-gae-http-server.js +8 -5
- package/qcobjects-http-server.js +7 -5
- package/qcobjects-http2-server.js +8 -5
- package/qcobjects-shell.js +113 -107
- package/org.quickcorp.qcobjects.cli.commands.version.js +0 -267
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* QCObjects CLI 2.
|
|
2
|
+
* QCObjects CLI 2.4.x
|
|
3
3
|
* ________________
|
|
4
4
|
*
|
|
5
5
|
* Author: Jean Machuca <correojean@gmail.com>
|
|
@@ -33,10 +33,11 @@
|
|
|
33
33
|
const path = require("path");
|
|
34
34
|
const absolutePath = path.resolve( __dirname, "./" );
|
|
35
35
|
|
|
36
|
-
const http2 = require("http2");
|
|
37
36
|
const fs = require("fs");
|
|
38
37
|
const mime = require("mime");
|
|
39
38
|
require(absolutePath+"/org.quickcorp.qcobjects.main.file.js");
|
|
39
|
+
require(absolutePath+ "/org.qcobjects.common.pipelog.js");
|
|
40
|
+
|
|
40
41
|
|
|
41
42
|
let ImportMicroservice = function (microservicePackage){
|
|
42
43
|
var standardPath = findPackageNodePath(microservicePackage) || findPackageNodePath(microservicePackage+".js");
|
|
@@ -48,14 +49,50 @@ let ImportMicroservice = function (microservicePackage){
|
|
|
48
49
|
};
|
|
49
50
|
|
|
50
51
|
Package("org.quickcorp.qcobjects.main.http.server",[
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
52
|
+
|
|
53
|
+
class BackendMicroservice extends InheritClass {
|
|
54
|
+
constructor({
|
|
55
|
+
domain=CONFIG.get("domain"),
|
|
56
|
+
basePath=CONFIG.get("basePath"),
|
|
57
|
+
body=null,
|
|
58
|
+
stream=null,
|
|
59
|
+
server=null,
|
|
60
|
+
request=null
|
|
61
|
+
}){
|
|
62
|
+
super(...arguments);
|
|
63
|
+
|
|
64
|
+
logger.debug("Executing Legacy HTTP BackendMicroservice ");
|
|
65
|
+
let microservice = this;
|
|
66
|
+
this.cors();
|
|
67
|
+
microservice.req.on("data", (data) => {
|
|
68
|
+
// data from POST, GET
|
|
69
|
+
var requestMethod = request.method.toLowerCase();
|
|
70
|
+
var supportedMethods = {"post":microservice.post,
|
|
71
|
+
};
|
|
72
|
+
if (supportedMethods.hasOwnProperty.call(supportedMethods,requestMethod)) {
|
|
73
|
+
supportedMethods[requestMethod].call(microservice,data);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
// data from POST, GET
|
|
78
|
+
var requestMethod = request.method.toLowerCase();
|
|
79
|
+
var supportedMethods = {"get":microservice.get,
|
|
80
|
+
"head":microservice.head,
|
|
81
|
+
"put":microservice.put,
|
|
82
|
+
"delete":microservice.delete,
|
|
83
|
+
"connect":microservice.connect,
|
|
84
|
+
"options":microservice.options,
|
|
85
|
+
"trace":microservice.trace,
|
|
86
|
+
"patch":microservice.patch
|
|
87
|
+
};
|
|
88
|
+
if (supportedMethods.hasOwnProperty.call(supportedMethods,requestMethod)) {
|
|
89
|
+
supportedMethods[requestMethod].call(microservice);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
cors(){
|
|
59
96
|
if (this.route.cors){
|
|
60
97
|
let {allow_origins,allow_credentials,allow_methods,allow_headers} = this.route.cors;
|
|
61
98
|
var microservice = this;
|
|
@@ -94,56 +131,24 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
94
131
|
microservice.headers["Access-Control-Allow-Headers"] = "*";
|
|
95
132
|
}
|
|
96
133
|
}
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
var supportedMethods = {"post":microservice.post,
|
|
108
|
-
};
|
|
109
|
-
if (supportedMethods.hasOwnProperty.call(supportedMethods,requestMethod)) {
|
|
110
|
-
supportedMethods[requestMethod].call(microservice,data);
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
// data from POST, GET
|
|
115
|
-
var requestMethod = request.method.toLowerCase();
|
|
116
|
-
var supportedMethods = {"get":microservice.get,
|
|
117
|
-
"head":microservice.head,
|
|
118
|
-
"put":microservice.put,
|
|
119
|
-
"delete":microservice.delete,
|
|
120
|
-
"connect":microservice.connect,
|
|
121
|
-
"options":microservice.options,
|
|
122
|
-
"trace":microservice.trace,
|
|
123
|
-
"patch":microservice.patch
|
|
124
|
-
};
|
|
125
|
-
if (supportedMethods.hasOwnProperty.call(supportedMethods,requestMethod)) {
|
|
126
|
-
supportedMethods[requestMethod].call(microservice);
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
},
|
|
130
|
-
head:function (formData){this.done();},
|
|
131
|
-
post:function (formData){this.done();},
|
|
132
|
-
put:function (formData){this.done();},
|
|
133
|
-
delete:function (formData){this.done();},
|
|
134
|
-
connect:function (formData){this.done();},
|
|
135
|
-
options:function (formData){this.done();},
|
|
136
|
-
trace:function (formData){this.done();},
|
|
137
|
-
patch:function (formData){this.done();},
|
|
138
|
-
finishWithBody:function (stream){
|
|
134
|
+
}
|
|
135
|
+
head(formData){this.done();}
|
|
136
|
+
post(formData){this.done();}
|
|
137
|
+
put(formData){this.done();}
|
|
138
|
+
delete(formData){this.done();}
|
|
139
|
+
connect(formData){this.done();}
|
|
140
|
+
options(formData){this.done();}
|
|
141
|
+
trace(formData){this.done();}
|
|
142
|
+
patch(formData){this.done();}
|
|
143
|
+
finishWithBody(stream){
|
|
139
144
|
try {
|
|
140
145
|
stream.write(JSON.stringify(this.body));
|
|
141
146
|
stream.end();
|
|
142
147
|
} catch (e){
|
|
143
148
|
logger.debug("Something wrong writing the response for microservice"+e.toString());
|
|
144
149
|
}
|
|
145
|
-
}
|
|
146
|
-
done
|
|
150
|
+
}
|
|
151
|
+
done(){
|
|
147
152
|
var microservice = this;
|
|
148
153
|
var stream = microservice.stream;
|
|
149
154
|
try {
|
|
@@ -156,33 +161,30 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
156
161
|
microservice.finishWithBody.call(microservice,stream);
|
|
157
162
|
}
|
|
158
163
|
}
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
},
|
|
168
|
+
|
|
169
|
+
class HTTPServerResponse extends InheritClass {
|
|
170
|
+
constructor ({
|
|
171
|
+
headers={
|
|
172
|
+
":status": 200,
|
|
173
|
+
"content-type": "text/html"
|
|
174
|
+
},
|
|
175
|
+
body="",
|
|
176
|
+
request=null,
|
|
177
|
+
fileDispatcher=null,
|
|
178
|
+
stream=null
|
|
179
|
+
}){
|
|
180
|
+
super(...arguments);
|
|
181
|
+
var self = this;
|
|
182
|
+
self.stream = self.stream;
|
|
183
|
+
self._generateResponse();
|
|
184
|
+
|
|
175
185
|
}
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
headers:{
|
|
179
|
-
":status": 200,
|
|
180
|
-
"content-type": "text/html"
|
|
181
|
-
},
|
|
182
|
-
body:"",
|
|
183
|
-
request:null,
|
|
184
|
-
fileDispatcher:null,
|
|
185
|
-
sendFile: function (stream, fileName) {
|
|
186
|
+
|
|
187
|
+
sendFile(stream, fileName) {
|
|
186
188
|
// read and send file content in the stream
|
|
187
189
|
|
|
188
190
|
try {
|
|
@@ -233,13 +235,13 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
233
235
|
stream.end();
|
|
234
236
|
}
|
|
235
237
|
}
|
|
236
|
-
}
|
|
237
|
-
_generateResponse
|
|
238
|
+
}
|
|
239
|
+
_generateResponse(){
|
|
238
240
|
var response = this;
|
|
239
241
|
response.fileDispatcher = New(FileDispatcher,{
|
|
240
242
|
scriptname:response.request.scriptname,
|
|
241
243
|
pathname:response.request.pathname,
|
|
242
|
-
done
|
|
244
|
+
done(headers,body,templateURI,isTemplate){
|
|
243
245
|
response.headers = headers;
|
|
244
246
|
var stream = response.stream;
|
|
245
247
|
if (isTemplate){
|
|
@@ -258,69 +260,44 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
258
260
|
}
|
|
259
261
|
});
|
|
260
262
|
|
|
261
|
-
}
|
|
262
|
-
_new_:function (o){
|
|
263
|
-
var self = this;
|
|
264
|
-
self.body = "";
|
|
265
|
-
self.stream = o.stream;
|
|
266
|
-
self._generateResponse();
|
|
263
|
+
}
|
|
267
264
|
|
|
265
|
+
},
|
|
266
|
+
|
|
267
|
+
class HTTPServerRequest extends InheritClass {
|
|
268
|
+
constructor ({
|
|
269
|
+
scriptname="",
|
|
270
|
+
path="",
|
|
271
|
+
method="",
|
|
272
|
+
url="",
|
|
273
|
+
headers=null,
|
|
274
|
+
flags=null,
|
|
275
|
+
protocol= null,
|
|
276
|
+
slashes= null,
|
|
277
|
+
auth= null,
|
|
278
|
+
host= null,
|
|
279
|
+
port= null,
|
|
280
|
+
hostname= null,
|
|
281
|
+
hash= null,
|
|
282
|
+
search= "",
|
|
283
|
+
query= "",
|
|
284
|
+
pathname= "",
|
|
285
|
+
href= ""
|
|
286
|
+
}){
|
|
287
|
+
super(...arguments);
|
|
268
288
|
}
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
port: null,
|
|
282
|
-
hostname: null,
|
|
283
|
-
hash: null,
|
|
284
|
-
search: "",
|
|
285
|
-
query: "",
|
|
286
|
-
pathname: "",
|
|
287
|
-
href: ""
|
|
288
|
-
}),
|
|
289
|
-
Class("HTTPServer",{
|
|
290
|
-
request:null,
|
|
291
|
-
response:"",
|
|
292
|
-
server:null,
|
|
293
|
-
scriptname:"",
|
|
294
|
-
interceptorInstances:[],
|
|
295
|
-
showIPAddress:function (){
|
|
296
|
-
var _ret_ = "";
|
|
297
|
-
var os = require("os");
|
|
298
|
-
var ifaces = os.networkInterfaces();
|
|
299
|
-
Object.keys(ifaces).forEach(function (iface){
|
|
300
|
-
ifaces[iface].map(function (ipGroup){
|
|
301
|
-
_ret_ += iface +": " + PipeLog.pipe(ipGroup)+"\n";
|
|
302
|
-
});
|
|
303
|
-
});
|
|
304
|
-
return _ret_;
|
|
305
|
-
},
|
|
306
|
-
showPossibleURL: function (){
|
|
307
|
-
var _ret_ = "";
|
|
308
|
-
var os = require("os");
|
|
309
|
-
var ifaces = os.networkInterfaces();
|
|
310
|
-
Object.keys(ifaces).forEach(function (iface){
|
|
311
|
-
ifaces[iface].map(function (ipGroup){
|
|
312
|
-
if (ipGroup["family"].toLowerCase()=="ipv4"){
|
|
313
|
-
_ret_ += "http://"+ipGroup["address"]+":"+CONFIG.get("serverPortHTTP").toString()+"/\n";
|
|
314
|
-
}
|
|
315
|
-
});
|
|
316
|
-
});
|
|
317
|
-
return _ret_;
|
|
318
|
-
},
|
|
319
|
-
start:function (){
|
|
320
|
-
var server = this.server;
|
|
321
|
-
server.listen(process.env.PORT || CONFIG.get("serverPortHTTP"));
|
|
322
|
-
},
|
|
323
|
-
_new_:function (){
|
|
289
|
+
},
|
|
290
|
+
|
|
291
|
+
class HTTPServer extends InheritClass {
|
|
292
|
+
constructor ({
|
|
293
|
+
request=null,
|
|
294
|
+
response="",
|
|
295
|
+
server=null,
|
|
296
|
+
scriptname="",
|
|
297
|
+
interceptorInstances=[]
|
|
298
|
+
}){
|
|
299
|
+
super(...arguments);
|
|
300
|
+
|
|
324
301
|
let oHTTPServer = this;
|
|
325
302
|
const welcometo = "Welcome to \n";
|
|
326
303
|
const instructions = "QCObjects Legacy HTTPServer \n";
|
|
@@ -357,7 +334,7 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
357
334
|
interceptor:interceptor,
|
|
358
335
|
server:server
|
|
359
336
|
});
|
|
360
|
-
|
|
337
|
+
oHTTPServer.interceptorInstances.push(interceptorInstance);
|
|
361
338
|
});
|
|
362
339
|
}
|
|
363
340
|
}
|
|
@@ -405,7 +382,7 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
405
382
|
}
|
|
406
383
|
this.request.pathname = this.request.pathname.substr(0,this.request.pathname.lastIndexOf("/"));
|
|
407
384
|
|
|
408
|
-
logger.debug(PipeLog.pipe(this.request));
|
|
385
|
+
logger.debug((new PipeLog()).pipe(this.request));
|
|
409
386
|
|
|
410
387
|
if (global.get("backendAvailable")){
|
|
411
388
|
logger.info("Backend Legacy Microservices Available");
|
|
@@ -451,5 +428,37 @@ Package("org.quickcorp.qcobjects.main.http.server",[
|
|
|
451
428
|
});
|
|
452
429
|
|
|
453
430
|
}
|
|
454
|
-
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
showIPAddress(){
|
|
434
|
+
var _ret_ = "";
|
|
435
|
+
var os = require("os");
|
|
436
|
+
var ifaces = os.networkInterfaces();
|
|
437
|
+
Object.keys(ifaces).forEach(function (iface){
|
|
438
|
+
ifaces[iface].map(function (ipGroup){
|
|
439
|
+
_ret_ += iface +": " + (new PipeLog()).pipe(ipGroup)+"\n";
|
|
440
|
+
});
|
|
441
|
+
});
|
|
442
|
+
return _ret_;
|
|
443
|
+
}
|
|
444
|
+
showPossibleURL(){
|
|
445
|
+
var _ret_ = "";
|
|
446
|
+
var os = require("os");
|
|
447
|
+
var ifaces = os.networkInterfaces();
|
|
448
|
+
Object.keys(ifaces).forEach(function (iface){
|
|
449
|
+
ifaces[iface].map(function (ipGroup){
|
|
450
|
+
if (ipGroup["family"].toLowerCase()=="ipv4"){
|
|
451
|
+
_ret_ += "http://"+ipGroup["address"]+":"+CONFIG.get("serverPortHTTP").toString()+"/\n";
|
|
452
|
+
}
|
|
453
|
+
});
|
|
454
|
+
});
|
|
455
|
+
return _ret_;
|
|
456
|
+
}
|
|
457
|
+
start(){
|
|
458
|
+
var server = this.server;
|
|
459
|
+
server.listen(process.env.PORT || CONFIG.get("serverPortHTTP"));
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
}
|
|
463
|
+
|
|
455
464
|
]);
|