underpost 3.2.12 → 3.2.14
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 -0
- package/.github/workflows/npmpkg.ci.yml +9 -5
- package/CHANGELOG.md +58 -1
- package/CLI-HELP.md +906 -1130
- package/README.md +47 -41
- package/bin/build.js +88 -137
- package/bin/build.template.js +23 -179
- package/bin/deploy.js +4 -1
- package/bin/index.js +2 -2
- package/conf.js +11 -37
- package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +2 -2
- package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +1 -1
- package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
- package/package.json +9 -14
- package/src/cli/deploy.js +0 -228
- package/src/cli/image.js +58 -4
- package/src/cli/monitor.js +190 -6
- package/src/cli/release.js +5 -5
- package/src/cli/repository.js +80 -3
- package/src/cli/run.js +115 -69
- package/src/index.js +1 -1
- package/src/runtime/wp/Dockerfile +3 -3
- package/src/server/catalog-underpost.js +61 -0
- package/src/server/catalog.js +77 -0
- package/src/server/conf.js +334 -49
- package/src/server/start.js +7 -3
- package/test/deploy-monitor.test.js +188 -0
- package/manifests/deployment/dd-test-development/deployment.yaml +0 -256
- package/manifests/deployment/dd-test-development/proxy.yaml +0 -102
package/CLI-HELP.md
CHANGED
|
@@ -1,1187 +1,963 @@
|
|
|
1
|
-
##
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
1
|
+
## Underpost CLI
|
|
2
|
+
|
|
3
|
+
> underpost ci/cd cli v3.2.14
|
|
4
|
+
|
|
5
|
+
**Usage:** `underpost [options] [command]`
|
|
6
|
+
|
|
7
|
+
### Global options
|
|
8
|
+
|
|
9
|
+
| Option | Description |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| `-V, --version` | output the version number |
|
|
12
|
+
| `-h, --help` | display help for command |
|
|
13
|
+
|
|
14
|
+
### Commands
|
|
15
|
+
|
|
16
|
+
| Command | Description |
|
|
17
|
+
| --- | --- |
|
|
18
|
+
| [`new`](#underpost-new) | Initializes a new Underpost project, service, or configuration. |
|
|
19
|
+
| [`client`](#underpost-client) | Builds client assets, single replicas, and/or syncs environment ports. |
|
|
20
|
+
| [`start`](#underpost-start) | Initiates application servers, build pipelines, or other defined services based on the deployment ID. |
|
|
21
|
+
| [`clone`](#underpost-clone) | Clones a specified GitHub repository into the current directory. |
|
|
22
|
+
| [`pull`](#underpost-pull) | Pulls the latest changes from a specified GitHub repository. |
|
|
23
|
+
| [`cmt`](#underpost-cmt) | Manages commits to a GitHub repository, supporting various commit types and options. |
|
|
24
|
+
| [`push`](#underpost-push) | Pushes committed changes from a local repository to a remote GitHub repository. |
|
|
25
|
+
| [`env`](#underpost-env) | Sets environment variables and configurations related to a specific deployment ID. |
|
|
26
|
+
| [`static`](#underpost-static) | Manages static build of page, bundles, and documentation with comprehensive customization options. |
|
|
27
|
+
| [`config`](#underpost-config) | Manages Underpost configurations using various operators. |
|
|
28
|
+
| [`root`](#underpost-root) | Displays the root path of the npm installation. |
|
|
29
|
+
| [`ip`](#underpost-ip) | Displays the current public machine IP addresses. |
|
|
30
|
+
| [`cluster`](#underpost-cluster) | Manages Kubernetes clusters, defaulting to Kind cluster initialization. |
|
|
31
|
+
| [`deploy`](#underpost-deploy) | Manages application deployments, defaulting to deploying development pods. |
|
|
32
|
+
| [`secret`](#underpost-secret) | Manages secrets for various platforms. |
|
|
33
|
+
| [`image`](#underpost-image) | Manages Docker images, including building, saving, and loading into Kubernetes clusters. |
|
|
34
|
+
| [`install`](#underpost-install) | Quickly imports Underpost npm dependencies by copying them. |
|
|
35
|
+
| [`db`](#underpost-db) | Manages database operations with support for MariaDB and MongoDB, including import/export, multi-pod targeting, and Git integration. |
|
|
36
|
+
| [`metadata`](#underpost-metadata) | Manages cluster metadata operations, including import and export. |
|
|
37
|
+
| [`cron`](#underpost-cron) | Manages cron jobs: execute jobs directly or generate and apply K8s CronJob manifests. |
|
|
38
|
+
| [`fs`](#underpost-fs) | Manages file storage, defaulting to file upload operations. |
|
|
39
|
+
| [`test`](#underpost-test) | Manages and runs tests, defaulting to the current Underpost default test suite. |
|
|
40
|
+
| [`monitor`](#underpost-monitor) | Manages health server monitoring for specified deployments. |
|
|
41
|
+
| [`ssh`](#underpost-ssh) | Manages SSH credentials and sessions for remote access to cluster nodes or services. |
|
|
42
|
+
| [`run`](#underpost-run) | Runs specified scripts using various runners. |
|
|
43
|
+
| [`lxd`](#underpost-lxd) | Manages LXD virtual machines as K3s nodes (control plane or workers). |
|
|
44
|
+
| [`baremetal`](#underpost-baremetal) | Manages baremetal server operations, including installation, database setup, commissioning, and user management. |
|
|
45
|
+
| [`release`](#underpost-release) | Release orchestrator for building new versions and deploying releases of the Underpost CLI. |
|
|
46
|
+
|
|
47
|
+
## Command reference
|
|
48
|
+
|
|
49
|
+
### `underpost new`
|
|
48
50
|
|
|
49
51
|
Initializes a new Underpost project, service, or configuration.
|
|
50
52
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
### `client` :
|
|
82
|
-
```
|
|
83
|
-
Usage: underpost client [options] [deploy-id] [sub-conf] [host] [path]
|
|
53
|
+
**Usage:** `underpost new [options] [app-name]`
|
|
54
|
+
|
|
55
|
+
#### Arguments
|
|
56
|
+
|
|
57
|
+
| Argument | Description |
|
|
58
|
+
| --- | --- |
|
|
59
|
+
| `app-name` | The name of the new project. |
|
|
60
|
+
|
|
61
|
+
#### Options
|
|
62
|
+
|
|
63
|
+
| Option | Description |
|
|
64
|
+
| --- | --- |
|
|
65
|
+
| `--deploy-id <deploy-id>` | Create deploy ID conf env files |
|
|
66
|
+
| `--sub-conf <sub-conf>` | Create sub conf env files |
|
|
67
|
+
| `--cluster` | Create deploy ID cluster files and sync to current cluster |
|
|
68
|
+
| `--build-repos` | Create deploy ID repositories |
|
|
69
|
+
| `--build` | Build the deployment to pwa-microservices-template (requires --deploy-id) |
|
|
70
|
+
| `--clean-template` | Clean the build directory (pwa-microservices-template) |
|
|
71
|
+
| `--sync-conf` | Sync configuration to private repositories (requires --deploy-id) |
|
|
72
|
+
| `--sync-start` | Sync start scripts in deploy ID package.json with root package.json (use 'dd' as --deploy-id to sync all dd.router) |
|
|
73
|
+
| `--purge` | Remove deploy ID conf and all related repositories (requires --deploy-id) |
|
|
74
|
+
| `--dev` | Sets the development cli context |
|
|
75
|
+
| `--default-conf` | Create default deploy ID conf env files |
|
|
76
|
+
| `--conf-workflow-id <workflow-id>` | Set custom configuration workflow ID for conf generation |
|
|
77
|
+
| `-h, --help` | display help for command |
|
|
78
|
+
|
|
79
|
+
### `underpost client`
|
|
84
80
|
|
|
85
81
|
Builds client assets, single replicas, and/or syncs environment ports.
|
|
86
82
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
--skip-full-build Skips the full client bundle build during
|
|
139
|
-
deployment.
|
|
140
|
-
--pull-bundle Downloads the pre-built client bundle from
|
|
141
|
-
Cloudinary via pull-bundle before starting. Use
|
|
142
|
-
together with --skip-full-build to skip the local
|
|
143
|
-
build entirely.
|
|
144
|
-
-h, --help display help for command
|
|
145
|
-
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
### `clone` :
|
|
150
|
-
```
|
|
151
|
-
Usage: underpost clone [options] <uri>
|
|
83
|
+
**Usage:** `underpost client [options] [deploy-id] [sub-conf] [host] [path]`
|
|
84
|
+
|
|
85
|
+
#### Arguments
|
|
86
|
+
|
|
87
|
+
| Argument | Description |
|
|
88
|
+
| --- | --- |
|
|
89
|
+
| `deploy-id` | The deployment ID to build. (default: "dd-default") |
|
|
90
|
+
| `sub-conf` | The sub-configuration for the build. (default: "") |
|
|
91
|
+
| `host` | Comma-separated hosts to filter the build. (default: "") |
|
|
92
|
+
| `path` | Comma-separated paths to filter the build. (default: "") |
|
|
93
|
+
|
|
94
|
+
#### Options
|
|
95
|
+
|
|
96
|
+
| Option | Description |
|
|
97
|
+
| --- | --- |
|
|
98
|
+
| `--sync-env-port` | Sync environment port assignments across all deploy IDs |
|
|
99
|
+
| `--single-replica` | Build single replica folders instead of full client |
|
|
100
|
+
| `--build-zip` | Create zip files of the builds |
|
|
101
|
+
| `--split <mb>` | Split generated zip files into parts of the specified size in MB |
|
|
102
|
+
| `--unzip <build-prefix>` | Extract a built client zip or split zip parts using the given build prefix |
|
|
103
|
+
| `--merge-zip <build-prefix>` | Merge split ZIP parts back into a single ZIP file for the given build prefix |
|
|
104
|
+
| `--lite-build` | Skip full build (default is full build) |
|
|
105
|
+
| `--icons-build` | Build icons |
|
|
106
|
+
| `-h, --help` | display help for command |
|
|
107
|
+
|
|
108
|
+
### `underpost start`
|
|
109
|
+
|
|
110
|
+
Initiates application servers, build pipelines, or other defined services based on the deployment ID.
|
|
111
|
+
|
|
112
|
+
**Usage:** `underpost start [options] <deploy-id> [env]`
|
|
113
|
+
|
|
114
|
+
#### Arguments
|
|
115
|
+
|
|
116
|
+
| Argument | Description |
|
|
117
|
+
| --- | --- |
|
|
118
|
+
| `deploy-id` | The unique identifier for the deployment configuration. |
|
|
119
|
+
| `env` | Optional: The environment to start (e.g., "development", "production"). Defaults to "development". |
|
|
120
|
+
|
|
121
|
+
#### Options
|
|
122
|
+
|
|
123
|
+
| Option | Description |
|
|
124
|
+
| --- | --- |
|
|
125
|
+
| `--run` | Starts application servers and monitors their health. |
|
|
126
|
+
| `--build` | Triggers the client-side application build process. |
|
|
127
|
+
| `--underpost-quickly-install` | Uses Underpost Quickly Install for dependency installation. |
|
|
128
|
+
| `--skip-pull-base` | Skips cloning repositories, uses current workspace code directly. |
|
|
129
|
+
| `--skip-full-build` | Skips the full client bundle build during deployment. |
|
|
130
|
+
| `--pull-bundle` | Downloads the pre-built client bundle from Cloudinary via pull-bundle before starting. Use together with --skip-full-build to skip the local build entirely. |
|
|
131
|
+
| `-h, --help` | display help for command |
|
|
132
|
+
|
|
133
|
+
### `underpost clone`
|
|
152
134
|
|
|
153
135
|
Clones a specified GitHub repository into the current directory.
|
|
154
136
|
|
|
155
|
-
|
|
156
|
-
|
|
137
|
+
**Usage:** `underpost clone [options] <uri>`
|
|
138
|
+
|
|
139
|
+
#### Arguments
|
|
157
140
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
-h, --help display help for command
|
|
162
|
-
|
|
163
|
-
```
|
|
164
|
-
|
|
141
|
+
| Argument | Description |
|
|
142
|
+
| --- | --- |
|
|
143
|
+
| `uri` | The URI of the GitHub repository (e.g., "username/repository"). |
|
|
165
144
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
145
|
+
#### Options
|
|
146
|
+
|
|
147
|
+
| Option | Description |
|
|
148
|
+
| --- | --- |
|
|
149
|
+
| `--bare` | Performs a bare clone, downloading only the .git files. |
|
|
150
|
+
| `--g8` | Uses the g8 repository extension for cloning. |
|
|
151
|
+
| `-h, --help` | display help for command |
|
|
152
|
+
|
|
153
|
+
### `underpost pull`
|
|
169
154
|
|
|
170
155
|
Pulls the latest changes from a specified GitHub repository.
|
|
171
156
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
Options
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
--changelog-build).
|
|
231
|
-
--unpush With --log, automatically sets range to
|
|
232
|
-
unpushed commits ahead of remote.
|
|
233
|
-
-b Shows the current Git branch name.
|
|
234
|
-
-p [branch] Shows the reflog for the specified branch.
|
|
235
|
-
--bc <commit-hash> Shows branches that contain the specified
|
|
236
|
-
commit.
|
|
237
|
-
--is-remote-repo <url-repo> Checks whether a remote Git repository URL
|
|
238
|
-
is reachable. Prints true or false.
|
|
239
|
-
-h, --help display help for command
|
|
240
|
-
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
### `push` :
|
|
245
|
-
```
|
|
246
|
-
Usage: underpost push [options] <path> <uri>
|
|
157
|
+
**Usage:** `underpost pull [options] <path> <uri>`
|
|
158
|
+
|
|
159
|
+
#### Arguments
|
|
160
|
+
|
|
161
|
+
| Argument | Description |
|
|
162
|
+
| --- | --- |
|
|
163
|
+
| `path` | The absolute or relative directory path where the repository is located. |
|
|
164
|
+
| `uri` | The URI of the GitHub repository (e.g., "username/repository"). |
|
|
165
|
+
|
|
166
|
+
#### Options
|
|
167
|
+
|
|
168
|
+
| Option | Description |
|
|
169
|
+
| --- | --- |
|
|
170
|
+
| `--g8` | Uses the g8 repository extension for pulling. |
|
|
171
|
+
| `-h, --help` | display help for command |
|
|
172
|
+
|
|
173
|
+
### `underpost cmt`
|
|
174
|
+
|
|
175
|
+
Manages commits to a GitHub repository, supporting various commit types and options.
|
|
176
|
+
|
|
177
|
+
**Usage:** `underpost cmt [options] [path] [commit-type] [module-tag] [message]`
|
|
178
|
+
|
|
179
|
+
#### Arguments
|
|
180
|
+
|
|
181
|
+
| Argument | Description |
|
|
182
|
+
| --- | --- |
|
|
183
|
+
| `path` | The absolute or relative directory path of the repository. |
|
|
184
|
+
| `commit-type` | The type of commit to perform. Options: feat, fix, docs, style, refactor, perf, ci, cd, infra, build, test, chore, revert, backup. |
|
|
185
|
+
| `module-tag` | Optional: Sets a specific module tag for the commit. |
|
|
186
|
+
| `message` | Optional: Provides an additional custom message for the commit. |
|
|
187
|
+
|
|
188
|
+
#### Options
|
|
189
|
+
|
|
190
|
+
| Option | Description |
|
|
191
|
+
| --- | --- |
|
|
192
|
+
| `--log [latest-n]` | Shows commit history from the specified number of latest n path commits. |
|
|
193
|
+
| `--last-msg <latest-n>` | Displays the last n commit message. |
|
|
194
|
+
| `--empty` | Allows committing with empty files. |
|
|
195
|
+
| `--copy` | Copies the generated commit message to the clipboard. |
|
|
196
|
+
| `--info` | Displays information about available commit types. |
|
|
197
|
+
| `--diff` | Shows the current git diff changes. |
|
|
198
|
+
| `--edit` | Edit last commit. |
|
|
199
|
+
| `--deploy-id <deploy-id>` | Sets the deployment configuration ID for the commit context. |
|
|
200
|
+
| `--cached` | Commit staged changes only or context. |
|
|
201
|
+
| `--hashes <hashes>` | Comma-separated list of specific file hashes of commits. |
|
|
202
|
+
| `--extension <extension>` | specific file extensions of commits. |
|
|
203
|
+
| `--changelog [latest-n]` | Print plain the changelog of the specified number of latest n commits, if no number is provided it will get the changelog to latest ci integration |
|
|
204
|
+
| `--changelog-build` | Builds a CHANGELOG.md file based on the commit history |
|
|
205
|
+
| `--changelog-min-version <version>` | Sets the minimum version limit for --changelog-build (default: 2.85.0) |
|
|
206
|
+
| `--changelog-no-hash` | Excludes commit hashes from the generated changelog entries (used with --changelog-build). |
|
|
207
|
+
| `--unpush` | With --log, automatically sets range to unpushed commits ahead of remote. |
|
|
208
|
+
| `-b` | Shows the current Git branch name. |
|
|
209
|
+
| `-p [branch]` | Shows the reflog for the specified branch. |
|
|
210
|
+
| `--bc <commit-hash>` | Shows branches that contain the specified commit. |
|
|
211
|
+
| `--is-remote-repo <url-repo>` | Checks whether a remote Git repository URL is reachable. Prints true or false. |
|
|
212
|
+
| `-h, --help` | display help for command |
|
|
213
|
+
|
|
214
|
+
### `underpost push`
|
|
247
215
|
|
|
248
216
|
Pushes committed changes from a local repository to a remote GitHub repository.
|
|
249
217
|
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
```
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
### `config` :
|
|
334
|
-
```
|
|
335
|
-
Usage: underpost config [options] <operator> [key] [value]
|
|
218
|
+
**Usage:** `underpost push [options] <path> <uri>`
|
|
219
|
+
|
|
220
|
+
#### Arguments
|
|
221
|
+
|
|
222
|
+
| Argument | Description |
|
|
223
|
+
| --- | --- |
|
|
224
|
+
| `path` | The absolute or relative directory path of the repository. |
|
|
225
|
+
| `uri` | The URI of the GitHub repository (e.g., "username/repository"). |
|
|
226
|
+
|
|
227
|
+
#### Options
|
|
228
|
+
|
|
229
|
+
| Option | Description |
|
|
230
|
+
| --- | --- |
|
|
231
|
+
| `-f` | Forces the push, overwriting the remote repository history. |
|
|
232
|
+
| `--g8` | Uses the g8 repository extension for pushing. |
|
|
233
|
+
| `-h, --help` | display help for command |
|
|
234
|
+
|
|
235
|
+
### `underpost env`
|
|
236
|
+
|
|
237
|
+
Sets environment variables and configurations related to a specific deployment ID.
|
|
238
|
+
|
|
239
|
+
**Usage:** `underpost env [options] [deploy-id] [env] [subConf]`
|
|
240
|
+
|
|
241
|
+
#### Arguments
|
|
242
|
+
|
|
243
|
+
| Argument | Description |
|
|
244
|
+
| --- | --- |
|
|
245
|
+
| `deploy-id` | The deployment configuration ID. Use 'clean' to restore default environment settings. Use 'root' to load underpost root env. Use 'current' to get plain current deploy Id. |
|
|
246
|
+
| `env` | Optional: The environment to set (e.g., "production", "development"). Defaults to "production". |
|
|
247
|
+
| `subConf` | Optional: The sub configuration to set. |
|
|
248
|
+
|
|
249
|
+
#### Options
|
|
250
|
+
|
|
251
|
+
| Option | Description |
|
|
252
|
+
| --- | --- |
|
|
253
|
+
| `-h, --help` | display help for command |
|
|
254
|
+
|
|
255
|
+
### `underpost static`
|
|
256
|
+
|
|
257
|
+
Manages static build of page, bundles, and documentation with comprehensive customization options.
|
|
258
|
+
|
|
259
|
+
**Usage:** `underpost static [options]`
|
|
260
|
+
|
|
261
|
+
#### Options
|
|
262
|
+
|
|
263
|
+
| Option | Description |
|
|
264
|
+
| --- | --- |
|
|
265
|
+
| `--page <ssr-component-path>` | Build custom static pages. |
|
|
266
|
+
| `--title <title>` | Sets a custom title for the static page (deprecated: use --config-file). |
|
|
267
|
+
| `--output-path <output-path>` | Sets the output path for the generated static page. |
|
|
268
|
+
| `--description <description>` | Page description for SEO. |
|
|
269
|
+
| `--keywords <keywords>` | Comma-separated keywords for SEO. |
|
|
270
|
+
| `--author <author>` | Page author. |
|
|
271
|
+
| `--theme-color <color>` | Theme color for mobile browsers. |
|
|
272
|
+
| `--canonical-url <url>` | Canonical URL for SEO. |
|
|
273
|
+
| `--thumbnail <url>` | Open Graph thumbnail image URL. |
|
|
274
|
+
| `--locale <locale>` | Page locale (default: en-US). |
|
|
275
|
+
| `--site-name <name>` | Site name for Open Graph. |
|
|
276
|
+
| `--head-scripts <paths>` | Comma-separated paths to scripts for head section. |
|
|
277
|
+
| `--body-scripts <paths>` | Comma-separated paths to scripts for body section. |
|
|
278
|
+
| `--styles <paths>` | Comma-separated paths to stylesheets. |
|
|
279
|
+
| `--favicon <path>` | Favicon path. |
|
|
280
|
+
| `--apple-touch-icon <path>` | Apple touch icon path. |
|
|
281
|
+
| `--manifest <path>` | Web manifest path. |
|
|
282
|
+
| `--head-components <paths>` | Comma-separated SSR head component paths. |
|
|
283
|
+
| `--body-components <paths>` | Comma-separated SSR body component paths. |
|
|
284
|
+
| `--build-path <build-path>` | Sets a custom build path for static documents or assets. |
|
|
285
|
+
| `--env <env>` | Sets the environment for the static build (e.g., "development", "production"). |
|
|
286
|
+
| `--minify` | Minify HTML output (default: true for production). |
|
|
287
|
+
| `--no-minify` | Disable HTML minification. |
|
|
288
|
+
| `--config-file <path>` | Path to JSON configuration file. |
|
|
289
|
+
| `--generate-config [path]` | Generate a template configuration file. |
|
|
290
|
+
| `--lang <lang>` | HTML lang attribute (default: en). |
|
|
291
|
+
| `--dir <dir>` | HTML dir attribute (default: ltr). |
|
|
292
|
+
| `--dev` | Sets the development cli context |
|
|
293
|
+
| `--run-sv [port]` | Start a standalone Express static server to preview the static build (default port: 5000). |
|
|
294
|
+
| `-h, --help` | display help for command |
|
|
295
|
+
|
|
296
|
+
### `underpost config`
|
|
336
297
|
|
|
337
298
|
Manages Underpost configurations using various operators.
|
|
338
299
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
Options:
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
Usage: underpost root [options]
|
|
300
|
+
**Usage:** `underpost config [options] <operator> [key] [value]`
|
|
301
|
+
|
|
302
|
+
#### Arguments
|
|
303
|
+
|
|
304
|
+
| Argument | Description |
|
|
305
|
+
| --- | --- |
|
|
306
|
+
| `operator` | The configuration operation to perform. Options: set, delete, get, list, clean, isInsideContainer. |
|
|
307
|
+
| `key` | Optional: The specific configuration key to manage. |
|
|
308
|
+
| `value` | Optional: The value to set for the configuration key. |
|
|
309
|
+
|
|
310
|
+
#### Options
|
|
311
|
+
|
|
312
|
+
| Option | Description |
|
|
313
|
+
| --- | --- |
|
|
314
|
+
| `--plain` | Prints the configuration value in plain text. |
|
|
315
|
+
| `--filter <keyword>` | Filters the list by matching key or value (only for list operation). |
|
|
316
|
+
| `--deploy-id <deploy-id>` | Sets the deployment configuration ID for the operation context. |
|
|
317
|
+
| `--build` | Sets the build context for the operation. |
|
|
318
|
+
| `--copy` | Copies the configuration value to the clipboard (only for get operation). |
|
|
319
|
+
| `-h, --help` | display help for command |
|
|
320
|
+
|
|
321
|
+
### `underpost root`
|
|
362
322
|
|
|
363
323
|
Displays the root path of the npm installation.
|
|
364
324
|
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
325
|
+
**Usage:** `underpost root [options]`
|
|
326
|
+
|
|
327
|
+
#### Options
|
|
328
|
+
|
|
329
|
+
| Option | Description |
|
|
330
|
+
| --- | --- |
|
|
331
|
+
| `-h, --help` | display help for command |
|
|
370
332
|
|
|
371
|
-
### `ip`
|
|
372
|
-
```
|
|
373
|
-
Usage: underpost ip [options] [ips]
|
|
333
|
+
### `underpost ip`
|
|
374
334
|
|
|
375
335
|
Displays the current public machine IP addresses.
|
|
376
336
|
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
337
|
+
**Usage:** `underpost ip [options] [ips]`
|
|
338
|
+
|
|
339
|
+
#### Arguments
|
|
340
|
+
|
|
341
|
+
| Argument | Description |
|
|
342
|
+
| --- | --- |
|
|
343
|
+
| `ips` | Optional args comma-separated list of IP to process. |
|
|
344
|
+
|
|
345
|
+
#### Options
|
|
346
|
+
|
|
347
|
+
| Option | Description |
|
|
348
|
+
| --- | --- |
|
|
349
|
+
| `--dhcp` | Fetches and displays the current Dynamic Host Configuration Protocol server IP address. |
|
|
350
|
+
| `--copy` | Copies the IP addresses to the clipboard. |
|
|
351
|
+
| `--ban-ingress-add` | Adds IP addresses to banned ingress list. |
|
|
352
|
+
| `--ban-ingress-remove` | Removes IP addresses from banned ingress list. |
|
|
353
|
+
| `--ban-ingress-list` | Lists all banned ingress IP addresses. |
|
|
354
|
+
| `--ban-ingress-clear` | Clears all banned ingress IP addresses. |
|
|
355
|
+
| `--ban-egress-add` | Adds IP addresses to banned egress list. |
|
|
356
|
+
| `--ban-egress-remove` | Removes IP addresses from banned egress list. |
|
|
357
|
+
| `--ban-egress-list` | Lists all banned egress IP addresses. |
|
|
358
|
+
| `--ban-egress-clear` | Clears all banned egress IP addresses. |
|
|
359
|
+
| `--ban-both-add` | Adds IP addresses to both banned ingress and egress lists. |
|
|
360
|
+
| `--ban-both-remove` | Removes IP addresses from both banned ingress and egress lists. |
|
|
361
|
+
| `--mac` | Prints the MAC address of the main network interface. |
|
|
362
|
+
| `-h, --help` | display help for command |
|
|
363
|
+
|
|
364
|
+
### `underpost cluster`
|
|
405
365
|
|
|
406
366
|
Manages Kubernetes clusters, defaulting to Kind cluster initialization.
|
|
407
367
|
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
"192.168.0.0/16").
|
|
458
|
-
--control-plane-endpoint <endpoint> Sets custom control plane endpoint for
|
|
459
|
-
kubeadm cluster initialization (defaults
|
|
460
|
-
to "localhost:6443").
|
|
461
|
-
--grafana Initializes the cluster with a Grafana
|
|
462
|
-
deployment.
|
|
463
|
-
--prom [hosts] Initializes the cluster with a Prometheus
|
|
464
|
-
Operator deployment and monitor scrap for
|
|
465
|
-
specified hosts.
|
|
466
|
-
--dev Initializes a development-specific
|
|
467
|
-
cluster configuration.
|
|
468
|
-
--list-pods Displays detailed information about all
|
|
469
|
-
pods.
|
|
470
|
-
--pull-image Sets an optional associated image to pull
|
|
471
|
-
during initialization.
|
|
472
|
-
--init-host Installs necessary Kubernetes node CLI
|
|
473
|
-
tools (e.g., kind, kubeadm, docker,
|
|
474
|
-
podman, helm).
|
|
475
|
-
--uninstall-host Uninstalls all host components installed
|
|
476
|
-
by init-host.
|
|
477
|
-
--config Sets the base Kubernetes node
|
|
478
|
-
configuration.
|
|
479
|
-
--chown Sets the appropriate ownership for
|
|
480
|
-
Kubernetes kubeconfig files.
|
|
481
|
-
--k3s Initializes the cluster using K3s
|
|
482
|
-
(Lightweight Kubernetes).
|
|
483
|
-
--hosts <hosts> A comma-separated list of cluster
|
|
484
|
-
hostnames or IP addresses.
|
|
485
|
-
--remove-volume-host-paths Removes specified volume host paths after
|
|
486
|
-
execution.
|
|
487
|
-
--reset-mode <mode> Reset mode for --reset --k3s: "drain"
|
|
488
|
-
(stop services, keep K3s installed) or
|
|
489
|
-
"full" (uninstall + cleanup). Default:
|
|
490
|
-
"full".
|
|
491
|
-
--namespace <namespace> Kubernetes namespace for cluster
|
|
492
|
-
operations (defaults to "default").
|
|
493
|
-
--replicas <replicas> Sets a custom number of replicas for
|
|
494
|
-
statefulset deployments.
|
|
495
|
-
-h, --help display help for command
|
|
496
|
-
|
|
497
|
-
```
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
### `deploy` :
|
|
501
|
-
```
|
|
502
|
-
Usage: underpost deploy [options] [deploy-list] [env]
|
|
368
|
+
**Usage:** `underpost cluster [options] [pod-name]`
|
|
369
|
+
|
|
370
|
+
#### Arguments
|
|
371
|
+
|
|
372
|
+
| Argument | Description |
|
|
373
|
+
| --- | --- |
|
|
374
|
+
| `pod-name` | Optional: Filters information by a specific pod name. |
|
|
375
|
+
|
|
376
|
+
#### Options
|
|
377
|
+
|
|
378
|
+
| Option | Description |
|
|
379
|
+
| --- | --- |
|
|
380
|
+
| `--reset` | Deletes all clusters and prunes all related data and caches. |
|
|
381
|
+
| `--reset-mongodb` | Performs a hard cleanup of only MongoDB-related resources (StatefulSet, PVCs/PVs, Secrets, ConfigMaps, caches) without restarting the whole node. |
|
|
382
|
+
| `--mariadb` | Initializes the cluster with a MariaDB statefulset. |
|
|
383
|
+
| `--mysql` | Initializes the cluster with a MySQL statefulset. |
|
|
384
|
+
| `--mongodb` | Initializes the cluster with a MongoDB statefulset. |
|
|
385
|
+
| `--service-host <host>` | Set custom host/IP for exposed MongoDB and Valkey clients. |
|
|
386
|
+
| `--postgresql` | Initializes the cluster with a PostgreSQL statefulset. |
|
|
387
|
+
| `--mongodb4` | Initializes the cluster with a MongoDB 4.4 service. |
|
|
388
|
+
| `--valkey` | Initializes the cluster with a Valkey service. |
|
|
389
|
+
| `--ipfs` | Initializes the cluster with an ipfs-cluster statefulset. |
|
|
390
|
+
| `--contour` | Initializes the cluster with Project Contour base HTTPProxy and Envoy. |
|
|
391
|
+
| `--node-port` | Exposes enabled ready services (e.g. MongoDB 4.4, Valkey) to the host/public network via their NodePort Service manifest. |
|
|
392
|
+
| `--node-selector <k8s-node-name>` | Pins the just-deployed StatefulSet (MongoDB 4.4 / Valkey) to the given Kubernetes node once it is ready (via a kubernetes.io/hostname nodeSelector). |
|
|
393
|
+
| `--cert-manager` | Initializes the cluster with a Let's Encrypt production ClusterIssuer. |
|
|
394
|
+
| `--dedicated-gpu` | Initializes the cluster with dedicated GPU base resources and environment settings. |
|
|
395
|
+
| `--ns-use <ns-name>` | Switches the current Kubernetes context to the specified namespace (creates if it doesn't exist). |
|
|
396
|
+
| `--kubeadm` | Initializes the cluster using kubeadm for control plane management. |
|
|
397
|
+
| `--pod-network-cidr <cidr>` | Sets custom pod network CIDR for kubeadm cluster initialization (defaults to "192.168.0.0/16"). |
|
|
398
|
+
| `--control-plane-endpoint <endpoint>` | Sets custom control plane endpoint for kubeadm cluster initialization (defaults to "localhost:6443"). |
|
|
399
|
+
| `--grafana` | Initializes the cluster with a Grafana deployment. |
|
|
400
|
+
| `--prom [hosts]` | Initializes the cluster with a Prometheus Operator deployment and monitor scrap for specified hosts. |
|
|
401
|
+
| `--dev` | Initializes a development-specific cluster configuration. |
|
|
402
|
+
| `--list-pods` | Displays detailed information about all pods. |
|
|
403
|
+
| `--pull-image` | Sets an optional associated image to pull during initialization. |
|
|
404
|
+
| `--init-host` | Installs necessary Kubernetes node CLI tools (e.g., kind, kubeadm, docker, podman, helm). |
|
|
405
|
+
| `--uninstall-host` | Uninstalls all host components installed by init-host. |
|
|
406
|
+
| `--config` | Sets the base Kubernetes node configuration. |
|
|
407
|
+
| `--chown` | Sets the appropriate ownership for Kubernetes kubeconfig files. |
|
|
408
|
+
| `--k3s` | Initializes the cluster using K3s (Lightweight Kubernetes). |
|
|
409
|
+
| `--hosts <hosts>` | A comma-separated list of cluster hostnames or IP addresses. |
|
|
410
|
+
| `--remove-volume-host-paths` | Removes specified volume host paths after execution. |
|
|
411
|
+
| `--reset-mode <mode>` | Reset mode for --reset --k3s: "drain" (stop services, keep K3s installed) or "full" (uninstall + cleanup). Default: "full". |
|
|
412
|
+
| `--namespace <namespace>` | Kubernetes namespace for cluster operations (defaults to "default"). |
|
|
413
|
+
| `--replicas <replicas>` | Sets a custom number of replicas for statefulset deployments. |
|
|
414
|
+
| `-h, --help` | display help for command |
|
|
415
|
+
|
|
416
|
+
### `underpost deploy`
|
|
503
417
|
|
|
504
418
|
Manages application deployments, defaulting to deploying development pods.
|
|
505
419
|
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
--k3s Enables the k3s context for deployment
|
|
557
|
-
operations.
|
|
558
|
-
--kind Enables the kind context for deployment
|
|
559
|
-
operations.
|
|
560
|
-
--git-clean Runs git clean on volume mount paths
|
|
561
|
-
before copying.
|
|
562
|
-
--disable-update-underpost-config Disables updates to Underpost
|
|
563
|
-
configuration during deployment.
|
|
564
|
-
--namespace <namespace> Kubernetes namespace for deployment
|
|
565
|
-
operations (defaults to "default").
|
|
566
|
-
--kind-type <kind-type> Specifies the Kind cluster type for
|
|
567
|
-
deployment operations.
|
|
568
|
-
--port <port> Sets up port forwarding from local to
|
|
569
|
-
remote ports.
|
|
570
|
-
--expose-port <port> Sets the local:remote port to expose when
|
|
571
|
-
--expose is active (overrides
|
|
572
|
-
auto-detected service port).
|
|
573
|
-
--cmd <cmd> Custom initialization command for
|
|
574
|
-
deployment (comma-separated commands).
|
|
575
|
-
--skip-full-build Skip client bundle rebuild; container will
|
|
576
|
-
pull pre-built bundle via pull-bundle
|
|
577
|
-
instead.
|
|
578
|
-
--pull-bundle Explicitly pull the pre-built client
|
|
579
|
-
bundle from Cloudinary inside the
|
|
580
|
-
container. Use together with
|
|
581
|
-
--skip-full-build.
|
|
582
|
-
--image-pull-policy <policy> Override container imagePullPolicy in the
|
|
583
|
-
generated deployment manifest (Always,
|
|
584
|
-
IfNotPresent, Never). Defaults to Never
|
|
585
|
-
for localhost/ images and IfNotPresent
|
|
586
|
-
otherwise.
|
|
587
|
-
-h, --help display help for command
|
|
588
|
-
|
|
589
|
-
```
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
### `secret` :
|
|
593
|
-
```
|
|
594
|
-
Usage: underpost secret [options] <platform>
|
|
420
|
+
**Usage:** `underpost deploy [options] [deploy-list] [env]`
|
|
421
|
+
|
|
422
|
+
#### Arguments
|
|
423
|
+
|
|
424
|
+
| Argument | Description |
|
|
425
|
+
| --- | --- |
|
|
426
|
+
| `deploy-list` | A comma-separated list of deployment IDs (e.g., "default-a,default-b"). |
|
|
427
|
+
| `env` | Optional: The environment for deployment (e.g., "development", "production"). Defaults to "development". |
|
|
428
|
+
|
|
429
|
+
#### Options
|
|
430
|
+
|
|
431
|
+
| Option | Description |
|
|
432
|
+
| --- | --- |
|
|
433
|
+
| `--remove` | Deletes specified deployments and their associated services. |
|
|
434
|
+
| `--sync` | Synchronizes deployment environment variables, ports, and replica counts. |
|
|
435
|
+
| `--info-router` | Displays the current router structure and configuration. |
|
|
436
|
+
| `--expose` | Exposes services matching the provided deployment ID list. |
|
|
437
|
+
| `--cert` | Resets TLS/SSL certificate secrets for deployments. |
|
|
438
|
+
| `--cert-hosts <hosts>` | Resets TLS/SSL certificate secrets for specified hosts. |
|
|
439
|
+
| `--node <node>` | Sets optional node for deployment operations. |
|
|
440
|
+
| `--build-manifest` | Builds Kubernetes YAML manifests, including deployments, services, proxies, and secrets. |
|
|
441
|
+
| `--replicas <replicas>` | Sets a custom number of replicas for deployments. |
|
|
442
|
+
| `--image <image>` | Sets a custom image for deployments. |
|
|
443
|
+
| `--versions <deployment-versions>` | A comma-separated list of custom deployment versions. |
|
|
444
|
+
| `--traffic <traffic-versions>` | A comma-separated list of custom deployment traffic weights. |
|
|
445
|
+
| `--timeout-response <duration>` | Sets HTTPProxy per-route response timeout (e.g., "1s", "300ms", "infinity"). |
|
|
446
|
+
| `--timeout-idle <duration>` | Sets HTTPProxy per-route idle timeout (e.g., "10s", "infinity"). |
|
|
447
|
+
| `--retry-count <count>` | Sets HTTPProxy per-route retry count (e.g., 3). |
|
|
448
|
+
| `--retry-per-try-timeout <duration>` | Sets HTTPProxy retry per-try timeout (e.g., "150ms"). |
|
|
449
|
+
| `--disable-update-deployment` | Disables updates to deployments. |
|
|
450
|
+
| `--disable-update-proxy` | Disables updates to proxies. |
|
|
451
|
+
| `--disable-deployment-proxy` | Disables proxies of deployments. |
|
|
452
|
+
| `--disable-update-volume` | Disables updates to volume mounts during deployment. |
|
|
453
|
+
| `--status` | Retrieves current network traffic data from resource deployments and the host machine network configuration. |
|
|
454
|
+
| `--kubeadm` | Enables the kubeadm context for deployment operations. |
|
|
455
|
+
| `--k3s` | Enables the k3s context for deployment operations. |
|
|
456
|
+
| `--kind` | Enables the kind context for deployment operations. |
|
|
457
|
+
| `--git-clean` | Runs git clean on volume mount paths before copying. |
|
|
458
|
+
| `--disable-update-underpost-config` | Disables updates to Underpost configuration during deployment. |
|
|
459
|
+
| `--namespace <namespace>` | Kubernetes namespace for deployment operations (defaults to "default"). |
|
|
460
|
+
| `--kind-type <kind-type>` | Specifies the Kind cluster type for deployment operations. |
|
|
461
|
+
| `--port <port>` | Sets up port forwarding from local to remote ports. |
|
|
462
|
+
| `--expose-port <port>` | Sets the local:remote port to expose when --expose is active (overrides auto-detected service port). |
|
|
463
|
+
| `--cmd <cmd>` | Custom initialization command for deployment (comma-separated commands). |
|
|
464
|
+
| `--skip-full-build` | Skip client bundle rebuild; container will pull pre-built bundle via pull-bundle instead. |
|
|
465
|
+
| `--pull-bundle` | Explicitly pull the pre-built client bundle from Cloudinary inside the container. Use together with --skip-full-build. |
|
|
466
|
+
| `--image-pull-policy <policy>` | Override container imagePullPolicy in the generated deployment manifest (Always, IfNotPresent, Never). Defaults to Never for localhost/ images and IfNotPresent otherwise. |
|
|
467
|
+
| `-h, --help` | display help for command |
|
|
468
|
+
|
|
469
|
+
### `underpost secret`
|
|
595
470
|
|
|
596
471
|
Manages secrets for various platforms.
|
|
597
472
|
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
management.
|
|
649
|
-
--kubeadm Set kubeadm cluster env image context
|
|
650
|
-
management.
|
|
651
|
-
--k3s Set k3s cluster env image context
|
|
652
|
-
management.
|
|
653
|
-
--node-name Set node name for kubeadm or k3s cluster
|
|
654
|
-
env image context management.
|
|
655
|
-
--reset Performs a build without using the cache.
|
|
656
|
-
--dev Use development mode.
|
|
657
|
-
--pull-dockerhub <dockerhub-image> Sets a custom Docker Hub image for base
|
|
658
|
-
image pulls.
|
|
659
|
-
-h, --help display help for command
|
|
660
|
-
|
|
661
|
-
```
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
### `install` :
|
|
665
|
-
```
|
|
666
|
-
Usage: underpost install [options]
|
|
473
|
+
**Usage:** `underpost secret [options] <platform>`
|
|
474
|
+
|
|
475
|
+
#### Arguments
|
|
476
|
+
|
|
477
|
+
| Argument | Description |
|
|
478
|
+
| --- | --- |
|
|
479
|
+
| `platform` | The secret management platform. Options: underpost, globalSecretClean. |
|
|
480
|
+
|
|
481
|
+
#### Options
|
|
482
|
+
|
|
483
|
+
| Option | Description |
|
|
484
|
+
| --- | --- |
|
|
485
|
+
| `--init` | Initializes the secrets platform environment. |
|
|
486
|
+
| `--create-from-file <path-env-file>` | Creates secrets from a specified environment file. |
|
|
487
|
+
| `--create-from-env` | Creates secrets from container environment variables (envFrom: secretRef). |
|
|
488
|
+
| `--global-clean` | Removes all filesystem traces of secrets (engine-private, .env, conf cache). |
|
|
489
|
+
| `--list` | Lists all available secrets for the platform. |
|
|
490
|
+
| `-h, --help` | display help for command |
|
|
491
|
+
|
|
492
|
+
### `underpost image`
|
|
493
|
+
|
|
494
|
+
Manages Docker images, including building, saving, and loading into Kubernetes clusters.
|
|
495
|
+
|
|
496
|
+
**Usage:** `underpost image [options]`
|
|
497
|
+
|
|
498
|
+
#### Options
|
|
499
|
+
|
|
500
|
+
| Option | Description |
|
|
501
|
+
| --- | --- |
|
|
502
|
+
| `--build` | Builds a Docker image using Podman, optionally saves it as a tar archive, and loads it into a specified Kubernetes cluster (Kind, Kubeadm, or K3s). |
|
|
503
|
+
| `--ls` | Lists all available Underpost Dockerfile images. |
|
|
504
|
+
| `--rm <image-id>` | Removes specified Underpost Dockerfile images. |
|
|
505
|
+
| `--path [path]` | The path to the Dockerfile directory. |
|
|
506
|
+
| `--image-name [image-name]` | Sets a custom name for the Docker image. |
|
|
507
|
+
| `--image-path [image-path]` | Sets the output path for the tar image archive. |
|
|
508
|
+
| `--dockerfile-name [dockerfile-name]` | Sets a custom name for the Dockerfile. |
|
|
509
|
+
| `--podman-save` | Exports the built image as a tar file using Podman. |
|
|
510
|
+
| `--pull-base` | Pulls base images and builds a "rockylinux9-underpost" image. |
|
|
511
|
+
| `--spec` | Get current cached list of container images used by all pods |
|
|
512
|
+
| `--namespace <namespace>` | Kubernetes namespace for image operations (defaults to "default"). |
|
|
513
|
+
| `--kind` | Set kind cluster env image context management. |
|
|
514
|
+
| `--kubeadm` | Set kubeadm cluster env image context management. |
|
|
515
|
+
| `--k3s` | Set k3s cluster env image context management. |
|
|
516
|
+
| `--node-name` | Set node name for kubeadm or k3s cluster env image context management. |
|
|
517
|
+
| `--reset` | Performs a build without using the cache. |
|
|
518
|
+
| `--dev` | Use development mode. |
|
|
519
|
+
| `--pull-dockerhub <dockerhub-image>` | Sets a custom Docker Hub image for base image pulls. |
|
|
520
|
+
| `-h, --help` | display help for command |
|
|
521
|
+
|
|
522
|
+
### `underpost install`
|
|
667
523
|
|
|
668
524
|
Quickly imports Underpost npm dependencies by copying them.
|
|
669
525
|
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
Manages database operations with support for MariaDB and MongoDB, including
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
526
|
+
**Usage:** `underpost install [options]`
|
|
527
|
+
|
|
528
|
+
#### Options
|
|
529
|
+
|
|
530
|
+
| Option | Description |
|
|
531
|
+
| --- | --- |
|
|
532
|
+
| `-h, --help` | display help for command |
|
|
533
|
+
|
|
534
|
+
### `underpost db`
|
|
535
|
+
|
|
536
|
+
Manages database operations with support for MariaDB and MongoDB, including import/export, multi-pod targeting, and Git integration.
|
|
537
|
+
|
|
538
|
+
**Usage:** `underpost db [options] [deploy-list]`
|
|
539
|
+
|
|
540
|
+
#### Arguments
|
|
541
|
+
|
|
542
|
+
| Argument | Description |
|
|
543
|
+
| --- | --- |
|
|
544
|
+
| `deploy-list` | A comma-separated list of deployment IDs (e.g., "default-a,default-b"). |
|
|
545
|
+
|
|
546
|
+
#### Options
|
|
547
|
+
|
|
548
|
+
| Option | Description |
|
|
549
|
+
| --- | --- |
|
|
550
|
+
| `--import` | Imports container backups from specified repositories. |
|
|
551
|
+
| `--export` | Exports container backups to specified repositories. |
|
|
552
|
+
| `--pod-name <pod-name>` | Comma-separated list of pod names or patterns (supports wildcards like "mariadb-*"). |
|
|
553
|
+
| `--all-pods` | Target all matching pods instead of just the first one. |
|
|
554
|
+
| `--primary-pod` | Automatically detect and use MongoDB primary pod (MongoDB only). |
|
|
555
|
+
| `--primary-pod-ensure <pod-name>` | Ensure setup of MongoDB replica set primary pod before operations. |
|
|
556
|
+
| `--stats` | Display database statistics (collection/table names with document/row counts). |
|
|
557
|
+
| `--collections <collections>` | Comma-separated list of database collections to operate on. |
|
|
558
|
+
| `--out-path <out-path>` | Specifies a custom output path for backups. |
|
|
559
|
+
| `--drop` | Drops the specified databases or collections before importing. |
|
|
560
|
+
| `--preserveUUID` | Preserves UUIDs during database import operations. |
|
|
561
|
+
| `--git` | Enables Git integration for backup version control (clone, pull, commit, push to GitHub). |
|
|
562
|
+
| `--force-clone` | Forces cloning of the Git repository, overwriting local changes. |
|
|
563
|
+
| `--hosts <hosts>` | Comma-separated list of database hosts to filter operations. |
|
|
564
|
+
| `--paths <paths>` | Comma-separated list of paths to filter database operations. |
|
|
565
|
+
| `--ns <ns-name>` | Kubernetes namespace context for database operations (defaults to "default"). |
|
|
566
|
+
| `--macro-rollback-export <n-commits-reset>` | Exports a macro rollback script that reverts the last n commits (Git integration required). |
|
|
567
|
+
| `--clean-fs-collection` | Cleans orphaned File documents from collections that are not referenced by any models. |
|
|
568
|
+
| `--clean-fs-dry-run` | Dry run mode - shows what would be deleted without actually deleting (use with --clean-fs-collection). |
|
|
569
|
+
| `--dev` | Sets the development cli context |
|
|
570
|
+
| `--kubeadm` | Enables the kubeadm context for database operations. |
|
|
571
|
+
| `--kind` | Enables the kind context for database operations. |
|
|
572
|
+
| `--k3s` | Enables the k3s context for database operations. |
|
|
573
|
+
| `--repo-backup` | Backs up repositories (git commit+push) inside deployment pods via kubectl exec. |
|
|
574
|
+
| `-h, --help` | display help for command |
|
|
575
|
+
|
|
576
|
+
### `underpost metadata`
|
|
719
577
|
|
|
720
578
|
Manages cluster metadata operations, including import and export.
|
|
721
579
|
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
```
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
### `fs` :
|
|
782
|
-
```
|
|
783
|
-
Usage: underpost fs [options] [path]
|
|
580
|
+
**Usage:** `underpost metadata [options] [deploy-id] [host] [path]`
|
|
581
|
+
|
|
582
|
+
#### Arguments
|
|
583
|
+
|
|
584
|
+
| Argument | Description |
|
|
585
|
+
| --- | --- |
|
|
586
|
+
| `deploy-id` | The deployment ID to manage metadata. |
|
|
587
|
+
| `host` | The host to manage metadata. |
|
|
588
|
+
| `path` | The path to manage metadata. |
|
|
589
|
+
|
|
590
|
+
#### Options
|
|
591
|
+
|
|
592
|
+
| Option | Description |
|
|
593
|
+
| --- | --- |
|
|
594
|
+
| `--import` | Imports from local storage. |
|
|
595
|
+
| `--export` | Exports to local storage. |
|
|
596
|
+
| `--crons` | Apply to cron data collection |
|
|
597
|
+
| `--instances` | Apply to instance data collection |
|
|
598
|
+
| `--generate` | Generate cluster metadata |
|
|
599
|
+
| `--itc` | Apply under container execution context |
|
|
600
|
+
| `--dev` | Sets the development cli context |
|
|
601
|
+
| `-h, --help` | display help for command |
|
|
602
|
+
|
|
603
|
+
### `underpost cron`
|
|
604
|
+
|
|
605
|
+
Manages cron jobs: execute jobs directly or generate and apply K8s CronJob manifests.
|
|
606
|
+
|
|
607
|
+
**Usage:** `underpost cron [options] [deploy-list] [job-list]`
|
|
608
|
+
|
|
609
|
+
#### Arguments
|
|
610
|
+
|
|
611
|
+
| Argument | Description |
|
|
612
|
+
| --- | --- |
|
|
613
|
+
| `deploy-list` | A comma-separated list of deployment IDs (e.g., "default-a,default-b"). |
|
|
614
|
+
| `job-list` | A comma-separated list of job IDs. Options: dns,backup. Defaults to all available jobs. |
|
|
615
|
+
|
|
616
|
+
#### Options
|
|
617
|
+
|
|
618
|
+
| Option | Description |
|
|
619
|
+
| --- | --- |
|
|
620
|
+
| `--generate-k8s-cronjobs` | Generates Kubernetes CronJob YAML manifests from cron configuration. |
|
|
621
|
+
| `--apply` | Applies generated K8s CronJob manifests to the cluster via kubectl. |
|
|
622
|
+
| `--setup-start [deploy-id]` | Updates deploy-id package.json start script and generates+applies its K8s CronJob manifests. |
|
|
623
|
+
| `--namespace <namespace>` | Kubernetes namespace for the CronJob resources (default: "default"). |
|
|
624
|
+
| `--image <image>` | Custom container image for the CronJob pods. |
|
|
625
|
+
| `--git` | Pass --git flag to cron job execution. |
|
|
626
|
+
| `--cmd <cmd>` | Optional pre-script commands to run before cron execution. |
|
|
627
|
+
| `--dev` | Use local ./ base path instead of global underpost installation. |
|
|
628
|
+
| `--k3s` | Use k3s cluster context (apply directly on host). |
|
|
629
|
+
| `--kind` | Use kind cluster context (apply via kind-worker container). |
|
|
630
|
+
| `--kubeadm` | Use kubeadm cluster context (apply directly on host). |
|
|
631
|
+
| `--dry-run` | Preview cron jobs without executing them. |
|
|
632
|
+
| `--create-job-now` | After applying manifests, immediately create a Job from each CronJob (requires --apply). |
|
|
633
|
+
| `-h, --help` | display help for command |
|
|
634
|
+
|
|
635
|
+
### `underpost fs`
|
|
784
636
|
|
|
785
637
|
Manages file storage, defaulting to file upload operations.
|
|
786
638
|
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
639
|
+
**Usage:** `underpost fs [options] [path]`
|
|
640
|
+
|
|
641
|
+
#### Arguments
|
|
642
|
+
|
|
643
|
+
| Argument | Description |
|
|
644
|
+
| --- | --- |
|
|
645
|
+
| `path` | The absolute or relative directory path for file operations. |
|
|
646
|
+
|
|
647
|
+
#### Options
|
|
648
|
+
|
|
649
|
+
| Option | Description |
|
|
650
|
+
| --- | --- |
|
|
651
|
+
| `--rm` | Removes the specified file. |
|
|
652
|
+
| `--git` | Displays current Git changes related to file storage. |
|
|
653
|
+
| `--recursive` | Uploads files recursively from the specified path. |
|
|
654
|
+
| `--deploy-id <deploy-id>` | Specifies the deployment configuration ID for file operations. |
|
|
655
|
+
| `--pull` | Downloads the specified file. |
|
|
656
|
+
| `--omit-unzip` | With --pull, keeps the downloaded .zip file and skips extraction. |
|
|
657
|
+
| `--force` | Forces the action, overriding any warnings or conflicts. |
|
|
658
|
+
| `--storage-file-path <storage-file-path>` | Specifies a custom file storage path. |
|
|
659
|
+
| `-h, --help` | display help for command |
|
|
660
|
+
|
|
661
|
+
### `underpost test`
|
|
807
662
|
|
|
808
663
|
Manages and runs tests, defaulting to the current Underpost default test suite.
|
|
809
664
|
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
### `monitor`
|
|
831
|
-
```
|
|
832
|
-
Usage: underpost monitor [options] <deploy-id> [env]
|
|
665
|
+
**Usage:** `underpost test [options] [deploy-list]`
|
|
666
|
+
|
|
667
|
+
#### Arguments
|
|
668
|
+
|
|
669
|
+
| Argument | Description |
|
|
670
|
+
| --- | --- |
|
|
671
|
+
| `deploy-list` | A comma-separated list of deployment IDs (e.g., "default-a,default-b"). |
|
|
672
|
+
|
|
673
|
+
#### Options
|
|
674
|
+
|
|
675
|
+
| Option | Description |
|
|
676
|
+
| --- | --- |
|
|
677
|
+
| `--itc` | Executes tests within the container execution context. |
|
|
678
|
+
| `--sh` | Copies the container entrypoint shell command to the clipboard. |
|
|
679
|
+
| `--logs` | Displays container logs for test debugging. |
|
|
680
|
+
| `--pod-name <pod-name>` | Optional: Specifies the pod name for test execution. |
|
|
681
|
+
| `--pod-status <pod-status>` | Optional: Filters tests by pod status. |
|
|
682
|
+
| `--kind-type <kind-type>` | Optional: Specifies the Kind cluster type for tests. |
|
|
683
|
+
| `-h, --help` | display help for command |
|
|
684
|
+
|
|
685
|
+
### `underpost monitor`
|
|
833
686
|
|
|
834
687
|
Manages health server monitoring for specified deployments.
|
|
835
688
|
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
--start Starts an SSH session with the specified credentials.
|
|
901
|
-
--reset Resets ssh configuration and deletes all stored
|
|
902
|
-
credentials.
|
|
903
|
-
--keys-list Lists all ssh keys from current private keys file
|
|
904
|
-
storage.
|
|
905
|
-
--hosts-list Lists all ssh hosts from current private keys file
|
|
906
|
-
storage.
|
|
907
|
-
--disable-password Disables password authentication for the SSH session.
|
|
908
|
-
--key-test Tests the SSH key using ssh-keygen.
|
|
909
|
-
--stop Stops the SSH service.
|
|
910
|
-
--status Checks the status of the SSH service.
|
|
911
|
-
--connect-uri Displays the connection URI.
|
|
912
|
-
--copy Copies the connection URI to clipboard.
|
|
913
|
-
-h, --help display help for command
|
|
914
|
-
|
|
915
|
-
```
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
### `run` :
|
|
919
|
-
```
|
|
920
|
-
Usage: underpost run [options] <runner-id> [path]
|
|
689
|
+
**Usage:** `underpost monitor [options] <deploy-id> [env]`
|
|
690
|
+
|
|
691
|
+
#### Arguments
|
|
692
|
+
|
|
693
|
+
| Argument | Description |
|
|
694
|
+
| --- | --- |
|
|
695
|
+
| `deploy-id` | The deployment configuration ID to monitor. |
|
|
696
|
+
| `env` | Optional: The environment to monitor (e.g., "development", "production"). Defaults to "development". |
|
|
697
|
+
|
|
698
|
+
#### Options
|
|
699
|
+
|
|
700
|
+
| Option | Description |
|
|
701
|
+
| --- | --- |
|
|
702
|
+
| `--ms-interval <ms-interval>` | Sets a custom millisecond interval for monitoring checks. |
|
|
703
|
+
| `--now` | Executes the monitor script immediately. |
|
|
704
|
+
| `--single` | Disables recurrence, running the monitor script only once. |
|
|
705
|
+
| `--replicas <replicas>` | Sets a custom number of replicas for monitoring. Defaults to 1. |
|
|
706
|
+
| `--type <type>` | Sets a custom monitor type. |
|
|
707
|
+
| `--sync` | Synchronizes with current proxy deployments and traffic configurations. |
|
|
708
|
+
| `--namespace <namespace>` | Sets the Kubernetes namespace for the deployment. Defaults to "default". |
|
|
709
|
+
| `--timeout-response <duration>` | Sets HTTPProxy per-route response timeout (e.g., "5s"). |
|
|
710
|
+
| `--timeout-idle <duration>` | Sets HTTPProxy per-route idle timeout (e.g., "10s", "infinity"). |
|
|
711
|
+
| `--retry-count <count>` | Sets HTTPProxy per-route retry count (e.g., 3). |
|
|
712
|
+
| `--retry-per-try-timeout <duration>` | Sets HTTPProxy retry per-try timeout (e.g., "150ms"). |
|
|
713
|
+
| `--disable-private-conf-update` | Disables updates to private configuration during execution. |
|
|
714
|
+
| `--versions <deployment-versions>` | Specifies the deployment versions to monitor. eg. "blue,green", "green" |
|
|
715
|
+
| `--ready-deployment` | Run in ready deployment monitor mode. |
|
|
716
|
+
| `--promote` | Promotes the deployment after monitoring. |
|
|
717
|
+
| `-h, --help` | display help for command |
|
|
718
|
+
|
|
719
|
+
### `underpost ssh`
|
|
720
|
+
|
|
721
|
+
Manages SSH credentials and sessions for remote access to cluster nodes or services.
|
|
722
|
+
|
|
723
|
+
**Usage:** `underpost ssh [options]`
|
|
724
|
+
|
|
725
|
+
#### Options
|
|
726
|
+
|
|
727
|
+
| Option | Description |
|
|
728
|
+
| --- | --- |
|
|
729
|
+
| `--deploy-id <deploy-id>` | Sets deploy id context for ssh operations. |
|
|
730
|
+
| `--generate` | Generates new ssh credential and stores it in current private keys file storage. |
|
|
731
|
+
| `--user <user>` | Sets custom ssh user |
|
|
732
|
+
| `--password <password>` | Sets custom ssh password |
|
|
733
|
+
| `--host <host>` | Sets custom ssh host |
|
|
734
|
+
| `--port <port>` | Sets custom ssh port |
|
|
735
|
+
| `--filter <filter>` | Filters ssh user credentials from current private keys file storage. |
|
|
736
|
+
| `--groups <groups>` | Sets comma-separated ssh user groups for the ssh user credential. |
|
|
737
|
+
| `--user-add` | Adds a new ssh user credential to current private keys file storage. |
|
|
738
|
+
| `--user-remove` | Removes an existing ssh user credential from current private keys file storage. |
|
|
739
|
+
| `--user-ls` | Lists all ssh user credentials from current private keys file storage. |
|
|
740
|
+
| `--start` | Starts an SSH session with the specified credentials. |
|
|
741
|
+
| `--reset` | Resets ssh configuration and deletes all stored credentials. |
|
|
742
|
+
| `--keys-list` | Lists all ssh keys from current private keys file storage. |
|
|
743
|
+
| `--hosts-list` | Lists all ssh hosts from current private keys file storage. |
|
|
744
|
+
| `--disable-password` | Disables password authentication for the SSH session. |
|
|
745
|
+
| `--key-test` | Tests the SSH key using ssh-keygen. |
|
|
746
|
+
| `--stop` | Stops the SSH service. |
|
|
747
|
+
| `--status` | Checks the status of the SSH service. |
|
|
748
|
+
| `--connect-uri` | Displays the connection URI. |
|
|
749
|
+
| `--copy` | Copies the connection URI to clipboard. |
|
|
750
|
+
| `-h, --help` | display help for command |
|
|
751
|
+
|
|
752
|
+
### `underpost run`
|
|
921
753
|
|
|
922
754
|
Runs specified scripts using various runners.
|
|
923
755
|
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
756
|
+
**Usage:** `underpost run [options] <runner-id> [path]`
|
|
757
|
+
|
|
758
|
+
#### Arguments
|
|
759
|
+
|
|
760
|
+
| Argument | Description |
|
|
761
|
+
| --- | --- |
|
|
762
|
+
| `runner-id` | The runner ID to run. Options: dev-cluster,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,etc-hosts,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,monitor-ui,shared-dir. |
|
|
763
|
+
| `path` | The input value, identifier, or path for the operation. |
|
|
764
|
+
|
|
765
|
+
#### Options
|
|
766
|
+
|
|
767
|
+
| Option | Description |
|
|
768
|
+
| --- | --- |
|
|
769
|
+
| `--cmd <command-list>` | Comma-separated list of commands to execute. |
|
|
770
|
+
| `--args <args-array>` | Array of arguments to pass to the command. |
|
|
771
|
+
| `--dev` | Sets the development context environment for the script. |
|
|
772
|
+
| `--build` | Set builder context runner |
|
|
773
|
+
| `--replicas <replicas>` | Sets a custom number of replicas for deployment. |
|
|
774
|
+
| `--pod-name <pod-name>` | Optional: Specifies the pod name for execution. |
|
|
775
|
+
| `--node-name <node-name>` | Optional: Specifies the node name for execution. |
|
|
776
|
+
| `--port <port>` | Optional: Specifies the port for execution. |
|
|
777
|
+
| `--etc-hosts` | Enables etc-hosts context for the runner execution. |
|
|
778
|
+
| `--volume-host-path <volume-host-path>` | Optional: Specifies the volume host path for test execution. |
|
|
779
|
+
| `--volume-mount-path <volume-mount-path>` | Optional: Specifies the volume mount path for test execution. |
|
|
780
|
+
| `--volume-type <volume-type>` | Optional: Specifies the volume type for test execution. |
|
|
781
|
+
| `--image-name <image-name>` | Optional: Specifies the image name for test execution. |
|
|
782
|
+
| `--container-name <container-name>` | Optional: Specifies the container name for test execution. |
|
|
783
|
+
| `--namespace <namespace>` | Optional: Specifies the namespace for test execution. |
|
|
784
|
+
| `--tty` | Enables TTY for the container in deploy-job. |
|
|
785
|
+
| `--stdin` | Keeps STDIN open for the container in deploy-job. |
|
|
786
|
+
| `--restart-policy <policy>` | Sets the restart policy for the job in deploy-job. |
|
|
787
|
+
| `--runtime-class-name <name>` | Sets the runtime class name for the job in deploy-job. |
|
|
788
|
+
| `--image-pull-policy <policy>` | Sets the image pull policy for the job in deploy-job. |
|
|
789
|
+
| `--api-version <version>` | Sets the API version for the job manifest in deploy-job. |
|
|
790
|
+
| `--labels <labels>` | Optional: Specifies a comma-separated list of key-value pairs for labels (e.g., "app=my-app,env=prod"). |
|
|
791
|
+
| `--claim-name <name>` | Optional: Specifies the claim name for volume mounting in deploy-job. |
|
|
792
|
+
| `--kind-type <kind-type>` | Specifies the kind of Kubernetes resource (e.g., Job, Deployment) for deploy-job. |
|
|
793
|
+
| `--force` | Forces operation, overriding any warnings or conflicts. |
|
|
794
|
+
| `--tls` | Enables TLS for the runner execution. |
|
|
795
|
+
| `--reset` | Resets the runner state before execution. |
|
|
796
|
+
| `--dev-proxy-port-offset <port-offset>` | Sets a custom port offset for development proxy. |
|
|
797
|
+
| `--host-network` | Enables host network mode for the runner execution. |
|
|
798
|
+
| `--requests-memory <requests-memory>` | Requests memory limit for the runner execution. |
|
|
799
|
+
| `--requests-cpu <requests-cpu>` | Requests CPU limit for the runner execution. |
|
|
800
|
+
| `--limits-memory <limits-memory>` | Sets memory limit for the runner execution. |
|
|
801
|
+
| `--limits-cpu <limits-cpu>` | Sets CPU limit for the runner execution. |
|
|
802
|
+
| `--resource-template-id <resource-template-id >` | Specifies a resource template ID for the runner execution. |
|
|
803
|
+
| `--expose` | Enables service exposure for the runner execution. |
|
|
804
|
+
| `--conf-server-path <conf-server-path>` | Sets a custom configuration server path. |
|
|
805
|
+
| `--underpost-root <underpost-root>` | Sets a custom Underpost root path. |
|
|
806
|
+
| `--cmd-cron-jobs <cmd-cron-jobs>` | Pre-script commands to run before cron job execution. |
|
|
807
|
+
| `--deploy-id-cron-jobs <deploy-id-cron-jobs>` | Specifies deployment IDs to synchronize cron jobs with during execution. |
|
|
808
|
+
| `--timezone <timezone>` | Sets the timezone for the runner execution. |
|
|
809
|
+
| `--kubeadm` | Sets the kubeadm cluster context for the runner execution. |
|
|
810
|
+
| `--k3s` | Sets the k3s cluster context for the runner execution. |
|
|
811
|
+
| `--kind` | Sets the kind cluster context for the runner execution. |
|
|
812
|
+
| `--git-clean` | Runs git clean on volume mount paths before copying. |
|
|
813
|
+
| `--deploy-id <deploy-id>` | Sets deploy id context for the runner execution. |
|
|
814
|
+
| `--user <user>` | Sets user context for the runner execution. |
|
|
815
|
+
| `--hosts <hosts>` | Comma-separated list of hosts for the runner execution. |
|
|
816
|
+
| `--instance-id <instance-id>` | Sets instance id context for the runner execution. |
|
|
817
|
+
| `--pid <process-id>` | Sets process id context for the runner execution. |
|
|
818
|
+
| `--timeout-response <duration>` | Sets HTTPProxy per-route response timeout (e.g., "1s", "300ms", "infinity"). |
|
|
819
|
+
| `--timeout-idle <duration>` | Sets HTTPProxy per-route idle timeout (e.g., "10s", "infinity"). |
|
|
820
|
+
| `--retry-count <count>` | Sets HTTPProxy per-route retry count (e.g., 3). |
|
|
821
|
+
| `--retry-per-try-timeout <duration>` | Sets HTTPProxy retry per-try timeout (e.g., "150ms"). |
|
|
822
|
+
| `--disable-private-conf-update` | Disables updates to private configuration during execution. |
|
|
823
|
+
| `--logs` | Streams logs during the runner execution. |
|
|
824
|
+
| `--monitor-status <status>` | Sets the status to monitor for pod/resource (default: "Running"). |
|
|
825
|
+
| `--monitor-status-kind-type <kind-type>` | Sets the Kubernetes resource kind type to monitor (default: "pods"). |
|
|
826
|
+
| `--monitor-status-delta-ms <milliseconds>` | Sets the polling interval in milliseconds for status monitoring (default: 1000). |
|
|
827
|
+
| `--monitor-status-max-attempts <attempts>` | Sets the maximum number of status check attempts (default: 600). |
|
|
828
|
+
| `--dry-run` | Preview operations without executing them. |
|
|
829
|
+
| `--from-n-commit <n>` | Number of commits back to use for message propagation in template-deploy (default: 1, last commit only). |
|
|
830
|
+
| `--create-job-now` | After applying cron manifests, immediately create a Job from each CronJob (forwarded to cron runner). |
|
|
831
|
+
| `--host-aliases <host-aliases>` | Adds entries to the Pod /etc/hosts via hostAliases. Format: semicolon-separated entries of "ip=hostname1,hostname2" (e.g., "127.0.0.1=foo.local,bar.local;10.1.2.3=foo.remote,bar.remote"). |
|
|
832
|
+
| `--copy` | Copies the runner output to the clipboard (supported by: generate-pass, template-deploy-local). |
|
|
833
|
+
| `--skip-full-build` | Skip client bundle rebuild; triggers pull-bundle in container startup (supported by: sync, template-deploy). |
|
|
834
|
+
| `--pull-bundle` | Explicitly download the pre-built client bundle from Cloudinary inside the container (supported by: sync, template-deploy). Use together with --skip-full-build. |
|
|
835
|
+
| `--remove` | Remove/teardown resources |
|
|
836
|
+
| `-h, --help` | display help for command |
|
|
837
|
+
|
|
838
|
+
### `underpost lxd`
|
|
1004
839
|
|
|
1005
840
|
Manages LXD virtual machines as K3s nodes (control plane or workers).
|
|
1006
841
|
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
--commission Init workflow for commissioning a physical machine.
|
|
1130
|
-
--bootstrap-http-server-run Runs a temporary bootstrap HTTP server for generic purposes such as serving iPXE scripts or ISO images during commissioning.
|
|
1131
|
-
--bootstrap-http-server-path <path> Sets a custom bootstrap HTTP server path for baremetal commissioning.
|
|
1132
|
-
--bootstrap-http-server-port <port> Sets a custom bootstrap HTTP server port for baremetal commissioning.
|
|
1133
|
-
--iso-url <url> Uses a custom ISO URL for baremetal machine commissioning.
|
|
1134
|
-
--nfs-build Builds an NFS root filesystem for a workflow id config architecture using QEMU emulation.
|
|
1135
|
-
--nfs-mount Mounts the NFS root filesystem for a workflow id config architecture.
|
|
1136
|
-
--nfs-reset Resets the NFS server completely, closing all connections before reloading exports.
|
|
1137
|
-
--nfs-unmount Unmounts the NFS root filesystem for a workflow id config architecture.
|
|
1138
|
-
--nfs-build-server Builds the NFS server for a workflow id config architecture.
|
|
1139
|
-
--nfs-sh Copies QEMU emulation root entrypoint shell command to the clipboard.
|
|
1140
|
-
--cloud-init Sets the kernel parameters and sets the necessary seed users on the HTTP server.
|
|
1141
|
-
--cloud-init-update Updates cloud init for a workflow id config architecture.
|
|
1142
|
-
--ubuntu-tools-build Builds ubuntu tools for chroot environment.
|
|
1143
|
-
--ubuntu-tools-test Tests ubuntu tools in chroot environment.
|
|
1144
|
-
--rocky-tools-build Builds rocky linux tools for chroot environment.
|
|
1145
|
-
--rocky-tools-test Tests rocky linux tools in chroot environment.
|
|
1146
|
-
--bootcmd <bootcmd-list> Comma-separated list of boot commands to execute.
|
|
1147
|
-
--runcmd <runcmd-list> Comma-separated list of run commands to execute.
|
|
1148
|
-
--logs <log-id> Displays logs for log id: dhcp,dhcp-lease,dhcp-lan,cloud-init,cloud-init-machine,cloud-init-config
|
|
1149
|
-
--dev Sets the development context environment for baremetal operations.
|
|
1150
|
-
--ls Lists available boot resources and machines.
|
|
1151
|
-
-h, --help display help for command
|
|
1152
|
-
|
|
1153
|
-
```
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
### `release` :
|
|
1157
|
-
```
|
|
1158
|
-
Usage: underpost release [options] [version]
|
|
1159
|
-
|
|
1160
|
-
Release orchestrator for building new versions and deploying releases of the
|
|
1161
|
-
Underpost CLI.
|
|
1162
|
-
|
|
1163
|
-
Arguments:
|
|
1164
|
-
version The new version string to set (e.g., "3.1.4"). Defaults
|
|
1165
|
-
to current version.
|
|
1166
|
-
|
|
1167
|
-
Options:
|
|
1168
|
-
--build Builds a new version: tests template, bumps versions,
|
|
1169
|
-
rebuilds manifests and configs.
|
|
1170
|
-
--deploy Deploys the release: syncs secrets, commits, and pushes
|
|
1171
|
-
to remote repositories.
|
|
1172
|
-
--ci-push <deploy-id> Local equivalent of engine-*.ci.yml: builds
|
|
1173
|
-
dd-{deploy-id} and pushes to the engine-{deploy-id}
|
|
1174
|
-
repository. Accepts the suffix (e.g., "cyberia"),
|
|
1175
|
-
"dd-cyberia", or "engine-cyberia".
|
|
1176
|
-
--message <message> Commit message for --ci-push or --pwa-build (defaults
|
|
1177
|
-
to last commit of the engine repository).
|
|
1178
|
-
--pwa-build Runs the pwa-microservices-template update flow: always
|
|
1179
|
-
re-clones, syncs engine sources, installs, builds, and
|
|
1180
|
-
pushes.
|
|
1181
|
-
--dry-run For --build: previews version-bump changes (per-file
|
|
1182
|
-
substitution counts) without writing files or running
|
|
1183
|
-
downstream commands.
|
|
1184
|
-
-h, --help display help for command
|
|
1185
|
-
|
|
1186
|
-
```
|
|
1187
|
-
|
|
842
|
+
**Usage:** `underpost lxd [options] [vm-id]`
|
|
843
|
+
|
|
844
|
+
#### Arguments
|
|
845
|
+
|
|
846
|
+
| Argument | Description |
|
|
847
|
+
| --- | --- |
|
|
848
|
+
| `vm-id` | VM identifier shared by current-VM flags like --vm-create, --vm-delete, --vm-init, --vm-info, and --vm-test. |
|
|
849
|
+
|
|
850
|
+
#### Options
|
|
851
|
+
|
|
852
|
+
| Option | Description |
|
|
853
|
+
| --- | --- |
|
|
854
|
+
| `--init` | Initializes LXD on the current machine via preseed. |
|
|
855
|
+
| `--reset` | Host-safe reset: removes proxy devices, stops/deletes VMs, drops admin-profile and lxdbr0. Does NOT touch the LXD snap or storage pools. |
|
|
856
|
+
| `--purge` | DESTRUCTIVE: gracefully shuts down the LXD daemon (60s timeout), then removes the LXD snap. Combine with --reset to wipe per-VM state first. Safe replacement for the prior aggressive teardown. |
|
|
857
|
+
| `--shutdown` | Pre-host-reboot procedure: gracefully stops every VM and the LXD daemon. Run BEFORE any reboot/poweroff to keep the host bootable. |
|
|
858
|
+
| `--restore` | Symmetric to --shutdown: starts the LXD daemon, waits for it to be responsive, then starts every VM. VMs created via admin-profile have boot.autostart=false, so this is the explicit "bring the lab back up" command. |
|
|
859
|
+
| `--install` | Installs the LXD snap. |
|
|
860
|
+
| `--dev` | Use local paths instead of the global npm installation. |
|
|
861
|
+
| `--create-virtual-network` | Creates the lxdbr0 bridge network. |
|
|
862
|
+
| `--ipv4-address <cidr>` | IPv4 address/CIDR for the lxdbr0 bridge network (default: "10.250.250.1/24"). |
|
|
863
|
+
| `--create-admin-profile` | Creates the admin-profile for VM management. |
|
|
864
|
+
| `--control` | Initialize the target VM as a K3s control plane node. |
|
|
865
|
+
| `--worker` | Initialize the target VM as a K3s worker node. |
|
|
866
|
+
| `--vm-create` | Copy the LXC launch command for the command argument [vm-id] to the clipboard. |
|
|
867
|
+
| `--vm-delete` | SAFELY stop and delete the command argument [vm-id] (removes proxy devices first, then stops, then deletes). Safe to re-run. |
|
|
868
|
+
| `--vm-init` | Bring the command argument [vm-id] up as a K3s node end-to-end: OS base setup, mirror /home/dd/engine into the VM, then K3s role install via the local engine (use with --control or --worker). |
|
|
869
|
+
| `--vm-info` | Display full configuration and status for the command argument [vm-id]. |
|
|
870
|
+
| `--vm-test` | Run connectivity and health checks on the command argument [vm-id]. |
|
|
871
|
+
| `--vm-sync-engine` | Re-copy the host engine source into the command argument [vm-id], overriding whatever is currently there (equivalent to the engine-bootstrap step of --vm-init in isolation). |
|
|
872
|
+
| `--root-size <gb-size>` | Root disk size in GiB for --vm-create (default: 32). |
|
|
873
|
+
| `--join-node <nodes>` | Join a K3s worker to a control plane. Standalone format: "workerName,controlName". When used with --vm-init --worker, provide just the control node name for auto-join. |
|
|
874
|
+
| `--expose <vm-name:ports>` | Proxy host ports to a VM (e.g., "k3s-control:80,443"). |
|
|
875
|
+
| `--node-port <port>` | Customizes the VM-side (connect) port for --expose, so the host listens on the given port but proxies to this NodePort inside the VM (e.g. expose host 27017 -> VM NodePort 32017). |
|
|
876
|
+
| `--delete-expose <vm-name:ports>` | Remove proxied ports from a VM (e.g., "k3s-control:80,443"). |
|
|
877
|
+
| `--copy` | For two-phase flows that surface a command for the user to execute (e.g. --create-admin-profile phase 1), copy the command to the clipboard instead of printing it to the terminal. |
|
|
878
|
+
| `--namespace <namespace>` | Kubernetes namespace context (defaults to "default"). |
|
|
879
|
+
| `--maas-project <project>` | LXD project managed by MAAS (e.g. "k3s-cluster"). When set, all lxc commands target this project so MAAS enumerates the VMs in its machines UI. |
|
|
880
|
+
| `--move-to-project` | Stop the [vm-id] VM in the default project, move it to --maas-project, then start it so MAAS picks it up. Requires --maas-project. |
|
|
881
|
+
| `-h, --help` | display help for command |
|
|
882
|
+
|
|
883
|
+
### `underpost baremetal`
|
|
884
|
+
|
|
885
|
+
Manages baremetal server operations, including installation, database setup, commissioning, and user management.
|
|
886
|
+
|
|
887
|
+
**Usage:** `underpost baremetal [options] [workflow-id]`
|
|
888
|
+
|
|
889
|
+
#### Options
|
|
890
|
+
|
|
891
|
+
| Option | Description |
|
|
892
|
+
| --- | --- |
|
|
893
|
+
| `--ip-address <ip-address>` | The IP address of the control server or the local machine. |
|
|
894
|
+
| `--hostname <hostname>` | The hostname of the target baremetal machine. |
|
|
895
|
+
| `--ip-file-server <ip-file-server>` | The IP address of the file server (NFS/TFTP). |
|
|
896
|
+
| `--ip-config <ip-config>` | IP configuration string for the baremetal machine. |
|
|
897
|
+
| `--netmask <netmask>` | Netmask of network. |
|
|
898
|
+
| `--dns-server <dns-server>` | DNS server IP address. |
|
|
899
|
+
| `--control-server-install` | Installs the baremetal control server. |
|
|
900
|
+
| `--control-server-uninstall` | Uninstalls the baremetal control server. |
|
|
901
|
+
| `--control-server-restart` | Restarts the baremetal control server. |
|
|
902
|
+
| `--control-server-db-install` | Installs up the database for the baremetal control server. |
|
|
903
|
+
| `--control-server-db-uninstall` | Uninstalls the database for the baremetal control server. |
|
|
904
|
+
| `--create-machine` | Creates a new baremetal machine entry in the database. |
|
|
905
|
+
| `--mac <mac>` | Specifies the MAC address for baremetal machine operations. Use "random" for random MAC, "hardware" to use device's actual MAC (no spoofing), or specify a MAC address. |
|
|
906
|
+
| `--ipxe` | Chainloads iPXE to normalize identity before commissioning. |
|
|
907
|
+
| `--ipxe-rebuild` | Forces rebuild of iPXE binary with embedded boot script. |
|
|
908
|
+
| `--ipxe-build-iso <iso-path>` | Builds a standalone iPXE ISO with embedded script for the specified workflow ID. |
|
|
909
|
+
| `--install-packer` | Installs Packer CLI. |
|
|
910
|
+
| `--packer-maas-image-template <template-path>` | Creates a new image folder from canonical/packer-maas template path (requires workflow-id). |
|
|
911
|
+
| `--packer-workflow-id <workflow-id>` | Specifies the workflow ID for Packer MAAS image operations. |
|
|
912
|
+
| `--packer-maas-image-build` | Builds a MAAS image using Packer for the workflow specified by --packer-workflow-id. |
|
|
913
|
+
| `--packer-maas-image-upload` | Uploads an existing MAAS image artifact without rebuilding for the workflow specified by --packer-workflow-id. |
|
|
914
|
+
| `--packer-maas-image-cached` | Continue last build without removing artifacts (used with --packer-maas-image-build). |
|
|
915
|
+
| `--remove-machines <system-ids>` | Removes baremetal machines by comma-separated system IDs, or use "all" |
|
|
916
|
+
| `--clear-discovered` | Clears all discovered baremetal machines from the database. |
|
|
917
|
+
| `--commission` | Init workflow for commissioning a physical machine. |
|
|
918
|
+
| `--bootstrap-http-server-run` | Runs a temporary bootstrap HTTP server for generic purposes such as serving iPXE scripts or ISO images during commissioning. |
|
|
919
|
+
| `--bootstrap-http-server-path <path>` | Sets a custom bootstrap HTTP server path for baremetal commissioning. |
|
|
920
|
+
| `--bootstrap-http-server-port <port>` | Sets a custom bootstrap HTTP server port for baremetal commissioning. |
|
|
921
|
+
| `--iso-url <url>` | Uses a custom ISO URL for baremetal machine commissioning. |
|
|
922
|
+
| `--nfs-build` | Builds an NFS root filesystem for a workflow id config architecture using QEMU emulation. |
|
|
923
|
+
| `--nfs-mount` | Mounts the NFS root filesystem for a workflow id config architecture. |
|
|
924
|
+
| `--nfs-reset` | Resets the NFS server completely, closing all connections before reloading exports. |
|
|
925
|
+
| `--nfs-unmount` | Unmounts the NFS root filesystem for a workflow id config architecture. |
|
|
926
|
+
| `--nfs-build-server` | Builds the NFS server for a workflow id config architecture. |
|
|
927
|
+
| `--nfs-sh` | Copies QEMU emulation root entrypoint shell command to the clipboard. |
|
|
928
|
+
| `--cloud-init` | Sets the kernel parameters and sets the necessary seed users on the HTTP server. |
|
|
929
|
+
| `--cloud-init-update` | Updates cloud init for a workflow id config architecture. |
|
|
930
|
+
| `--ubuntu-tools-build` | Builds ubuntu tools for chroot environment. |
|
|
931
|
+
| `--ubuntu-tools-test` | Tests ubuntu tools in chroot environment. |
|
|
932
|
+
| `--rocky-tools-build` | Builds rocky linux tools for chroot environment. |
|
|
933
|
+
| `--rocky-tools-test` | Tests rocky linux tools in chroot environment. |
|
|
934
|
+
| `--bootcmd <bootcmd-list>` | Comma-separated list of boot commands to execute. |
|
|
935
|
+
| `--runcmd <runcmd-list>` | Comma-separated list of run commands to execute. |
|
|
936
|
+
| `--logs <log-id>` | Displays logs for log id: dhcp,dhcp-lease,dhcp-lan,cloud-init,cloud-init-machine,cloud-init-config |
|
|
937
|
+
| `--dev` | Sets the development context environment for baremetal operations. |
|
|
938
|
+
| `--ls` | Lists available boot resources and machines. |
|
|
939
|
+
| `-h, --help` | display help for command |
|
|
940
|
+
|
|
941
|
+
### `underpost release`
|
|
942
|
+
|
|
943
|
+
Release orchestrator for building new versions and deploying releases of the Underpost CLI.
|
|
944
|
+
|
|
945
|
+
**Usage:** `underpost release [options] [version]`
|
|
946
|
+
|
|
947
|
+
#### Arguments
|
|
948
|
+
|
|
949
|
+
| Argument | Description |
|
|
950
|
+
| --- | --- |
|
|
951
|
+
| `version` | The new version string to set (e.g., "3.1.4"). Defaults to current version. |
|
|
952
|
+
|
|
953
|
+
#### Options
|
|
954
|
+
|
|
955
|
+
| Option | Description |
|
|
956
|
+
| --- | --- |
|
|
957
|
+
| `--build` | Builds a new version: tests template, bumps versions, rebuilds manifests and configs. |
|
|
958
|
+
| `--deploy` | Deploys the release: syncs secrets, commits, and pushes to remote repositories. |
|
|
959
|
+
| `--ci-push <deploy-id>` | Local equivalent of engine-*.ci.yml: builds dd-{deploy-id} and pushes to the engine-{deploy-id} repository. Accepts the suffix (e.g., "cyberia"), "dd-cyberia", or "engine-cyberia". |
|
|
960
|
+
| `--message <message>` | Commit message for --ci-push or --pwa-build (defaults to last commit of the engine repository). |
|
|
961
|
+
| `--pwa-build` | Runs the pwa-microservices-template update flow: always re-clones, syncs engine sources, installs, builds, and pushes. |
|
|
962
|
+
| `--dry-run` | For --build: previews version-bump changes (per-file substitution counts) without writing files or running downstream commands. |
|
|
963
|
+
| `-h, --help` | display help for command |
|