underpost 3.2.22 → 3.2.30
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/workflows/ghpkg.ci.yml +1 -1
- package/.github/workflows/gitlab.ci.yml +1 -1
- package/.github/workflows/npmpkg.ci.yml +1 -1
- package/.github/workflows/publish.ci.yml +2 -2
- package/.github/workflows/pwa-microservices-template-page.cd.yml +1 -1
- package/.github/workflows/pwa-microservices-template-test.ci.yml +1 -1
- package/CHANGELOG.md +181 -1
- package/CLI-HELP.md +61 -2
- package/README.md +3 -2
- package/baremetal/commission-workflows.json +1 -0
- package/bin/build.js +1 -0
- package/docker-compose.yml +224 -0
- package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +1 -1
- package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +1 -1
- package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
- package/package.json +27 -15
- package/scripts/kubeadm-node-setup.sh +317 -0
- package/scripts/rocky-kickstart.sh +877 -185
- package/scripts/rpmfusion-ffmpeg-setup.sh +26 -50
- package/scripts/test-monitor.sh +3 -5
- package/src/cli/baremetal.js +717 -16
- package/src/cli/cluster.js +3 -1
- package/src/cli/deploy.js +118 -9
- package/src/cli/docker-compose.js +591 -0
- package/src/cli/env.js +11 -2
- package/src/cli/fs.js +35 -11
- package/src/cli/index.js +89 -0
- package/src/cli/kickstart.js +142 -20
- package/src/cli/repository.js +153 -11
- package/src/cli/run.js +285 -8
- package/src/cli/secrets.js +7 -2
- package/src/cli/ssh.js +234 -0
- package/src/cli/static.js +2 -2
- package/src/{server → client-builder}/client-build-docs.js +15 -5
- package/src/{server → client-builder}/client-build-live.js +3 -3
- package/src/{server → client-builder}/client-build.js +25 -22
- package/src/{server → client-builder}/client-dev-server.js +3 -3
- package/src/{server → client-builder}/client-icons.js +2 -2
- package/src/{server → client-builder}/ssr.js +5 -5
- package/src/client.build.js +1 -3
- package/src/client.dev.js +1 -1
- package/src/db/mongo/MongoBootstrap.js +12 -12
- package/src/index.js +12 -1
- package/src/mailer/EmailRender.js +1 -1
- package/src/{server → projects/underpost}/catalog-underpost.js +1 -2
- package/src/runtime/express/Express.js +2 -2
- package/src/runtime/nginx/Nginx.js +250 -0
- package/src/server/catalog.js +7 -14
- package/src/server/conf.js +3 -3
- package/src/server/runtime-status.js +18 -1
- package/src/server/start.js +12 -2
- package/src/server.js +6 -2
- package/test/deploy-monitor.test.js +26 -10
- package/typedoc.json +3 -1
- package/src/server/ipfs-client.js +0 -599
- /package/src/client/ssr/{Render.js → RootDocument.js} +0 -0
- /package/src/{server → client-builder}/client-formatted.js +0 -0
|
@@ -17,7 +17,7 @@ jobs:
|
|
|
17
17
|
packages: write
|
|
18
18
|
id-token: write
|
|
19
19
|
steps:
|
|
20
|
-
- uses: actions/checkout@
|
|
20
|
+
- uses: actions/checkout@v7
|
|
21
21
|
|
|
22
22
|
- name: Install required packages
|
|
23
23
|
run: |
|
|
@@ -54,7 +54,7 @@ jobs:
|
|
|
54
54
|
packages: write
|
|
55
55
|
id-token: write
|
|
56
56
|
steps:
|
|
57
|
-
- uses: actions/checkout@
|
|
57
|
+
- uses: actions/checkout@v7
|
|
58
58
|
|
|
59
59
|
- uses: actions/setup-node@v6
|
|
60
60
|
with:
|
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,186 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 2026-06-
|
|
3
|
+
## 2026-06-25
|
|
4
|
+
|
|
5
|
+
### server
|
|
6
|
+
|
|
7
|
+
- Add only build client in development mode in normal server run start up ([a332ae458](https://github.com/underpostnet/engine/commit/a332ae458f79458c7911a4a158037ada250d3af6))
|
|
8
|
+
|
|
9
|
+
### cli-start
|
|
10
|
+
|
|
11
|
+
- Add start-container-status in start pipeline to insulate readinessProbe monitor server status, prevent external overwritten status ([75f67cf3f](https://github.com/underpostnet/engine/commit/75f67cf3fcbc07716415caac4e67ab91abb05985))
|
|
12
|
+
|
|
13
|
+
### cyberia-cli
|
|
14
|
+
|
|
15
|
+
- Enhance cyberia-saga variety theme separate custom prompt of random subject theme ([1945a2553](https://github.com/underpostnet/engine/commit/1945a2553780d1d3b5fa20e40eedcc7d0b1ecd9c))
|
|
16
|
+
- Enhance cyberia-saga variety theme handle and prompt seed customization ([a335d3e20](https://github.com/underpostnet/engine/commit/a335d3e20025f8e714ff98fdc27d7895970187b5))
|
|
17
|
+
|
|
18
|
+
### db
|
|
19
|
+
|
|
20
|
+
- Improve wait status ready mongo pods in bootstrap methods ([6805e35c2](https://github.com/underpostnet/engine/commit/6805e35c22e43315c14dc9e7457ca3d599877ea8))
|
|
21
|
+
|
|
22
|
+
### cli-env
|
|
23
|
+
|
|
24
|
+
- Add keepKeys array options in clean env method ([5b3be0bca](https://github.com/underpostnet/engine/commit/5b3be0bca14a0ccfa64740aff12d2af17a7c29ce))
|
|
25
|
+
|
|
26
|
+
### repository
|
|
27
|
+
|
|
28
|
+
- Add getRemoteUrl and switchRemote repository methods in repository cli ([0412b9986](https://github.com/underpostnet/engine/commit/0412b998683a8369833eb363f8c9953744ae1a3a))
|
|
29
|
+
|
|
30
|
+
### deploy
|
|
31
|
+
|
|
32
|
+
- Enhance node customization in default deployment and custom instance workloads ([31c6b6d3b](https://github.com/underpostnet/engine/commit/31c6b6d3b397229b0216f82b8aef29b6941e474e))
|
|
33
|
+
- Fix node affinity assignment in volume mount factory ([9ec1ef931](https://github.com/underpostnet/engine/commit/9ec1ef9313ac0dbb5993cd3f158d2d01eae7dec5))
|
|
34
|
+
|
|
35
|
+
### cli-run
|
|
36
|
+
|
|
37
|
+
- Add flag ssh key path to customize key usage for ssh operations in deployments pipelines ([861cd7373](https://github.com/underpostnet/engine/commit/861cd73734d3442783419af4403bbb8e88711f19))
|
|
38
|
+
|
|
39
|
+
### start-cli
|
|
40
|
+
|
|
41
|
+
- Improve underpost container status persistence ([bff2e8f8d](https://github.com/underpostnet/engine/commit/bff2e8f8d65c6a2fe8572fe0bc9c42b9566db918))
|
|
42
|
+
|
|
43
|
+
## New release v:3.2.28 (2026-06-23)
|
|
44
|
+
|
|
45
|
+
### hardhat
|
|
46
|
+
|
|
47
|
+
- Add chai devDependency in hardhat module ([bf20134d0](https://github.com/underpostnet/engine/commit/bf20134d0a61512b223b868129eed38c0e7583cf))
|
|
48
|
+
- Fix hardhat undici base dependency ([c9ad2a9f0](https://github.com/underpostnet/engine/commit/c9ad2a9f09d893495d3b80be400ca023c96e91cc))
|
|
49
|
+
- Hardhat 3 migration to nomicfoundation hardhat-toolbox-viem ([22c410635](https://github.com/underpostnet/engine/commit/22c4106355f3c7d6654f21179f131f6ed8fd20cc))
|
|
50
|
+
|
|
51
|
+
### deploy
|
|
52
|
+
|
|
53
|
+
- Fix verify secrets exists tls deployment in deploy pipeline ([0367676a9](https://github.com/underpostnet/engine/commit/0367676a9a6363e69f772739040bc100dc1c3ceb))
|
|
54
|
+
|
|
55
|
+
### run-cli
|
|
56
|
+
|
|
57
|
+
- move-node runner: Add skip the patch + rollout if the resource is already where node goal ([b88cf3c68](https://github.com/underpostnet/engine/commit/b88cf3c6833572e9128d4aa85eccf0c94b055609))
|
|
58
|
+
- Add node-move k8s crd between nodes runner ([4c0259a63](https://github.com/underpostnet/engine/commit/4c0259a63380fea6d5261f55f94ba8daf0d9783f))
|
|
59
|
+
|
|
60
|
+
### baremetal
|
|
61
|
+
|
|
62
|
+
- FIx kubeadm join node logic workflow ([72d7994a7](https://github.com/underpostnet/engine/commit/72d7994a7d978841df83854e1032f7fe79a7e185))
|
|
63
|
+
- Add flag --resume-infra-setup to restore ssh kubeadm remote node deployment ([78a41d400](https://github.com/underpostnet/engine/commit/78a41d4008eceb68a33a2445b4aafd4a7b5aa546))
|
|
64
|
+
- Add engine repo customization in control and worker node commission workflows ([2b8c47f52](https://github.com/underpostnet/engine/commit/2b8c47f52b0c4a1eff82bc8b6cf966aa58f0fece))
|
|
65
|
+
- Fix kubeadm join node logic in ssh remote commission workflows ([72f7e2527](https://github.com/underpostnet/engine/commit/72f7e252733be2f95f67afdfd758f471c1a590f6))
|
|
66
|
+
- Fix SELinux config in install chroot in os deployed ([e7d46472e](https://github.com/underpostnet/engine/commit/e7d46472e41d4beb992918a3c5e2274614818609))
|
|
67
|
+
- Add Timezone + keyboard now configured in the deployed OS ([de00c365d](https://github.com/underpostnet/engine/commit/de00c365d0a12d4abef9735f26dd4c56b77d5dc9))
|
|
68
|
+
- Implement user and ssh keys customization --deploy-id and --user flags in commission workflow ([ec0720230](https://github.com/underpostnet/engine/commit/ec07202309371c8e56df0c2dbe63e0283ccb5c8a))
|
|
69
|
+
- Implement worker and control plane automated infra setup post install os deploy ([d5edb41ab](https://github.com/underpostnet/engine/commit/d5edb41ab3855696198daa3ef44abe521768d260))
|
|
70
|
+
- Implement Automate Rocky Linux bare-metal deployment with SSH and disk detection ([2a0cbf5f1](https://github.com/underpostnet/engine/commit/2a0cbf5f1a90ebc1c4bdae0ea5f37fb16f1395c4))
|
|
71
|
+
|
|
72
|
+
### kickstart
|
|
73
|
+
|
|
74
|
+
- Fix rocky ephemeral commission ssh server exposure ([b5d3007f6](https://github.com/underpostnet/engine/commit/b5d3007f65e9df0affca1ca21ecdfb6cbbea1724))
|
|
75
|
+
|
|
76
|
+
### repository
|
|
77
|
+
|
|
78
|
+
- Enhance routePath candidates logic build ([a3d7fd806](https://github.com/underpostnet/engine/commit/a3d7fd8068e31fbdacc5b9832047f09f720ba30c))
|
|
79
|
+
|
|
80
|
+
### engine-cyberia
|
|
81
|
+
|
|
82
|
+
- Shrinks cyberia-client and cyberia-server production Dockerfile ([dd218c847](https://github.com/underpostnet/engine/commit/dd218c847bbc0c2e3662833607731a8bbe6815c9))
|
|
83
|
+
- Remove redundant saga index and fix null-safe frames access ([9947164e6](https://github.com/underpostnet/engine/commit/9947164e681ae7a5407af9227ae600c6a8a1aa84))
|
|
84
|
+
- Migrate saga generation from DeepSeek to Gemini with staged generation ([6322cd197](https://github.com/underpostnet/engine/commit/6322cd19774d94f312f64173cb41ba62d3c5bba3))
|
|
85
|
+
- Move cyberia server related modules to dedicated src/cyberia directory ([648309ece](https://github.com/underpostnet/engine/commit/648309ecee5b07bcf2132188d089c733f0646fb8))
|
|
86
|
+
- Introduce Top-Down PCG (Semantic Reverse-Engineering) modules and cli command ([5664f536c](https://github.com/underpostnet/engine/commit/5664f536c54446116296a465fc1efd63b1dece42))
|
|
87
|
+
- Clean up quotes and update comment in action service ([1668f95e6](https://github.com/underpostnet/engine/commit/1668f95e6fa266faba89dfecafe89b9654fd7b93))
|
|
88
|
+
- Split action-provider and quest-provider status icons ([e3186a37d](https://github.com/underpostnet/engine/commit/e3186a37d962980e34e0c29234bf4dd3388553e2))
|
|
89
|
+
- Add quest-by-cell lookup endpoint ([648eb1437](https://github.com/underpostnet/engine/commit/648eb14374a549f9e789a425533f9313b9292cfb))
|
|
90
|
+
- Implement base client component ActionEngineCyberia with map-driven quest and action management ([cc89512c0](https://github.com/underpostnet/engine/commit/cc89512c098729012d99e5817b29480808044885))
|
|
91
|
+
|
|
92
|
+
### docker-compose
|
|
93
|
+
|
|
94
|
+
- Implement base docker-compose engine integration ([3374c7f1a](https://github.com/underpostnet/engine/commit/3374c7f1a4379256db577988d841f414947db0c4))
|
|
95
|
+
|
|
96
|
+
### cyberia-cli
|
|
97
|
+
|
|
98
|
+
- Update default generate-saga temperature ([dbc5ce5b8](https://github.com/underpostnet/engine/commit/dbc5ce5b83a8268f342a3be3af8c21d1628578a0))
|
|
99
|
+
- In generate-saga pipeline add 'naming and character culture' customization ([516f0ded7](https://github.com/underpostnet/engine/commit/516f0ded7dde5d1990cde5a8e98b6a16807411db))
|
|
100
|
+
- Refactor generate saga pipeline general theme purpose ([993aac921](https://github.com/underpostnet/engine/commit/993aac921a5ba0a41dee8f53fb508505c900ad1e))
|
|
101
|
+
- Refactor saga pipeline replace THEME_DIMENSIONS to dedicated FACTIONS base theme scope ([1280edfde](https://github.com/underpostnet/engine/commit/1280edfdef885dd0e05afd00dd7dbb418a3d2896))
|
|
102
|
+
- Refactor theme dimension scope in generate-sage pipeline, add --tone and simplify 4 mains and add flag --temperature to customizaction ([cc0a3e245](https://github.com/underpostnet/engine/commit/cc0a3e245a3020246e71149d88ed6f026fdff7e2))
|
|
103
|
+
- Add maps semantic stage in generate-saga pipeline ([5c7bdab03](https://github.com/underpostnet/engine/commit/5c7bdab034a3de473e6197d5ffc5d3c61d71f4ef))
|
|
104
|
+
- Fix quest generation with talk objectives case and related logic ([c4d9e397c](https://github.com/underpostnet/engine/commit/c4d9e397c155d5d7c48e42f387c30263cde5c149))
|
|
105
|
+
- Add --space-context flag customization in generate-saga pipeline ([19d2f7ed6](https://github.com/underpostnet/engine/commit/19d2f7ed6aa8ea41ac72622c384f84a524464a4c))
|
|
106
|
+
- Generate saga command: Add lore-grounded auto-theme generation - Auto-synthesize saga themes from CYBERIA-LORE.md when --prompt is omitted - Add --lore-path option to override the base lore document - Add temperature support to GeminiClient.chatJson for varied output - Default --out to ./engine-private/cyberia-sagas/<saga-code>.json - Remove hard requirement for --prompt or --import - Update docs and help text to reflect auto-generation mode ([5b1a668a7](https://github.com/underpostnet/engine/commit/5b1a668a7c1e2b48652b717934d56ec6e9902d54))
|
|
107
|
+
|
|
108
|
+
### package
|
|
109
|
+
|
|
110
|
+
- Fix nodemailer version ([7d27b7f48](https://github.com/underpostnet/engine/commit/7d27b7f4826b656abdd1d2a10c5d5bb478cd90bf))
|
|
111
|
+
- Fix dependency vulnerability ([13991a0fe](https://github.com/underpostnet/engine/commit/13991a0fe4594887da89de16ac502be4ef7112cb))
|
|
112
|
+
|
|
113
|
+
### cyberia-docs
|
|
114
|
+
|
|
115
|
+
- Add base Cyberia Lore: The Frontier of Hyperspace ([d389b881f](https://github.com/underpostnet/engine/commit/d389b881ff8dadb9154bb1f7078a515246150031))
|
|
116
|
+
|
|
117
|
+
### build
|
|
118
|
+
|
|
119
|
+
- Fix catalog generic deploy-id handling ([413f3fc63](https://github.com/underpostnet/engine/commit/413f3fc63851d678267a5618c6779fffc49cb14e))
|
|
120
|
+
|
|
121
|
+
### engine
|
|
122
|
+
|
|
123
|
+
- Refactor introduce new projects module and client-builder modules split from server ([4d14ee552](https://github.com/underpostnet/engine/commit/4d14ee552258cb3c2f70e43291945798b4d95f1a))
|
|
124
|
+
|
|
125
|
+
### api
|
|
126
|
+
|
|
127
|
+
- Introduce base cyberia-saga api / model ([2f02f5d6a](https://github.com/underpostnet/engine/commit/2f02f5d6a2ff2258146498bb50ac3e65b51beced))
|
|
128
|
+
- Update canonical action defaults with typed quest dialogues and add Wason errand quest ([5e380abee](https://github.com/underpostnet/engine/commit/5e380abeef4954567717138af5218b506b3da414))
|
|
129
|
+
- Refactor action model: remove type and grantQuestCode, add per-quest dialogue map and getByCode endpoint ([3ce9f4c18](https://github.com/underpostnet/engine/commit/3ce9f4c18ef993da85fe5f9b10b61cf7987e5457))
|
|
130
|
+
- Update quest defaults: replace SCP-2040 references with Kishins ([bf6fa827d](https://github.com/underpostnet/engine/commit/bf6fa827d0fffbe5fcf97756263af50eade0af4b))
|
|
131
|
+
- Add fallback defaults to dialogue and quest services ([ab2894dd4](https://github.com/underpostnet/engine/commit/ab2894dd4f591cc7247d6708a25ea737ea059c56))
|
|
132
|
+
- Refactor CyberiaAction model to cell-based binding and remove provideItemId ([614a2aa60](https://github.com/underpostnet/engine/commit/614a2aa60bfa8e2330722c9c4e9fea4afc3adf3c))
|
|
133
|
+
- Add quest metadata REST endpoint GET /api/cyberia-quest/code/:code ([c6f7cfa94](https://github.com/underpostnet/engine/commit/c6f7cfa94a4b3cc9f398cd63c24082b8c47db642))
|
|
134
|
+
|
|
135
|
+
### grpc
|
|
136
|
+
|
|
137
|
+
- Scope quest delivery to instance map codes ([d357c0cce](https://github.com/underpostnet/engine/commit/d357c0cce491078ea00a294f15f1b886fb92c05d))
|
|
138
|
+
- Add prerequisiteCodes and canonical item fallback to instance config ([e34683e23](https://github.com/underpostnet/engine/commit/e34683e2372f48be034435fc2ce25915e5447aad))
|
|
139
|
+
|
|
140
|
+
### hardhar
|
|
141
|
+
|
|
142
|
+
- Fix prevent crash build due coverage build: Error HHE905: Couldn't download compiler version list. ([b841b5598](https://github.com/underpostnet/engine/commit/b841b55980cc5a3d19b6413f2ebb72c45b8906fb))
|
|
143
|
+
|
|
144
|
+
### cli-run
|
|
145
|
+
|
|
146
|
+
- Add shared-dir-add-user runner: Add user to an existing shared directory without changing file owners ([b5c7ea7c8](https://github.com/underpostnet/engine/commit/b5c7ea7c83cf85775eaf3fc3071097f2e5e9d59f))
|
|
147
|
+
|
|
148
|
+
### scripts
|
|
149
|
+
|
|
150
|
+
- Update scripts/rpmfusion-ffmpeg-setup.sh ([975f7e9f3](https://github.com/underpostnet/engine/commit/975f7e9f30f7f224bcf0faa78a617b7f67fc6c96))
|
|
151
|
+
|
|
152
|
+
### client-cyberia
|
|
153
|
+
|
|
154
|
+
- Update default bot skin in fallback world ([a7df2b9f6](https://github.com/underpostnet/engine/commit/a7df2b9f6fd80c62b1aa3fff2ce58d0a3dc18d7a))
|
|
155
|
+
- Fix headerName of metadata cid and render cid in ObjectLayerManagement component ([1d1419001](https://github.com/underpostnet/engine/commit/1d14190017c6b080c502a9478f65a35364c413df))
|
|
156
|
+
- Add Kishins skin item to shared defaults ([acf13ba0e](https://github.com/underpostnet/engine/commit/acf13ba0e2a6acabc7ee1ee233275cdb31311c0d))
|
|
157
|
+
- Fix render section title label in ObjectLayerEngineModal ([2b9a88bed](https://github.com/underpostnet/engine/commit/2b9a88bed67fe2b205f648050af411a9c1e7588d))
|
|
158
|
+
|
|
159
|
+
### docs
|
|
160
|
+
|
|
161
|
+
- Update action and quest system documentation for cell-based binding and explicit quest accept ([fadd9e360](https://github.com/underpostnet/engine/commit/fadd9e3605e686d8487aad1ef28b2668388256c4))
|
|
162
|
+
- Update quest system documentation with kill and collect objective details ([1695e17d9](https://github.com/underpostnet/engine/commit/1695e17d9ec628ed9907859d6dd4ec890f113240))
|
|
163
|
+
- Document mission system: action-provider NPCs and fallback world instantiation ([469094678](https://github.com/underpostnet/engine/commit/469094678a35d4bbd03c79181f78d7720614179c))
|
|
164
|
+
- Update cyberia client docs url env parsing ([77923cfa4](https://github.com/underpostnet/engine/commit/77923cfa4977fd21ed5acbe6e2e5dfdaa70a614d))
|
|
165
|
+
|
|
166
|
+
### cyberia-instance
|
|
167
|
+
|
|
168
|
+
- Give action provider NPCs small wander radius ([b56389b5a](https://github.com/underpostnet/engine/commit/b56389b5a63b964ee1c94fcce0d9dafea4c1b2f6))
|
|
169
|
+
- Add action-provider NPC generation and cell reservation to fallback world builder ([985ba010c](https://github.com/underpostnet/engine/commit/985ba010c0ca76dc10bd12fffbc07871c01e0e90))
|
|
170
|
+
|
|
171
|
+
### grcp
|
|
172
|
+
|
|
173
|
+
- Deliver actions and quests in InstanceConfig for mission content ([e26466e9a](https://github.com/underpostnet/engine/commit/e26466e9a401ada9a5add5b658243e9cf34879a9))
|
|
174
|
+
|
|
175
|
+
### cli-cyberia
|
|
176
|
+
|
|
177
|
+
- Add DefaultCyberiaActions, DefaultCyberiaQuests, and seed-actions-quests CLI command ([cc9f21377](https://github.com/underpostnet/engine/commit/cc9f21377ba77c0e141d153f852dbb9777d74525))
|
|
178
|
+
|
|
179
|
+
### fs
|
|
180
|
+
|
|
181
|
+
- Add Single-file handling in upload use case in cloudinary storage ([6061d8bf2](https://github.com/underpostnet/engine/commit/6061d8bf290f00c2c4e46a0206419ba4b1119f2e))
|
|
182
|
+
|
|
183
|
+
## New release v:3.2.22 (2026-06-07)
|
|
4
184
|
|
|
5
185
|
### repository
|
|
6
186
|
|
package/CLI-HELP.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
## Underpost CLI
|
|
2
2
|
|
|
3
|
-
> underpost ci/cd cli v3.2.
|
|
3
|
+
> underpost ci/cd cli v3.2.30
|
|
4
4
|
|
|
5
5
|
**Usage:** `underpost [options] [command]`
|
|
6
6
|
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
| [`monitor`](#underpost-monitor) | Manages health server monitoring for specified deployments. |
|
|
41
41
|
| [`ssh`](#underpost-ssh) | Manages SSH credentials and sessions for remote access to cluster nodes or services. |
|
|
42
42
|
| [`run`](#underpost-run) | Runs specified scripts using various runners. |
|
|
43
|
+
| [`docker-compose`](#underpost-docker-compose) | General-purpose Docker Compose development pipeline (mirrors the Kubernetes dev stack). |
|
|
43
44
|
| [`lxd`](#underpost-lxd) | Manages LXD virtual machines as K3s nodes (control plane or workers). |
|
|
44
45
|
| [`baremetal`](#underpost-baremetal) | Manages baremetal server operations, including installation, database setup, commissioning, and user management. |
|
|
45
46
|
| [`release`](#underpost-release) | Release orchestrator for building new versions and deploying releases of the Underpost CLI. |
|
|
@@ -221,6 +222,9 @@ Manages commits to a GitHub repository, supporting various commit types and opti
|
|
|
221
222
|
| `--bc <commit-hash>` | Shows branches that contain the specified commit. |
|
|
222
223
|
| `--is-remote-repo <url-repo>` | Checks whether a remote Git repository URL is reachable. Prints true or false. |
|
|
223
224
|
| `--has-changes` | Prints "1" if there are staged or unstaged git changes in the repository, empty string otherwise. |
|
|
225
|
+
| `--remote-url` | Prints the current git remote URL (origin) in plain text. |
|
|
226
|
+
| `--switch-repo <url>` | Switches the git remote (origin) to <url> and force-pulls the target branch, overwriting the current working tree (discards local commits and tracked changes). Accepts a full URL or "owner/repo". |
|
|
227
|
+
| `--target-branch <branch>` | Target branch for --switch-repo (default: master). |
|
|
224
228
|
| `-h, --help` | display help for command |
|
|
225
229
|
|
|
226
230
|
---
|
|
@@ -466,6 +470,7 @@ Manages application deployments, defaulting to deploying development pods.
|
|
|
466
470
|
| `--cert-hosts <hosts>` | Resets TLS/SSL certificate secrets for specified hosts. |
|
|
467
471
|
| `--self-signed` | Use a pre-created self-signed TLS secret (kubernetes.io/tls) instead of cert-manager. The secret must already exist in the namespace with the same name as the host. Enables TLS in the Contour HTTPProxy virtualhost without requiring a production ClusterIssuer. |
|
|
468
472
|
| `--node <node>` | Sets optional node for deployment operations. |
|
|
473
|
+
| `--ssh-key-path <path>` | Private key path for node SSH operations. Currently used when shipping a hostPath volume to a remote target node over SSH. Defaults to engine-private/deploy/id_rsa. |
|
|
469
474
|
| `--build-manifest` | Builds Kubernetes YAML manifests, including deployments, services, proxies, and secrets. |
|
|
470
475
|
| `--replicas <replicas>` | Sets a custom number of replicas for deployments. |
|
|
471
476
|
| `--image <image>` | Sets a custom image for deployments. |
|
|
@@ -815,7 +820,7 @@ Runs specified scripts using various runners.
|
|
|
815
820
|
|
|
816
821
|
| Argument | Description |
|
|
817
822
|
| --- | --- |
|
|
818
|
-
| `runner-id` | The runner ID to run. Options: dev-cluster,etc-hosts,ipfs-expose,metadata,svc-ls,svc-rm,ssh-deploy-info,dev-hosts-expose,dev-hosts-restore,cluster-build,template-deploy,template-deploy-local,docker-image,clean,pull,release-deploy,ssh-deploy,ide,crypto-policy,sync,stop,ssh-deploy-stop,ssh-deploy-db-rollback,ssh-deploy-db,ssh-deploy-db-status,tz,get-proxy,instance-promote,instance,instance-build-manifest,ls-deployments,host-update,install-crio,dd-container,ip-info,db-client,git-conf,promote,metrics,cluster,deploy,disk-clean,disk-devices,disk-usage,dev,service,sh,log,ps,pid-info,background,ports,deploy-test,tf-vae-test,spark-template,pull-rocky-image,rmi,kill,generate-pass,secret,underpost-config,gpu-env,tf-gpu-test,deploy-job,push-bundle,pull-bundle,build-cluster-deployment-manifests,monitor-ui,shared-dir. |
|
|
823
|
+
| `runner-id` | The runner ID to run. Options: dev-cluster,etc-hosts,ipfs-expose,metadata,svc-ls,svc-rm,ssh-deploy-info,node-move,dev-hosts-expose,dev-hosts-restore,cluster-build,template-deploy,template-deploy-local,docker-image,clean,pull,release-deploy,ssh-deploy,ide,crypto-policy,sync,stop,ssh-deploy-stop,ssh-deploy-db-rollback,ssh-deploy-db,ssh-deploy-db-status,tz,get-proxy,instance-promote,instance,instance-build-manifest,ls-deployments,host-update,install-crio,dd-container,ip-info,db-client,git-conf,promote,metrics,cluster,deploy,disk-clean,disk-devices,disk-usage,dev,service,sh,log,ps,pid-info,background,ports,deploy-test,tf-vae-test,spark-template,pull-rocky-image,rmi,kill,generate-pass,secret,underpost-config,gpu-env,tf-gpu-test,deploy-job,push-bundle,pull-bundle,build-cluster-deployment-manifests,monitor-ui,shared-dir,shared-dir-add-user. |
|
|
819
824
|
| `path` | The input value, identifier, or path for the operation. |
|
|
820
825
|
|
|
821
826
|
#### Options
|
|
@@ -829,6 +834,7 @@ Runs specified scripts using various runners.
|
|
|
829
834
|
| `--replicas <replicas>` | Sets a custom number of replicas for deployment. |
|
|
830
835
|
| `--pod-name <pod-name>` | Optional: Specifies the pod name for execution. |
|
|
831
836
|
| `--node-name <node-name>` | Optional: Specifies the node name for execution. |
|
|
837
|
+
| `--ssh-key-path <path>` | Optional: Private key path for node SSH operations, forwarded to volume shipping over SSH. Defaults to engine-private/deploy/id_rsa. |
|
|
832
838
|
| `--port <port>` | Optional: Specifies the port for execution. |
|
|
833
839
|
| `--etc-hosts` | Enables etc-hosts context for the runner execution. |
|
|
834
840
|
| `--volume-host-path <volume-host-path>` | Optional: Specifies the volume host path for test execution. |
|
|
@@ -894,6 +900,45 @@ Runs specified scripts using various runners.
|
|
|
894
900
|
|
|
895
901
|
---
|
|
896
902
|
|
|
903
|
+
### underpost docker-compose
|
|
904
|
+
|
|
905
|
+
General-purpose Docker Compose development pipeline (mirrors the Kubernetes dev stack).
|
|
906
|
+
|
|
907
|
+
**Usage:** `underpost docker-compose [options] [target]`
|
|
908
|
+
|
|
909
|
+
#### Arguments
|
|
910
|
+
|
|
911
|
+
| Argument | Description |
|
|
912
|
+
| --- | --- |
|
|
913
|
+
| `target` | Optional service name for --logs, --shell, --restart, or --build. |
|
|
914
|
+
|
|
915
|
+
#### Options
|
|
916
|
+
|
|
917
|
+
| Option | Description |
|
|
918
|
+
| --- | --- |
|
|
919
|
+
| `--install` | Install Docker Engine and the Compose v2 plugin on RHEL/Rocky hosts. |
|
|
920
|
+
| `--reset` | Comprehensive teardown (equivalent to cluster --reset): removes all stack containers, the network, named volumes (destroys data), orphans, and generated artifacts. |
|
|
921
|
+
| `--force` | Force reinstall (--install), remove volumes (--down), or also drop the env-file (--reset). |
|
|
922
|
+
| `--deploy-id <deploy-id>` | Deployment to run as the app container (default: dd-default). 'dd-default' self-bootstraps a fresh engine; any other id runs the standard 'underpost start' command (mirrors src/cli/deploy.js). |
|
|
923
|
+
| `--env <env>` | Deployment environment for non-default deploy ids (default: development). |
|
|
924
|
+
| `--generate` | Render dynamic supporting files (nginx router config, env-file, app-command override). |
|
|
925
|
+
| `--up` | Start the full stack detached (regenerates config first). |
|
|
926
|
+
| `--down` | Stop and remove containers (and orphans). |
|
|
927
|
+
| `--volumes` | With --down, also remove named volumes (destroys persisted data). |
|
|
928
|
+
| `--restart` | Restart services (optionally a single [target]). |
|
|
929
|
+
| `--build` | With --up rebuild images; alone, rebuilds images with --no-cache. |
|
|
930
|
+
| `--pull` | Pull upstream images for all services. |
|
|
931
|
+
| `--logs` | Follow logs for all services (optionally a single [target]). |
|
|
932
|
+
| `--status` | Show a formatted status table of services. |
|
|
933
|
+
| `--shell` | Open an interactive shell in [target] (default: app). |
|
|
934
|
+
| `--exec <subcommand>` | General-purpose passthrough docker compose subcommand. |
|
|
935
|
+
| `--compose-file <path>` | Path to the compose file (default: docker-compose.yml). |
|
|
936
|
+
| `--env-file <path>` | Path to the compose env-file (default: docker/compose.env). |
|
|
937
|
+
| `--nginx-conf <path>` | Path to the generated nginx config (default: docker/nginx/default.conf). |
|
|
938
|
+
| `-h, --help` | display help for command |
|
|
939
|
+
|
|
940
|
+
---
|
|
941
|
+
|
|
897
942
|
### underpost lxd
|
|
898
943
|
|
|
899
944
|
Manages LXD virtual machines as K3s nodes (control plane or workers).
|
|
@@ -976,6 +1021,18 @@ Manages baremetal server operations, including installation, database setup, com
|
|
|
976
1021
|
| `--remove-machines <system-ids>` | Removes baremetal machines by comma-separated system IDs, or use "all" |
|
|
977
1022
|
| `--clear-discovered` | Clears all discovered baremetal machines from the database. |
|
|
978
1023
|
| `--commission` | Init workflow for commissioning a physical machine. |
|
|
1024
|
+
| `--install-disk [device]` | Explicit target install disk for Rocky deployment (e.g. /dev/nvme0n1). Omit or leave empty to auto-detect the internal disk. |
|
|
1025
|
+
| `--no-auto-install` | Disables the ephemeral runtime AUTO_INSTALL fallback (controller must trigger install). |
|
|
1026
|
+
| `--no-remote-install` | Skips the controller-side remote install orchestration over SSH. |
|
|
1027
|
+
| `--worker` | Post-install infra role: join the deployed node as a Kubernetes worker (requires --control <ip>). Without this flag the node is set up as a control-plane. |
|
|
1028
|
+
| `--control <ip>` | Control-plane IP the worker node joins (used with --worker for kubeadm infra setup). |
|
|
1029
|
+
| `--ssh-key-dir <dir>` | Directory holding the SSH key pair used for commissioning/orchestration (expects <dir>/id_rsa and <dir>/id_rsa.pub). Overrides the workflow "sshKeyDir"; defaults to engine-private/deploy. Supports a leading ~. |
|
|
1030
|
+
| `--deploy-id <deploy-id>` | Deployment ID whose user key pair is used for SSH (key from engine-private/conf/<deploy-id>/users/<user>/id_rsa). Same user↔deployId↔key convention as the ssh command. |
|
|
1031
|
+
| `--user <user>` | SSH user paired with --deploy-id for key resolution and the login user on an existing control-plane (defaults to root). Mirrors the ssh command --user. |
|
|
1032
|
+
| `--engine-repo <url>` | Custom engine repo cloned + normalized to /home/dd/engine on the node (default: <GITHUB_USERNAME>/engine). |
|
|
1033
|
+
| `--engine-branch <branch>` | Branch of the engine repo to clone on the node. |
|
|
1034
|
+
| `--engine-private-repo <url>` | Custom private repo cloned + normalized to /home/dd/engine/engine-private on the node (default: <GITHUB_USERNAME>/engine-<id>-private). |
|
|
1035
|
+
| `--engine-private-branch <branch>` | Branch of the engine-private repo to clone on the node. |
|
|
979
1036
|
| `--bootstrap-http-server-run` | Runs a temporary bootstrap HTTP server for generic purposes such as serving iPXE scripts or ISO images during commissioning. |
|
|
980
1037
|
| `--bootstrap-http-server-path <path>` | Sets a custom bootstrap HTTP server path for baremetal commissioning. |
|
|
981
1038
|
| `--bootstrap-http-server-port <port>` | Sets a custom bootstrap HTTP server port for baremetal commissioning. |
|
|
@@ -997,6 +1054,8 @@ Manages baremetal server operations, including installation, database setup, com
|
|
|
997
1054
|
| `--logs <log-id>` | Displays logs for log id: dhcp,dhcp-lease,dhcp-lan,cloud-init,cloud-init-machine,cloud-init-config |
|
|
998
1055
|
| `--dev` | Sets the development context environment for baremetal operations. |
|
|
999
1056
|
| `--ls` | Lists available boot resources and machines. |
|
|
1057
|
+
| `--resume-infra-setup` | Skip commissioning, OS install, and all bootstrapping; resume only the SSH-based infra setup (kubeadm join/init) on a node that already has the OS installed and is reachable via SSH. |
|
|
1058
|
+
| `--resume-join` | Skip everything except the kubeadm join command. Assumes engine, Node.js, CRI-O, kubelet, and kubeadm are already installed. Only retrieves a fresh join token from the control-plane and runs kubeadm join. |
|
|
1000
1059
|
| `-h, --help` | display help for command |
|
|
1001
1060
|
|
|
1002
1061
|
---
|
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
<div align="center">
|
|
18
18
|
|
|
19
|
-
[](https://github.com/underpostnet/engine/actions/workflows/docker-image.ci.yml) [](https://github.com/underpostnet/engine/actions/workflows/coverall.ci.yml) [](https://www.npmjs.com/package/underpost) [](https://www.jsdelivr.com/package/npm/underpost) [](https://github.com/underpostnet/engine/actions/workflows/docker-image.ci.yml) [](https://github.com/underpostnet/engine/actions/workflows/coverall.ci.yml) [](https://www.npmjs.com/package/underpost) [](https://www.jsdelivr.com/package/npm/underpost) [](https://socket.dev/npm/package/underpost/overview/3.2.30) [](https://coveralls.io/github/underpostnet/engine?branch=master) [](https://www.npmjs.org/package/underpost) [](https://www.npmjs.com/package/underpost)
|
|
20
20
|
|
|
21
21
|
</div>
|
|
22
22
|
|
|
@@ -88,7 +88,7 @@ npm run dev
|
|
|
88
88
|
<!-- cli-index-start -->
|
|
89
89
|
## Underpost CLI
|
|
90
90
|
|
|
91
|
-
> underpost ci/cd cli v3.2.
|
|
91
|
+
> underpost ci/cd cli v3.2.30
|
|
92
92
|
|
|
93
93
|
**Usage:** `underpost [options] [command]`
|
|
94
94
|
|
|
@@ -128,6 +128,7 @@ npm run dev
|
|
|
128
128
|
| [`monitor`](CLI-HELP.md#underpost-monitor) | Manages health server monitoring for specified deployments. |
|
|
129
129
|
| [`ssh`](CLI-HELP.md#underpost-ssh) | Manages SSH credentials and sessions for remote access to cluster nodes or services. |
|
|
130
130
|
| [`run`](CLI-HELP.md#underpost-run) | Runs specified scripts using various runners. |
|
|
131
|
+
| [`docker-compose`](CLI-HELP.md#underpost-docker-compose) | General-purpose Docker Compose development pipeline (mirrors the Kubernetes dev stack). |
|
|
131
132
|
| [`lxd`](CLI-HELP.md#underpost-lxd) | Manages LXD virtual machines as K3s nodes (control plane or workers). |
|
|
132
133
|
| [`baremetal`](CLI-HELP.md#underpost-baremetal) | Manages baremetal server operations, including installation, database setup, commissioning, and user management. |
|
|
133
134
|
| [`release`](CLI-HELP.md#underpost-release) | Release orchestrator for building new versions and deploying releases of the Underpost CLI. |
|
|
@@ -174,6 +174,7 @@
|
|
|
174
174
|
"type": "iso-ram",
|
|
175
175
|
"osIdLike": "rhel centos fedora",
|
|
176
176
|
"architecture": "amd64",
|
|
177
|
+
"infraSetup": "underpost-kubeadm-contour",
|
|
177
178
|
"isoUrl": "https://download.rockylinux.org/pub/rocky/9/isos/x86_64/Rocky-9-latest-x86_64-boot.iso",
|
|
178
179
|
"tftpPrefix": "envy-rocky9",
|
|
179
180
|
"bootstrapHttpServerPort": 8888,
|