underpost 2.6.2 → 2.7.1
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/.nycrc +2 -2
- package/AUTHORS.md +10 -0
- package/CHANGELOG.md +91 -0
- package/Dockerfile +5 -3
- package/README.md +48 -3
- package/bin/deploy.js +88 -27
- package/bin/index.js +45 -21
- package/bin/ssl.js +3 -0
- package/conf.js +7 -2
- package/docker-compose.yml +1 -1
- package/package.json +133 -128
- package/src/client/components/core/BtnIcon.js +4 -1
- package/src/client/components/core/CommonJs.js +26 -2
- package/src/client/components/core/CssCore.js +4 -0
- package/src/client/components/core/Docs.js +107 -8
- package/src/client/components/core/VanillaJs.js +10 -7
- package/src/client/ssr/body-components/CacheControl.js +1 -1
- package/src/index.js +29 -0
- package/src/server/auth.js +1 -1
- package/src/server/backup.js +17 -6
- package/src/server/client-build.js +16 -5
- package/src/server/dns.js +12 -1
- package/src/server/logger.js +54 -9
- package/src/server/process.js +4 -4
- package/src/server/prompt-optimizer.js +28 -0
- package/startup.js +1 -1
- package/bin/help.js +0 -110
package/.nycrc
CHANGED
package/AUTHORS.md
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Authors
|
|
2
|
+
|
|
3
|
+
#### Ordered by first contribution.
|
|
4
|
+
|
|
5
|
+
- fcoverdugo ([fcoverdugoa@underpost.net](mailto:fcoverdugoa@underpost.net))
|
|
6
|
+
- underpost.net ([52893447+underpostnet@users.noreply.github.com](mailto:52893447+underpostnet@users.noreply.github.com))
|
|
7
|
+
- fcoverdugoa ([52893447+underpostnet@users.noreply.github.com](mailto:52893447+underpostnet@users.noreply.github.com))
|
|
8
|
+
- underpostnet ([fcoverdugoa@underpost.net](mailto:fcoverdugoa@underpost.net))
|
|
9
|
+
|
|
10
|
+
#### Generated by [underpost.net](https://underpost.net)
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
### Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
|
|
4
|
+
|
|
5
|
+
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
|
6
|
+
|
|
7
|
+
#### [v2.6.3](https://github.com/underpostnet/engine/compare/v2.6.2...v2.6.3)
|
|
8
|
+
|
|
9
|
+
> 14 September 2024
|
|
10
|
+
|
|
11
|
+
- update version 2.6.3 [`85c585d`](https://github.com/underpostnet/engine/commit/85c585d1cce30de4389772605cf56e774e2b7d3c)
|
|
12
|
+
- update refactor docs and coverage [`b455016`](https://github.com/underpostnet/engine/commit/b455016f5f2b2bdc142aacb4dfd66ab890125662)
|
|
13
|
+
- update [`b8f01f2`](https://github.com/underpostnet/engine/commit/b8f01f258999c9ebc1173b0616f0f7b8f7171048)
|
|
14
|
+
|
|
15
|
+
#### [v2.6.2](https://github.com/underpostnet/engine/compare/v2.5.6...v2.6.2)
|
|
16
|
+
|
|
17
|
+
> 13 September 2024
|
|
18
|
+
|
|
19
|
+
- update version 2.6.2 [`0895afb`](https://github.com/underpostnet/engine/commit/0895afbde42dd5a573507ccfcb07c328648b4eb0)
|
|
20
|
+
- update [`344d303`](https://github.com/underpostnet/engine/commit/344d303702ebce22dff50d8c0f8d8d870a2860ee)
|
|
21
|
+
|
|
22
|
+
#### [v2.5.6](https://github.com/underpostnet/engine/compare/v2.5.2...v2.5.6)
|
|
23
|
+
|
|
24
|
+
> 13 September 2024
|
|
25
|
+
|
|
26
|
+
- update version 2.5.6 [`ca57b87`](https://github.com/underpostnet/engine/commit/ca57b87c56a544e7b7e53baa5a6e15415e16b99b)
|
|
27
|
+
- update [`eec4943`](https://github.com/underpostnet/engine/commit/eec49433f50b4dfa7b7bbff48891a60f5be25545)
|
|
28
|
+
- update [`5f0a6ac`](https://github.com/underpostnet/engine/commit/5f0a6aca1ae971bc42f654cf3f2bf7ace7fe613d)
|
|
29
|
+
|
|
30
|
+
#### [v2.5.2](https://github.com/underpostnet/engine/compare/v2.5.1...v2.5.2)
|
|
31
|
+
|
|
32
|
+
> 12 September 2024
|
|
33
|
+
|
|
34
|
+
- update dependebot security [`1289b96`](https://github.com/underpostnet/engine/commit/1289b9627dc59bf08e66edbef1bf7bf08e53984c)
|
|
35
|
+
- update [`ec11af8`](https://github.com/underpostnet/engine/commit/ec11af86e884ca3eeaeaa12695edddaa8b46492d)
|
|
36
|
+
- remove toast-ui [`40c207f`](https://github.com/underpostnet/engine/commit/40c207f13f3e6d7ab71fc4cc203ce6ff02101bb5)
|
|
37
|
+
|
|
38
|
+
#### [v2.5.1](https://github.com/underpostnet/engine/compare/v2.5.0...v2.5.1)
|
|
39
|
+
|
|
40
|
+
> 27 August 2024
|
|
41
|
+
|
|
42
|
+
- refactor ssr [`4fa5d24`](https://github.com/underpostnet/engine/commit/4fa5d24531f791fa860a4ba38b9784491f084a68)
|
|
43
|
+
- bucket to document [`747cb0b`](https://github.com/underpostnet/engine/commit/747cb0bf5198e4b97df186e642413fa49ed9383f)
|
|
44
|
+
- add user control table managements [`2cfb710`](https://github.com/underpostnet/engine/commit/2cfb7103a591b941897ff3834ad5874565cba6b4)
|
|
45
|
+
|
|
46
|
+
#### [v2.5.0](https://github.com/underpostnet/engine/compare/v2.0.0...v2.5.0)
|
|
47
|
+
|
|
48
|
+
> 23 August 2024
|
|
49
|
+
|
|
50
|
+
- css refactor [`49b1904`](https://github.com/underpostnet/engine/commit/49b1904e83162f9066fbf843ced37d4e87db5581)
|
|
51
|
+
- refactor [`dad4f95`](https://github.com/underpostnet/engine/commit/dad4f9567629b737254702ce8be6b243e68fb01e)
|
|
52
|
+
- add sitemap builder [`53d05a6`](https://github.com/underpostnet/engine/commit/53d05a62d03ea327df3d37181a4b5c272d417289)
|
|
53
|
+
|
|
54
|
+
### [v2.0.0](https://github.com/underpostnet/engine/compare/v1.0.4...v2.0.0)
|
|
55
|
+
|
|
56
|
+
> 30 March 2024
|
|
57
|
+
|
|
58
|
+
- seed-city assets [`6d9decb`](https://github.com/underpostnet/engine/commit/6d9decbae96b828aa001777f96dd75aab3fc71d1)
|
|
59
|
+
- update [`1069fc5`](https://github.com/underpostnet/engine/commit/1069fc5268aa5ef7c101695393de59edfc14daf8)
|
|
60
|
+
- update [`41ae7d4`](https://github.com/underpostnet/engine/commit/41ae7d4c969cce0608171c820e05ebab42610a7f)
|
|
61
|
+
|
|
62
|
+
#### [v1.0.4](https://github.com/underpostnet/engine/compare/v1.0.3...v1.0.4)
|
|
63
|
+
|
|
64
|
+
> 14 January 2023
|
|
65
|
+
|
|
66
|
+
- update [`8109700`](https://github.com/underpostnet/engine/commit/81097008baa95ac50efb760b228dc4abae63c379)
|
|
67
|
+
- update [`b6bb47f`](https://github.com/underpostnet/engine/commit/b6bb47f95bd56c0062066ecae5f03813cf1ed6f8)
|
|
68
|
+
- update [`15c0ca9`](https://github.com/underpostnet/engine/commit/15c0ca9f9a8203bec53a9677d5a8edcd04a7f1df)
|
|
69
|
+
|
|
70
|
+
#### [v1.0.3](https://github.com/underpostnet/engine/compare/v1.0.2...v1.0.3)
|
|
71
|
+
|
|
72
|
+
> 21 December 2022
|
|
73
|
+
|
|
74
|
+
- update [`69418ba`](https://github.com/underpostnet/engine/commit/69418ba34831983e07aa458d1ea4a742c7b66096)
|
|
75
|
+
- update [`003412f`](https://github.com/underpostnet/engine/commit/003412fadf3efe6b819f037e99855192f13ccd7e)
|
|
76
|
+
|
|
77
|
+
#### [v1.0.2](https://github.com/underpostnet/engine/compare/v1.0.1...v1.0.2)
|
|
78
|
+
|
|
79
|
+
> 21 December 2022
|
|
80
|
+
|
|
81
|
+
- update [`470f07a`](https://github.com/underpostnet/engine/commit/470f07a72398792ac9ecf07bf1ba5170bc427dc5)
|
|
82
|
+
- update [`dacc20a`](https://github.com/underpostnet/engine/commit/dacc20a14971388bcf2a5077286989a77197aadc)
|
|
83
|
+
- update [`d2efee0`](https://github.com/underpostnet/engine/commit/d2efee08f9b31dd9fca31a3b1b15bdaa0e75faea)
|
|
84
|
+
|
|
85
|
+
#### v1.0.1
|
|
86
|
+
|
|
87
|
+
> 11 October 2022
|
|
88
|
+
|
|
89
|
+
- update [`bd40237`](https://github.com/underpostnet/engine/commit/bd402372513151a15a972a7727f7d77d014739f1)
|
|
90
|
+
- update [`39dd3b9`](https://github.com/underpostnet/engine/commit/39dd3b9a5a6b4292b899840dd5cd333cc80410d1)
|
|
91
|
+
- First Commit [`ad7b2a3`](https://github.com/underpostnet/engine/commit/ad7b2a3be0746b34fa19ba896d3faa7f1b4f40dc)
|
package/Dockerfile
CHANGED
|
@@ -76,11 +76,13 @@ RUN apt-get install -y mongodb-org
|
|
|
76
76
|
RUN sed -i "s,\\(^[[:blank:]]*bindIp:\\) .*,\\1 0.0.0.0," /etc/mongod.conf
|
|
77
77
|
|
|
78
78
|
# Bundle app source
|
|
79
|
-
COPY . .
|
|
79
|
+
# COPY . .
|
|
80
80
|
|
|
81
|
-
|
|
81
|
+
# Install underpost cli
|
|
82
|
+
RUN npm install -g underpost
|
|
82
83
|
|
|
83
|
-
|
|
84
|
+
|
|
85
|
+
VOLUME [ "/code/app/logs" ]
|
|
84
86
|
|
|
85
87
|
EXPOSE 22 80 443 3306 27017
|
|
86
88
|
EXPOSE 3000-3020
|
package/README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<img src="https://underpost.net/assets/splash/apple-touch-icon-precomposed.png" alt="underpost
|
|
2
|
+
<img src="https://underpost.net/assets/splash/apple-touch-icon-precomposed.png" alt="underpost.net"/>
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
<div align="center">
|
|
@@ -22,7 +22,7 @@ template
|
|
|
22
22
|
|
|
23
23
|
<div align="center">
|
|
24
24
|
|
|
25
|
-
[](https://github.com/underpostnet/engine/actions/workflows/docker-image.yml) [](https://github.com/underpostnet/engine/actions/workflows/coverall.yml) [](https://coveralls.io/github/underpostnet/engine?branch=master)
|
|
25
|
+
[](https://github.com/underpostnet/engine/actions/workflows/docker-image.yml) [](https://github.com/underpostnet/engine/actions/workflows/coverall.yml) [](https://www.npmjs.com/package/underpost) [](https://coveralls.io/github/underpostnet/engine?branch=master) [](https://www.npmjs.org/package/underpost) [](https://www.npmjs.com/package/underpost)
|
|
26
26
|
|
|
27
27
|
</div>
|
|
28
28
|
|
|
@@ -45,7 +45,52 @@ npm install -g underpost
|
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
```bash
|
|
48
|
-
underpost new
|
|
48
|
+
underpost new app-name
|
|
49
49
|
```
|
|
50
50
|
|
|
51
51
|
After template installation, the server will be running on [http://localhost:4001](http://localhost:4001)
|
|
52
|
+
|
|
53
|
+
#### Usage
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
cd app-name
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Build client bundle
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npm run build
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Run dev client server
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
npm run dev
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Run dev api server
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
npm run dev-api
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Run on `pm2`
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
npm run pm2
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Run on `docker-compose`
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
npm run start:docker
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Run on `docker`
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# build image
|
|
93
|
+
docker build . -t app-name
|
|
94
|
+
# run image
|
|
95
|
+
docker run --name app-name-instance -p 41061:3001 -p 41062:3002 app-name
|
|
96
|
+
```
|
package/bin/deploy.js
CHANGED
|
@@ -23,8 +23,9 @@ import {
|
|
|
23
23
|
getDataDeploy,
|
|
24
24
|
} from '../src/server/conf.js';
|
|
25
25
|
import { buildClient } from '../src/server/client-build.js';
|
|
26
|
-
import { range, setPad, timer } from '../src/client/components/core/CommonJs.js';
|
|
26
|
+
import { range, setPad, timer, uniqueArray } from '../src/client/components/core/CommonJs.js';
|
|
27
27
|
import toJsonSchema from 'to-json-schema';
|
|
28
|
+
import simpleGit from 'simple-git';
|
|
28
29
|
|
|
29
30
|
const logger = loggerFactory(import.meta);
|
|
30
31
|
|
|
@@ -337,7 +338,7 @@ try {
|
|
|
337
338
|
if (argHost && argPath && (!argHost.includes(host) || !argPath.includes(path))) {
|
|
338
339
|
delete serverConf[host][path];
|
|
339
340
|
} else {
|
|
340
|
-
serverConf[host][path].
|
|
341
|
+
serverConf[host][path].liteBuild = process.argv.includes('l') ? true : false;
|
|
341
342
|
serverConf[host][path].minifyBuild = process.env.NODE_ENV === 'production' ? true : false;
|
|
342
343
|
}
|
|
343
344
|
}
|
|
@@ -441,24 +442,46 @@ try {
|
|
|
441
442
|
if (!proxyInstance) for (const host of Object.keys(serverConf)) port += Object.keys(serverConf[host]).length;
|
|
442
443
|
}
|
|
443
444
|
break;
|
|
445
|
+
case 'uml':
|
|
446
|
+
{
|
|
447
|
+
shellExec(`node bin/deploy fix-uml ${process.argv.slice(3).join(' ')}`);
|
|
448
|
+
shellExec(`node bin/deploy build-uml ${process.argv.slice(3).join(' ')}`);
|
|
449
|
+
}
|
|
450
|
+
break;
|
|
444
451
|
|
|
452
|
+
case 'fix-uml': {
|
|
453
|
+
// required: java jdk-11.0.1
|
|
454
|
+
|
|
455
|
+
// comment:
|
|
456
|
+
// '--add-opens=java.xml/com.sun.org.apache.xalan.internal.xsltc.trax="ALL-UNNAMED"'
|
|
457
|
+
// in plantuml.js src
|
|
458
|
+
|
|
459
|
+
// const deployId = process.argv[3];
|
|
460
|
+
// const clientId = process.argv[4];
|
|
461
|
+
// const folder = `./src/client/public/${clientId ? clientId : 'default'}/docs/plantuml`;
|
|
462
|
+
// const privateConfFolder = `./engine-private/conf/${deployId}`;
|
|
463
|
+
// const confData = !deployId
|
|
464
|
+
// ? Config.default
|
|
465
|
+
// : {
|
|
466
|
+
// client: JSON.parse(fs.readFileSync(`${privateConfFolder}/conf.client.json`, 'utf8')),
|
|
467
|
+
// ssr: JSON.parse(fs.readFileSync(`${privateConfFolder}/conf.ssr.json`, 'utf8')),
|
|
468
|
+
// server: JSON.parse(fs.readFileSync(`${privateConfFolder}/conf.server.json`, 'utf8')),
|
|
469
|
+
// cron: JSON.parse(fs.readFileSync(`${privateConfFolder}/conf.cron.json`, 'utf8')),
|
|
470
|
+
// };
|
|
471
|
+
|
|
472
|
+
fs.writeFileSync(
|
|
473
|
+
`./node_modules/plantuml/lib/plantuml.js`,
|
|
474
|
+
fs
|
|
475
|
+
.readFileSync(`./node_modules/plantuml/lib/plantuml.js`, 'utf8')
|
|
476
|
+
.replace(`'--add-opens=java.xml/com.sun.org.apache.xalan.internal.xsltc.trax="ALL-UNNAMED"'`, `//`),
|
|
477
|
+
);
|
|
478
|
+
}
|
|
445
479
|
case 'build-uml':
|
|
446
480
|
{
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
const deployId = process.argv[3];
|
|
452
|
-
const clientId = process.argv[4];
|
|
453
|
-
const folder = `./src/client/public/${clientId ? clientId : 'default'}/plantuml`;
|
|
454
|
-
const confData = !deployId
|
|
455
|
-
? Config.default
|
|
456
|
-
: {
|
|
457
|
-
client: '',
|
|
458
|
-
ssr: '',
|
|
459
|
-
server: '',
|
|
460
|
-
cron: '',
|
|
461
|
-
};
|
|
481
|
+
const host = process.argv[3];
|
|
482
|
+
const path = process.argv[4];
|
|
483
|
+
const folder = `./public/${host}${path}/docs/plantuml`;
|
|
484
|
+
const confData = Config.default;
|
|
462
485
|
|
|
463
486
|
if (!fs.existsSync(folder)) fs.mkdirSync(folder, { recursive: true });
|
|
464
487
|
|
|
@@ -469,7 +492,7 @@ try {
|
|
|
469
492
|
${JSON.stringify(confData[typeConf])}
|
|
470
493
|
@endjson
|
|
471
494
|
`);
|
|
472
|
-
fs.writeFileSync(`${folder}/${typeConf}-conf
|
|
495
|
+
fs.writeFileSync(`${folder}/${typeConf}-conf.svg`, svg);
|
|
473
496
|
}
|
|
474
497
|
{
|
|
475
498
|
const svg = await plantuml(`
|
|
@@ -477,7 +500,7 @@ try {
|
|
|
477
500
|
${JSON.stringify(toJsonSchema(confData[typeConf]))}
|
|
478
501
|
@endjson
|
|
479
502
|
`);
|
|
480
|
-
fs.writeFileSync(`${folder}/${typeConf}-schema
|
|
503
|
+
fs.writeFileSync(`${folder}/${typeConf}-schema.svg`, svg);
|
|
481
504
|
}
|
|
482
505
|
}
|
|
483
506
|
}
|
|
@@ -547,7 +570,12 @@ try {
|
|
|
547
570
|
originPackageJson.version = newVersion;
|
|
548
571
|
fs.writeFileSync(`package.json`, JSON.stringify(originPackageJson, null, 4), 'utf8');
|
|
549
572
|
|
|
550
|
-
|
|
573
|
+
const originPackageLockJson = JSON.parse(fs.readFileSync(`package-lock.json`, 'utf8'));
|
|
574
|
+
originPackageLockJson.version = newVersion;
|
|
575
|
+
originPackageLockJson.packages[''].version = newVersion;
|
|
576
|
+
fs.writeFileSync(`package-lock.json`, JSON.stringify(originPackageLockJson, null, 4), 'utf8');
|
|
577
|
+
|
|
578
|
+
if (fs.existsSync(`./engine-private/conf`)) {
|
|
551
579
|
const files = await fs.readdir(`./engine-private/conf`, { recursive: true });
|
|
552
580
|
for (const relativePath of files) {
|
|
553
581
|
const filePah = `./engine-private/conf/${relativePath.replaceAll(`\\`, '/')}`;
|
|
@@ -567,13 +595,14 @@ try {
|
|
|
567
595
|
'utf8',
|
|
568
596
|
);
|
|
569
597
|
|
|
570
|
-
fs.
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
598
|
+
if (fs.existsSync(`./.github/workflows/docker-image.yml`))
|
|
599
|
+
fs.writeFileSync(
|
|
600
|
+
`./.github/workflows/docker-image.yml`,
|
|
601
|
+
fs
|
|
602
|
+
.readFileSync(`./.github/workflows/docker-image.yml`, 'utf8')
|
|
603
|
+
.replaceAll(`underpost-engine:v${version}`, `underpost-engine:v${newVersion}`),
|
|
604
|
+
'utf8',
|
|
605
|
+
);
|
|
577
606
|
|
|
578
607
|
fs.writeFileSync(
|
|
579
608
|
`./src/client/components/core/Docs.js`,
|
|
@@ -590,8 +619,40 @@ try {
|
|
|
590
619
|
.replaceAll(`v${version}`, `v${newVersion}`),
|
|
591
620
|
'utf8',
|
|
592
621
|
);
|
|
622
|
+
|
|
623
|
+
fs.writeFileSync(
|
|
624
|
+
`./bin/index.js`,
|
|
625
|
+
fs.readFileSync(`./bin/index.js`, 'utf8').replaceAll(`${version}`, `${newVersion}`),
|
|
626
|
+
'utf8',
|
|
627
|
+
);
|
|
593
628
|
}
|
|
594
629
|
break;
|
|
630
|
+
|
|
631
|
+
case 'update-authors': {
|
|
632
|
+
// shellExec(`git log --reverse --format='%aN (<%aE>)' | sort -u`, { stdout: true });
|
|
633
|
+
const logs = await simpleGit().log();
|
|
634
|
+
|
|
635
|
+
fs.writeFileSync(
|
|
636
|
+
'./AUTHORS.md',
|
|
637
|
+
`# Authors
|
|
638
|
+
|
|
639
|
+
#### Ordered by first contribution.
|
|
640
|
+
|
|
641
|
+
${uniqueArray(logs.all.map((log) => `- ${log.author_name} ([${log.author_email}](mailto:${log.author_email}))`)).join(`
|
|
642
|
+
`)}
|
|
643
|
+
|
|
644
|
+
#### Generated by [underpost.net](https://underpost.net)`,
|
|
645
|
+
'utf8',
|
|
646
|
+
);
|
|
647
|
+
|
|
648
|
+
// hash: '1c7418ad2f49c7798a6d28d370b34c69d31dce46',
|
|
649
|
+
// date: '2024-09-16T17:10:13-03:00',
|
|
650
|
+
// message: 'update',
|
|
651
|
+
// refs: '',
|
|
652
|
+
// body: '',
|
|
653
|
+
// author_name: 'fcoverdugo',
|
|
654
|
+
// author_email: 'fcoverdugoa@underpost.net'
|
|
655
|
+
}
|
|
595
656
|
default:
|
|
596
657
|
break;
|
|
597
658
|
}
|
package/bin/index.js
CHANGED
|
@@ -1,29 +1,53 @@
|
|
|
1
1
|
#! /usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { loggerFactory } from '../src/server/logger.js';
|
|
4
3
|
import dotenv from 'dotenv';
|
|
5
4
|
import { shellCd, shellExec } from '../src/server/process.js';
|
|
6
5
|
import fs from 'fs-extra';
|
|
6
|
+
import { Command } from 'commander';
|
|
7
7
|
|
|
8
8
|
dotenv.config();
|
|
9
9
|
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
10
|
+
const globalBinFolder = `${shellExec(`npm root -g`, {
|
|
11
|
+
stdout: true,
|
|
12
|
+
silent: true,
|
|
13
|
+
disableLog: true,
|
|
14
|
+
}).trim()}/underpost`;
|
|
15
|
+
|
|
16
|
+
const program = new Command();
|
|
17
|
+
|
|
18
|
+
const version = '2.7.1';
|
|
19
|
+
|
|
20
|
+
program.name('underpost').description(`underpost.net ci/cd cli ${version}`).version(version);
|
|
21
|
+
|
|
22
|
+
program
|
|
23
|
+
.command('new <app-name>')
|
|
24
|
+
.description('Create a new project')
|
|
25
|
+
.action((appName) => {
|
|
26
|
+
const destFolder = `${process.cwd()}/${appName}`;
|
|
27
|
+
console.log('Note: This process may take several minutes to complete');
|
|
28
|
+
console.log('build app', { destFolder });
|
|
29
|
+
fs.mkdirSync(destFolder, { recursive: true });
|
|
30
|
+
fs.copySync(globalBinFolder, destFolder);
|
|
31
|
+
fs.writeFileSync(`${destFolder}/.gitignore`, fs.readFileSync(`${globalBinFolder}/.dockerignore`, 'utf8'), 'utf8');
|
|
32
|
+
shellCd(`${destFolder}`);
|
|
33
|
+
shellExec(`git init && git add . && git commit -m "Base template implementation"`);
|
|
34
|
+
shellExec(`npm run install-template`);
|
|
35
|
+
shellExec(`npm run dev`);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
program
|
|
39
|
+
.command('test')
|
|
40
|
+
.description('Run tests')
|
|
41
|
+
.action(() => {
|
|
42
|
+
shellCd(`${globalBinFolder}`);
|
|
43
|
+
shellExec(`npm run test`);
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
program
|
|
47
|
+
.command('help')
|
|
48
|
+
.description('Display help information')
|
|
49
|
+
.action(() => {
|
|
50
|
+
program.outputHelp();
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
program.parse();
|
package/bin/ssl.js
CHANGED
|
@@ -29,6 +29,9 @@ try {
|
|
|
29
29
|
cmd = `certbot certonly --webroot --webroot-path ${
|
|
30
30
|
directory ? directory : `${getRootDirectory()}/public/${host}`
|
|
31
31
|
} -d ${host}`;
|
|
32
|
+
// directory ? directory : `${getRootDirectory()}/public/${host}`
|
|
33
|
+
// directory ? directory : `${getRootDirectory()}/public/www.${host.split('.').slice(-2).join('.')}`
|
|
34
|
+
|
|
32
35
|
// You can get multi domain cert by specifying (extra) -d
|
|
33
36
|
// For example
|
|
34
37
|
// certbot -d example.com -d example.net -d www.example.org
|
package/conf.js
CHANGED
|
@@ -179,7 +179,7 @@ const DefaultConf = {
|
|
|
179
179
|
origins: [],
|
|
180
180
|
minifyBuild: false,
|
|
181
181
|
iconsBuild: true,
|
|
182
|
-
|
|
182
|
+
liteBuild: false,
|
|
183
183
|
docsBuild: false,
|
|
184
184
|
ws: 'core',
|
|
185
185
|
peer: true,
|
|
@@ -217,7 +217,7 @@ const DefaultConf = {
|
|
|
217
217
|
apis: [],
|
|
218
218
|
origins: [],
|
|
219
219
|
minifyBuild: false,
|
|
220
|
-
|
|
220
|
+
liteBuild: true,
|
|
221
221
|
proxy: [80, 443],
|
|
222
222
|
},
|
|
223
223
|
},
|
|
@@ -238,6 +238,11 @@ const DefaultConf = {
|
|
|
238
238
|
},
|
|
239
239
|
],
|
|
240
240
|
},
|
|
241
|
+
backups: [
|
|
242
|
+
{
|
|
243
|
+
deployGroupId: 'default-group',
|
|
244
|
+
},
|
|
245
|
+
],
|
|
241
246
|
},
|
|
242
247
|
};
|
|
243
248
|
|