underpost 2.6.2
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/.dockerignore +14 -0
- package/.env.development +8 -0
- package/.env.production +8 -0
- package/.env.test +8 -0
- package/.nycrc +9 -0
- package/.prettierignore +13 -0
- package/.prettierrc +9 -0
- package/.vscode/extensions.json +72 -0
- package/.vscode/settings.json +99 -0
- package/Dockerfile +88 -0
- package/LICENSE +21 -0
- package/README.md +51 -0
- package/bin/db.js +119 -0
- package/bin/deploy.js +600 -0
- package/bin/dns.js +1 -0
- package/bin/file.js +92 -0
- package/bin/help.js +110 -0
- package/bin/index.js +29 -0
- package/bin/install.js +357 -0
- package/bin/shortcut.js +44 -0
- package/bin/ssl.js +61 -0
- package/bin/util.js +182 -0
- package/bin/vs.js +35 -0
- package/conf.js +244 -0
- package/docker-compose.yml +67 -0
- package/jsconfig.json +7 -0
- package/jsdoc.json +32 -0
- package/nodemon.json +6 -0
- package/package.json +128 -0
- package/prometheus.yml +36 -0
- package/setup.sh +25 -0
- package/src/api/core/core.controller.js +69 -0
- package/src/api/core/core.model.js +11 -0
- package/src/api/core/core.router.js +23 -0
- package/src/api/core/core.service.js +29 -0
- package/src/api/crypto/crypto.controller.js +51 -0
- package/src/api/crypto/crypto.model.js +23 -0
- package/src/api/crypto/crypto.router.js +20 -0
- package/src/api/crypto/crypto.service.js +64 -0
- package/src/api/default/default.controller.js +69 -0
- package/src/api/default/default.model.js +20 -0
- package/src/api/default/default.router.js +23 -0
- package/src/api/default/default.service.js +31 -0
- package/src/api/file/file.controller.js +51 -0
- package/src/api/file/file.model.js +19 -0
- package/src/api/file/file.router.js +20 -0
- package/src/api/file/file.service.js +70 -0
- package/src/api/instance/instance.controller.js +69 -0
- package/src/api/instance/instance.model.js +36 -0
- package/src/api/instance/instance.router.js +33 -0
- package/src/api/instance/instance.service.js +48 -0
- package/src/api/test/test.controller.js +59 -0
- package/src/api/test/test.model.js +14 -0
- package/src/api/test/test.router.js +21 -0
- package/src/api/test/test.service.js +35 -0
- package/src/api/user/user.controller.js +70 -0
- package/src/api/user/user.model.js +65 -0
- package/src/api/user/user.router.js +345 -0
- package/src/api/user/user.service.js +479 -0
- package/src/api.js +23 -0
- package/src/client/Default.index.js +40 -0
- package/src/client/components/core/Account.js +290 -0
- package/src/client/components/core/AgGrid.js +160 -0
- package/src/client/components/core/Auth.js +19 -0
- package/src/client/components/core/Badge.js +32 -0
- package/src/client/components/core/BlockChain.js +41 -0
- package/src/client/components/core/Blog.js +9 -0
- package/src/client/components/core/BtnIcon.js +91 -0
- package/src/client/components/core/CalendarCore.js +319 -0
- package/src/client/components/core/Chat.js +64 -0
- package/src/client/components/core/ColorPalette.js +5267 -0
- package/src/client/components/core/CommonJs.js +708 -0
- package/src/client/components/core/Content.js +49 -0
- package/src/client/components/core/Css.js +1027 -0
- package/src/client/components/core/CssCore.js +792 -0
- package/src/client/components/core/D3Chart.js +44 -0
- package/src/client/components/core/Docs.js +130 -0
- package/src/client/components/core/DropDown.js +164 -0
- package/src/client/components/core/EventsUI.js +54 -0
- package/src/client/components/core/FileExplorer.js +624 -0
- package/src/client/components/core/FullScreen.js +45 -0
- package/src/client/components/core/Input.js +259 -0
- package/src/client/components/core/JoyStick.js +77 -0
- package/src/client/components/core/Keyboard.js +73 -0
- package/src/client/components/core/LoadingAnimation.js +157 -0
- package/src/client/components/core/LogIn.js +181 -0
- package/src/client/components/core/LogOut.js +52 -0
- package/src/client/components/core/Logger.js +26 -0
- package/src/client/components/core/Modal.js +1596 -0
- package/src/client/components/core/NotificationManager.js +84 -0
- package/src/client/components/core/Panel.js +413 -0
- package/src/client/components/core/Polyhedron.js +162 -0
- package/src/client/components/core/Recover.js +204 -0
- package/src/client/components/core/Responsive.js +53 -0
- package/src/client/components/core/RichText.js +27 -0
- package/src/client/components/core/Router.js +77 -0
- package/src/client/components/core/SignUp.js +125 -0
- package/src/client/components/core/SocketIo.js +72 -0
- package/src/client/components/core/Stream.js +113 -0
- package/src/client/components/core/ToggleSwitch.js +87 -0
- package/src/client/components/core/ToolTip.js +26 -0
- package/src/client/components/core/Translate.js +408 -0
- package/src/client/components/core/Validator.js +100 -0
- package/src/client/components/core/VanillaJs.js +454 -0
- package/src/client/components/core/Wallet.js +106 -0
- package/src/client/components/core/Webhook.js +25 -0
- package/src/client/components/core/Worker.js +272 -0
- package/src/client/components/default/CommonDefault.js +29 -0
- package/src/client/components/default/CssDefault.js +13 -0
- package/src/client/components/default/ElementsDefault.js +38 -0
- package/src/client/components/default/LogInDefault.js +41 -0
- package/src/client/components/default/LogOutDefault.js +28 -0
- package/src/client/components/default/MenuDefault.js +389 -0
- package/src/client/components/default/RoutesDefault.js +48 -0
- package/src/client/components/default/SettingsDefault.js +16 -0
- package/src/client/components/default/SignUpDefault.js +9 -0
- package/src/client/components/default/SocketIoDefault.js +54 -0
- package/src/client/components/default/TranslateDefault.js +7 -0
- package/src/client/public/default/android-chrome-144x144.png +0 -0
- package/src/client/public/default/android-chrome-192x192.png +0 -0
- package/src/client/public/default/android-chrome-256x256.png +0 -0
- package/src/client/public/default/android-chrome-36x36.png +0 -0
- package/src/client/public/default/android-chrome-384x384.png +0 -0
- package/src/client/public/default/android-chrome-48x48.png +0 -0
- package/src/client/public/default/android-chrome-512x512.png +0 -0
- package/src/client/public/default/android-chrome-72x72.png +0 -0
- package/src/client/public/default/android-chrome-96x96.png +0 -0
- package/src/client/public/default/apple-touch-icon-1024x1024.png +0 -0
- package/src/client/public/default/apple-touch-icon-114x114.png +0 -0
- package/src/client/public/default/apple-touch-icon-120x120.png +0 -0
- package/src/client/public/default/apple-touch-icon-144x144.png +0 -0
- package/src/client/public/default/apple-touch-icon-152x152.png +0 -0
- package/src/client/public/default/apple-touch-icon-167x167.png +0 -0
- package/src/client/public/default/apple-touch-icon-180x180.png +0 -0
- package/src/client/public/default/apple-touch-icon-57x57.png +0 -0
- package/src/client/public/default/apple-touch-icon-60x60.png +0 -0
- package/src/client/public/default/apple-touch-icon-72x72.png +0 -0
- package/src/client/public/default/apple-touch-icon-76x76.png +0 -0
- package/src/client/public/default/apple-touch-icon-precomposed.png +0 -0
- package/src/client/public/default/apple-touch-icon.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1125x2436.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1136x640.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1170x2532.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1179x2556.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1242x2208.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1242x2688.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1284x2778.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1290x2796.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1334x750.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1488x2266.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1536x2048.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1620x2160.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1640x2160.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1668x2224.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1668x2388.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-1792x828.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2048x1536.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2048x2732.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2160x1620.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2160x1640.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2208x1242.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2224x1668.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2266x1488.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2388x1668.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2436x1125.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2532x1170.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2556x1179.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2688x1242.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2732x2048.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2778x1284.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-2796x1290.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-640x1136.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-750x1334.png +0 -0
- package/src/client/public/default/apple-touch-startup-image-828x1792.png +0 -0
- package/src/client/public/default/assets/background/white.jpg +0 -0
- package/src/client/public/default/assets/background/white0-min.jpg +0 -0
- package/src/client/public/default/assets/background/white0.jpg +0 -0
- package/src/client/public/default/assets/logo/base-icon.png +0 -0
- package/src/client/public/default/browserconfig.xml +12 -0
- package/src/client/public/default/favicon-16x16.png +0 -0
- package/src/client/public/default/favicon-32x32.png +0 -0
- package/src/client/public/default/favicon-48x48.png +0 -0
- package/src/client/public/default/favicon.ico +0 -0
- package/src/client/public/default/manifest.webmanifest +69 -0
- package/src/client/public/default/mstile-144x144.png +0 -0
- package/src/client/public/default/mstile-150x150.png +0 -0
- package/src/client/public/default/mstile-310x150.png +0 -0
- package/src/client/public/default/mstile-310x310.png +0 -0
- package/src/client/public/default/mstile-70x70.png +0 -0
- package/src/client/public/default/sitemap +148 -0
- package/src/client/public/default/yandex-browser-50x50.png +0 -0
- package/src/client/public/default/yandex-browser-manifest.json +9 -0
- package/src/client/public/doc/favicon.ico +0 -0
- package/src/client/public/doc/sitemap +148 -0
- package/src/client/public/test/favicon.ico +0 -0
- package/src/client/public/test/sitemap +148 -0
- package/src/client/services/core/core.service.js +152 -0
- package/src/client/services/crypto/crypto.service.js +70 -0
- package/src/client/services/default/default.management.js +345 -0
- package/src/client/services/default/default.service.js +89 -0
- package/src/client/services/file/file.service.js +70 -0
- package/src/client/services/instance/instance.management.js +74 -0
- package/src/client/services/instance/instance.service.js +89 -0
- package/src/client/services/test/test.service.js +70 -0
- package/src/client/services/user/user.management.js +50 -0
- package/src/client/services/user/user.service.js +89 -0
- package/src/client/ssr/Render.js +16 -0
- package/src/client/ssr/body-components/CacheControl.js +113 -0
- package/src/client/ssr/body-components/DefaultSplashScreen.js +79 -0
- package/src/client/ssr/email-components/DefaultRecoverEmail.js +21 -0
- package/src/client/ssr/email-components/DefaultVerifyEmail.js +17 -0
- package/src/client/ssr/head-components/Css.js +241 -0
- package/src/client/ssr/head-components/DefaultScripts.js +3 -0
- package/src/client/ssr/head-components/Microdata.js +11 -0
- package/src/client/ssr/head-components/Production.js +1 -0
- package/src/client/ssr/head-components/PwaDefault.js +60 -0
- package/src/client/ssr/head-components/Seo.js +14 -0
- package/src/client/sw/default.sw.js +201 -0
- package/src/client/sw/template.sw.js +84 -0
- package/src/client.build.js +22 -0
- package/src/client.dev.js +21 -0
- package/src/cron.js +25 -0
- package/src/db/DataBaseProvider.js +34 -0
- package/src/db/mariadb/MariaDB.js +33 -0
- package/src/db/mongo/MongooseDB.js +46 -0
- package/src/dns.js +22 -0
- package/src/mailer/EmailRender.js +69 -0
- package/src/mailer/MailerProvider.js +96 -0
- package/src/proxy.js +22 -0
- package/src/runtime/lampp/Lampp.js +44 -0
- package/src/runtime/nginx/Nginx.js +3 -0
- package/src/runtime/xampp/Xampp.js +49 -0
- package/src/server/auth.js +204 -0
- package/src/server/backup.js +83 -0
- package/src/server/client-build-live.js +72 -0
- package/src/server/client-build.js +688 -0
- package/src/server/client-dev-server.js +58 -0
- package/src/server/client-formatted.js +48 -0
- package/src/server/client-icons.js +150 -0
- package/src/server/conf.js +611 -0
- package/src/server/dns.js +87 -0
- package/src/server/downloader.js +42 -0
- package/src/server/logger.js +135 -0
- package/src/server/network.js +122 -0
- package/src/server/peer.js +33 -0
- package/src/server/process.js +66 -0
- package/src/server/proxy.js +118 -0
- package/src/server/runtime.js +393 -0
- package/src/server/ssl.js +107 -0
- package/src/server.js +25 -0
- package/src/ws/IoInterface.js +45 -0
- package/src/ws/IoServer.js +39 -0
- package/src/ws/core/channels/core.ws.chat.js +23 -0
- package/src/ws/core/channels/core.ws.mailer.js +35 -0
- package/src/ws/core/channels/core.ws.stream.js +31 -0
- package/src/ws/core/core.ws.connection.js +28 -0
- package/src/ws/core/core.ws.emit.js +14 -0
- package/src/ws/core/core.ws.server.js +24 -0
- package/src/ws/core/management/core.ws.chat.js +8 -0
- package/src/ws/core/management/core.ws.mailer.js +16 -0
- package/src/ws/core/management/core.ws.stream.js +8 -0
- package/src/ws/default/channels/default.ws.main.js +16 -0
- package/src/ws/default/default.ws.connection.js +22 -0
- package/src/ws/default/default.ws.emit.js +14 -0
- package/src/ws/default/default.ws.server.js +20 -0
- package/src/ws/default/management/default.ws.main.js +8 -0
- package/startup.js +11 -0
- package/supervisord-openssh-server.conf +5 -0
- package/test/api.test.js +60 -0
package/.dockerignore
ADDED
package/.env.development
ADDED
package/.env.production
ADDED
package/.env.test
ADDED
package/.nycrc
ADDED
package/.prettierignore
ADDED
package/.prettierrc
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
{
|
|
2
|
+
"recommendations": [
|
|
3
|
+
"adpyke.vscode-sql-formatter",
|
|
4
|
+
"angular.ng-template",
|
|
5
|
+
"antiantisepticeye.vscode-color-picker",
|
|
6
|
+
"bashmish.es6-string-css",
|
|
7
|
+
"bierner.lit-html",
|
|
8
|
+
"bmewburn.vscode-intelephense-client",
|
|
9
|
+
"cschlosser.doxdocgen",
|
|
10
|
+
"danielehrhardt.ionic3-vs-ionview-snippets",
|
|
11
|
+
"dbaeumer.vscode-eslint",
|
|
12
|
+
"eamodio.gitlens",
|
|
13
|
+
"esbenp.prettier-vscode",
|
|
14
|
+
"fivethree.vscode-ionic-snippets",
|
|
15
|
+
"formulahendry.auto-rename-tag",
|
|
16
|
+
"golang.go",
|
|
17
|
+
"ipedrazas.kubernetes-snippets",
|
|
18
|
+
"jannisx11.batch-rename-extension",
|
|
19
|
+
"jeff-hykin.better-cpp-syntax",
|
|
20
|
+
"jinxdash.prettier-rust",
|
|
21
|
+
"johnpapa.vscode-peacock",
|
|
22
|
+
"juanblanco.solidity",
|
|
23
|
+
"julialang.language-julia",
|
|
24
|
+
"kevinrose.vsc-python-indent",
|
|
25
|
+
"mechatroner.rainbow-csv",
|
|
26
|
+
"mintlify.document",
|
|
27
|
+
"ms-azuretools.vscode-docker",
|
|
28
|
+
"ms-dotnettools.vscode-dotnet-runtime",
|
|
29
|
+
"ms-kubernetes-tools.vscode-kubernetes-tools",
|
|
30
|
+
"ms-python.black-formatter",
|
|
31
|
+
"ms-python.debugpy",
|
|
32
|
+
"ms-python.isort",
|
|
33
|
+
"ms-python.python",
|
|
34
|
+
"ms-python.vscode-pylance",
|
|
35
|
+
"ms-toolsai.jupyter",
|
|
36
|
+
"ms-toolsai.jupyter-keymap",
|
|
37
|
+
"ms-toolsai.jupyter-renderers",
|
|
38
|
+
"ms-toolsai.vscode-jupyter-cell-tags",
|
|
39
|
+
"ms-toolsai.vscode-jupyter-slideshow",
|
|
40
|
+
"ms-vscode-remote.remote-containers",
|
|
41
|
+
"ms-vscode-remote.remote-wsl",
|
|
42
|
+
"ms-vscode.cmake-tools",
|
|
43
|
+
"ms-vscode.cpptools",
|
|
44
|
+
"ms-vscode.cpptools-extension-pack",
|
|
45
|
+
"ms-vscode.cpptools-themes",
|
|
46
|
+
"ms-vscode.makefile-tools",
|
|
47
|
+
"msjsdiag.cordova-tools",
|
|
48
|
+
"nicolasvuillamy.vscode-groovy-lint",
|
|
49
|
+
"nucllear.vscode-extension-auto-import",
|
|
50
|
+
"pinkpotato.ionic-essentials",
|
|
51
|
+
"redhat.java",
|
|
52
|
+
"redhat.vscode-xml",
|
|
53
|
+
"redhat.vscode-yaml",
|
|
54
|
+
"rust-lang.rust-analyzer",
|
|
55
|
+
"steoates.autoimport",
|
|
56
|
+
"streetsidesoftware.code-spell-checker",
|
|
57
|
+
"tabnine.tabnine-vscode",
|
|
58
|
+
"tamasfe.even-better-toml",
|
|
59
|
+
"tobermory.es6-string-html",
|
|
60
|
+
"twxs.cmake",
|
|
61
|
+
"visualstudioexptteam.intellicode-api-usage-examples",
|
|
62
|
+
"visualstudioexptteam.vscodeintellicode",
|
|
63
|
+
"vscjava.vscode-gradle",
|
|
64
|
+
"vscjava.vscode-java-debug",
|
|
65
|
+
"vscjava.vscode-java-dependency",
|
|
66
|
+
"vscjava.vscode-java-pack",
|
|
67
|
+
"vscjava.vscode-java-test",
|
|
68
|
+
"vscjava.vscode-maven",
|
|
69
|
+
"vscode-icons-team.vscode-icons",
|
|
70
|
+
"xabikos.javascriptsnippets"
|
|
71
|
+
]
|
|
72
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
{
|
|
2
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
3
|
+
"editor.formatOnSave": true,
|
|
4
|
+
"explorer.compactFolders": false,
|
|
5
|
+
"javascript.preferences.importModuleSpecifierEnding": "js",
|
|
6
|
+
"[javascript]": {
|
|
7
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
8
|
+
},
|
|
9
|
+
"[python]": {
|
|
10
|
+
"editor.defaultFormatter": "ms-python.python"
|
|
11
|
+
},
|
|
12
|
+
"cSpell.words": [
|
|
13
|
+
"ANAME",
|
|
14
|
+
"browserconfig",
|
|
15
|
+
"certbot",
|
|
16
|
+
"certonly",
|
|
17
|
+
"changefreq",
|
|
18
|
+
"chebyshev",
|
|
19
|
+
"Contracultura",
|
|
20
|
+
"cooldown",
|
|
21
|
+
"cryptokoyn",
|
|
22
|
+
"cyberia",
|
|
23
|
+
"cyberiaonline",
|
|
24
|
+
"dbname",
|
|
25
|
+
"dists",
|
|
26
|
+
"DOGMADUAL",
|
|
27
|
+
"dondominio",
|
|
28
|
+
"dont",
|
|
29
|
+
"fileupload",
|
|
30
|
+
"fontawesome",
|
|
31
|
+
"fortawesome",
|
|
32
|
+
"googlebot",
|
|
33
|
+
"Hexa",
|
|
34
|
+
"htdocs",
|
|
35
|
+
"htmls",
|
|
36
|
+
"inlt",
|
|
37
|
+
"ipfs",
|
|
38
|
+
"jsonld",
|
|
39
|
+
"lampp",
|
|
40
|
+
"loadingio",
|
|
41
|
+
"Longname",
|
|
42
|
+
"Microdata",
|
|
43
|
+
"minami",
|
|
44
|
+
"MMORPG",
|
|
45
|
+
"mysqldump",
|
|
46
|
+
"neodrag",
|
|
47
|
+
"nexodev",
|
|
48
|
+
"pathfinding",
|
|
49
|
+
"Pixi",
|
|
50
|
+
"plantuml",
|
|
51
|
+
"privkey",
|
|
52
|
+
"runas",
|
|
53
|
+
"Scatterplot",
|
|
54
|
+
"sortablejs",
|
|
55
|
+
"supervisord",
|
|
56
|
+
"underpost",
|
|
57
|
+
"Unequip",
|
|
58
|
+
"webroot",
|
|
59
|
+
"xampp",
|
|
60
|
+
"xfwd",
|
|
61
|
+
"youtu"
|
|
62
|
+
],
|
|
63
|
+
"[dockerfile]": {
|
|
64
|
+
"editor.defaultFormatter": "ms-azuretools.vscode-docker"
|
|
65
|
+
},
|
|
66
|
+
"[php]": {
|
|
67
|
+
"editor.defaultFormatter": "bmewburn.vscode-intelephense-client"
|
|
68
|
+
},
|
|
69
|
+
"[xml]": {
|
|
70
|
+
"editor.defaultFormatter": "redhat.vscode-xml"
|
|
71
|
+
},
|
|
72
|
+
"docwriter.style": "JSDoc",
|
|
73
|
+
"docwriter.progress.trackFunctions": false,
|
|
74
|
+
"docwriter.progress.trackMethods": false,
|
|
75
|
+
"files.exclude": {
|
|
76
|
+
"**/.git": true, // this is a default value
|
|
77
|
+
"**/.DS_Store": true, // this is a default value
|
|
78
|
+
|
|
79
|
+
"**/node_modules": true, // this excludes all folders
|
|
80
|
+
// named "node_modules" from
|
|
81
|
+
// the explore tree
|
|
82
|
+
|
|
83
|
+
// alternative version
|
|
84
|
+
"node_modules": true, // this excludes the folder
|
|
85
|
+
// only from the root of
|
|
86
|
+
// your workspace
|
|
87
|
+
"public": true,
|
|
88
|
+
"engine-private": true,
|
|
89
|
+
"conf": true,
|
|
90
|
+
"tmp": true,
|
|
91
|
+
"bkt": true,
|
|
92
|
+
"logs": true,
|
|
93
|
+
"build": true,
|
|
94
|
+
"coverage": true,
|
|
95
|
+
"prometheus_data": true,
|
|
96
|
+
"grafana_data": true,
|
|
97
|
+
".nyc_output": true
|
|
98
|
+
}
|
|
99
|
+
}
|
package/Dockerfile
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
ARG BASE_DEBIAN=buster
|
|
2
|
+
|
|
3
|
+
FROM debian:${BASE_DEBIAN}
|
|
4
|
+
|
|
5
|
+
ENV DEBIAN_FRONTEND noninteractive
|
|
6
|
+
|
|
7
|
+
WORKDIR /code
|
|
8
|
+
|
|
9
|
+
# Set root password to root, format is 'user:password'.
|
|
10
|
+
RUN echo 'root:root' | chpasswd
|
|
11
|
+
|
|
12
|
+
RUN apt-get update --fix-missing && \
|
|
13
|
+
apt-get upgrade -y && \
|
|
14
|
+
# install sudo
|
|
15
|
+
apt-get -y install sudo && \
|
|
16
|
+
# net-tools provides netstat commands
|
|
17
|
+
apt-get -y install curl net-tools && \
|
|
18
|
+
apt-get -yq install openssh-server supervisor && \
|
|
19
|
+
# Few handy utilities which are nice to have
|
|
20
|
+
apt-get -y install nano vim less --no-install-recommends && \
|
|
21
|
+
apt-get clean
|
|
22
|
+
|
|
23
|
+
# install ssh
|
|
24
|
+
RUN mkdir -p /var/run/sshd && \
|
|
25
|
+
# Allow root login via password
|
|
26
|
+
sed -ri 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config
|
|
27
|
+
|
|
28
|
+
# copy supervisor config file to start openssh-server
|
|
29
|
+
COPY supervisord-openssh-server.conf /etc/supervisor/conf.d/supervisord-openssh-server.conf
|
|
30
|
+
|
|
31
|
+
# install open ssl git and others tools
|
|
32
|
+
RUN apt-get install -yq --no-install-recommends \
|
|
33
|
+
libssl-dev \
|
|
34
|
+
curl \
|
|
35
|
+
wget \
|
|
36
|
+
git \
|
|
37
|
+
gnupg
|
|
38
|
+
|
|
39
|
+
# install nodejs https://github.com/nodesource/distributions/blob/master/README.md#deb
|
|
40
|
+
RUN curl -fsSL https://deb.nodesource.com/setup_18.x | bash - && \
|
|
41
|
+
apt-get install -y nodejs \
|
|
42
|
+
build-essential && \
|
|
43
|
+
node --version && \
|
|
44
|
+
npm --version
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
# install lampp
|
|
48
|
+
RUN curl -Lo xampp-linux-installer.run https://sourceforge.net/projects/xampp/files/XAMPP%20Linux/7.4.30/xampp-linux-x64-7.4.30-1-installer.run?from_af=true && \
|
|
49
|
+
chmod +x xampp-linux-installer.run && \
|
|
50
|
+
bash -c './xampp-linux-installer.run' && \
|
|
51
|
+
ln -sf /opt/lampp/lampp /usr/bin/lampp && \
|
|
52
|
+
# Enable XAMPP web interface(remove security checks)
|
|
53
|
+
sed -i.bak s'/Require local/Require all granted/g' /opt/lampp/etc/extra/httpd-xampp.conf && \
|
|
54
|
+
# Enable error display in php
|
|
55
|
+
sed -i.bak s'/display_errors=Off/display_errors=On/g' /opt/lampp/etc/php.ini && \
|
|
56
|
+
# Enable includes of several configuration files
|
|
57
|
+
mkdir /opt/lampp/apache2/conf.d && \
|
|
58
|
+
echo "IncludeOptional /opt/lampp/apache2/conf.d/*.conf" >> /opt/lampp/etc/httpd.conf && \
|
|
59
|
+
# Create a /www folder and a symbolic link to it in /opt/lampp/htdocs. It'll be accessible via http://localhost:[port]/www/
|
|
60
|
+
# This is convenient because it doesn't interfere with xampp, phpmyadmin or other tools in /opt/lampp/htdocs
|
|
61
|
+
# /opt/lampp/etc/httpd.conf
|
|
62
|
+
mkdir /www && \
|
|
63
|
+
ln -s /www /opt/lampp/htdocs
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
# Install mongodb necessary libs
|
|
67
|
+
RUN apt-get update && apt-get install -y apt-utils wget gnupg gnupg2 curl
|
|
68
|
+
|
|
69
|
+
# Install mongodb
|
|
70
|
+
RUN wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | apt-key add -
|
|
71
|
+
RUN echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.2.list
|
|
72
|
+
RUN apt-get update
|
|
73
|
+
RUN apt-get install -y mongodb-org
|
|
74
|
+
|
|
75
|
+
# BIND TO ALL ADAPTERS IN CONTAINER
|
|
76
|
+
RUN sed -i "s,\\(^[[:blank:]]*bindIp:\\) .*,\\1 0.0.0.0," /etc/mongod.conf
|
|
77
|
+
|
|
78
|
+
# Bundle app source
|
|
79
|
+
COPY . .
|
|
80
|
+
|
|
81
|
+
RUN npm install
|
|
82
|
+
|
|
83
|
+
VOLUME [ "/code/logs" ]
|
|
84
|
+
|
|
85
|
+
EXPOSE 22 80 443 3306 27017
|
|
86
|
+
EXPOSE 3000-3020
|
|
87
|
+
|
|
88
|
+
CMD [ "node", "startup" ]
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 DOGMADUAL.com
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://underpost.net/assets/splash/apple-touch-icon-precomposed.png" alt="underpost engine core server"/>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<div align="center">
|
|
6
|
+
|
|
7
|
+
### underpost.net
|
|
8
|
+
|
|
9
|
+
</div>
|
|
10
|
+
|
|
11
|
+
<div align="center">
|
|
12
|
+
|
|
13
|
+
template
|
|
14
|
+
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
<div align="center">
|
|
18
|
+
|
|
19
|
+
<a href='https://www.npmjs.com/package/npm/v/10.2.3' target="_blank"><img alt='npm' src='https://img.shields.io/badge/npm v10.2.3-100000?style=flat&logo=npm&logoColor=white&labelColor=CB3837&color=727273'/></a> <a href='https://nodejs.org/download/release/v21.2.0/' target="_blank"><img alt='nodedotjs' src='https://img.shields.io/badge/node v21.2.0-100000?style=flat&logo=nodedotjs&logoColor=white&labelColor=5FA04E&color=727273'/></a> <a href='https://pgp.mongodb.com/' target="_blank"><img alt='mongodb' src='https://img.shields.io/badge/mongodb_server v7.0-100000?style=flat&logo=mongodb&logoColor=white&labelColor=47A248&color=727273'/></a>
|
|
20
|
+
|
|
21
|
+
</div>
|
|
22
|
+
|
|
23
|
+
<div align="center">
|
|
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)
|
|
26
|
+
|
|
27
|
+
</div>
|
|
28
|
+
|
|
29
|
+
<div align="center">
|
|
30
|
+
|
|
31
|
+
#### Base template for pwa/api-rest projects.
|
|
32
|
+
|
|
33
|
+
Develop, build, deploy, test, monitor, and manage multiple runtime applications on virtual machines or container instances.
|
|
34
|
+
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
<!-- #### Optional version environments -->
|
|
38
|
+
<!-- https://kapasia-dev-ed.my.site.com/Badges4Me/s/ -->
|
|
39
|
+
<!-- https://simpleicons.org/ -->
|
|
40
|
+
|
|
41
|
+
#### Create a new project
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npm install -g underpost
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
underpost new my-project-name
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
After template installation, the server will be running on [http://localhost:4001](http://localhost:4001)
|
package/bin/db.js
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
// import read from 'read';
|
|
3
|
+
// import ncp from 'copy-paste';
|
|
4
|
+
|
|
5
|
+
import { shellExec } from '../src/server/process.js';
|
|
6
|
+
import { loggerFactory } from '../src/server/logger.js';
|
|
7
|
+
import { MariaDB } from '../src/db/mariadb/MariaDB.js';
|
|
8
|
+
import { Xampp } from '../src/runtime/xampp/Xampp.js';
|
|
9
|
+
import { Lampp } from '../src/runtime/lampp/Lampp.js';
|
|
10
|
+
import { loadConf } from '../src/server/conf.js';
|
|
11
|
+
|
|
12
|
+
const logger = loggerFactory(import.meta);
|
|
13
|
+
|
|
14
|
+
logger.info('argv', process.argv);
|
|
15
|
+
|
|
16
|
+
const [exe, dir, hostPath = '', operator, deployId, arg0, arg1] = process.argv;
|
|
17
|
+
const [host, path = ''] = hostPath.split('/');
|
|
18
|
+
|
|
19
|
+
try {
|
|
20
|
+
let cmd;
|
|
21
|
+
if (deployId) loadConf(deployId);
|
|
22
|
+
const confServer = JSON.parse(fs.readFileSync(`./conf/conf.server.json`, 'utf8'));
|
|
23
|
+
const { provider, name, user, password = '', backupPath = '' } = confServer[host][`/${path}`].db;
|
|
24
|
+
// logger.info('database', confServer[host][`/${path}`].db);
|
|
25
|
+
switch (provider) {
|
|
26
|
+
case 'mariadb':
|
|
27
|
+
// https://www.cyberciti.biz/faq/how-to-show-list-users-in-a-mysql-mariadb-database/
|
|
28
|
+
|
|
29
|
+
// Login:
|
|
30
|
+
// mysql -u root -p
|
|
31
|
+
// mysql -u root -h localhost -p mysql
|
|
32
|
+
|
|
33
|
+
// Get Users:
|
|
34
|
+
// SELECT host, user, password FROM mysql.user;
|
|
35
|
+
|
|
36
|
+
// Get DB User:
|
|
37
|
+
// SELECT User, Db, Host from mysql.db;
|
|
38
|
+
|
|
39
|
+
// Change password:
|
|
40
|
+
// ALTER USER 'root'@'127.0.0.1' IDENTIFIED BY 'NEW_PASSWORD';
|
|
41
|
+
// ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEW_PASSWORD';
|
|
42
|
+
// ALTER USER 'root'@'::1' IDENTIFIED BY 'NEW_PASSWORD';
|
|
43
|
+
|
|
44
|
+
// Get all user privileges:
|
|
45
|
+
// select * from information_schema.user_privileges;
|
|
46
|
+
|
|
47
|
+
switch (operator) {
|
|
48
|
+
case 'show-all':
|
|
49
|
+
await MariaDB.query({ user, password, query: `SHOW DATABASES` });
|
|
50
|
+
break;
|
|
51
|
+
case 'show':
|
|
52
|
+
await MariaDB.query({ user, password, query: `SHOW TABLES FROM ${name}` });
|
|
53
|
+
break;
|
|
54
|
+
case 'create':
|
|
55
|
+
await MariaDB.query({ user, password, query: `CREATE DATABASE ${name}` });
|
|
56
|
+
break;
|
|
57
|
+
case 'delete':
|
|
58
|
+
await MariaDB.query({ user, password, query: `DROP DATABASE IF EXISTS ${name}` });
|
|
59
|
+
break;
|
|
60
|
+
case 'select':
|
|
61
|
+
await MariaDB.query({ user, password, query: `SELECT ${arg0} FROM ${name}.${arg1}` });
|
|
62
|
+
break;
|
|
63
|
+
case 'export':
|
|
64
|
+
cmd = `mysqldump --column-statistics=0 -u ${user} -p ${name} > ${arg0 ? `${arg0}/${name}.sql` : backupPath}`;
|
|
65
|
+
shellExec(cmd);
|
|
66
|
+
break;
|
|
67
|
+
case 'import':
|
|
68
|
+
cmd = `mysql -u ${user} -p ${name} < ${backupPath}`;
|
|
69
|
+
shellExec(cmd);
|
|
70
|
+
break;
|
|
71
|
+
case 'init-xampp-service':
|
|
72
|
+
await Xampp.initService();
|
|
73
|
+
break;
|
|
74
|
+
case 'init-lampp-service':
|
|
75
|
+
await Lampp.initService();
|
|
76
|
+
break;
|
|
77
|
+
default:
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
break;
|
|
82
|
+
|
|
83
|
+
case 'mongoose':
|
|
84
|
+
// MongoDB App Services CLI
|
|
85
|
+
switch (operator) {
|
|
86
|
+
case 'show-all':
|
|
87
|
+
break;
|
|
88
|
+
case 'show':
|
|
89
|
+
break;
|
|
90
|
+
case 'create':
|
|
91
|
+
break;
|
|
92
|
+
case 'delete':
|
|
93
|
+
break;
|
|
94
|
+
case 'export':
|
|
95
|
+
// mongodump -d <database_name> -o <directory_backup>
|
|
96
|
+
shellExec(`mongodump -d ${name} -o ${arg0 ? arg0 : `./engine-private/mongodb-backup/`}`);
|
|
97
|
+
break;
|
|
98
|
+
case 'import':
|
|
99
|
+
// mongorestore -d <database_name> <directory_backup>
|
|
100
|
+
shellExec(`mongorestore -d ${name} ./engine-private/mongodb-backup/${name}`);
|
|
101
|
+
break;
|
|
102
|
+
case 'init-service':
|
|
103
|
+
break;
|
|
104
|
+
default:
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
break;
|
|
108
|
+
|
|
109
|
+
default:
|
|
110
|
+
break;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// logger.info(`Run the following command`, cmd);
|
|
114
|
+
// await ncp.copy(cmd);
|
|
115
|
+
// await read({ prompt: 'Command copy to clipboard, press enter to continue.\n' });
|
|
116
|
+
// throw new Error(``);
|
|
117
|
+
} catch (error) {
|
|
118
|
+
logger.error(error, error.stack);
|
|
119
|
+
}
|