cave-cli 3.6.0b4__tar.gz → 3.7.0__tar.gz
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.
- {cave_cli-3.6.0b4/cave_cli.egg-info → cave_cli-3.7.0}/PKG-INFO +32 -2
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/README.md +31 -1
- cave_cli-3.7.0/cave_cli/cli.py +1158 -0
- cave_cli-3.7.0/cave_cli/commands/completion.py +27 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/create.py +6 -1
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/doctor.py +4 -1
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/kill.py +25 -0
- cave_cli-3.7.0/cave_cli/commands/list_cmd.py +69 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/list_versions.py +6 -2
- cave_cli-3.7.0/cave_cli/commands/logs.py +293 -0
- cave_cli-3.7.0/cave_cli/commands/prettify.py +48 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/purge.py +27 -5
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/reset.py +20 -1
- cave_cli-3.7.0/cave_cli/commands/run.py +929 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/sync_cmd.py +7 -2
- cave_cli-3.7.0/cave_cli/commands/task.py +894 -0
- cave_cli-3.7.0/cave_cli/commands/test.py +47 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/uninstall.py +3 -1
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/update.py +11 -3
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/upgrade.py +44 -26
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/version.py +7 -3
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/cache.py +3 -9
- cave_cli-3.7.0/cave_cli/utils/complete.py +381 -0
- cave_cli-3.7.0/cave_cli/utils/display.py +2198 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/docker.py +171 -15
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/env.py +1 -2
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/git.py +91 -0
- cave_cli-3.7.0/cave_cli/utils/lock.py +47 -0
- cave_cli-3.7.0/cave_cli/utils/log_parser.py +438 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/logger.py +37 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/sync.py +144 -14
- cave_cli-3.7.0/cave_cli/utils/task_queue.py +1337 -0
- cave_cli-3.7.0/cave_cli/utils/task_server.py +848 -0
- cave_cli-3.7.0/cave_cli/utils/test_server.py +77 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/validate.py +13 -3
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/version.py +8 -3
- {cave_cli-3.6.0b4 → cave_cli-3.7.0/cave_cli.egg-info}/PKG-INFO +32 -2
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli.egg-info/SOURCES.txt +19 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/pyproject.toml +1 -1
- cave_cli-3.7.0/test/test_complete.py +189 -0
- cave_cli-3.7.0/test/test_display.py +1211 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/test/test_env.py +6 -1
- cave_cli-3.7.0/test/test_lock.py +215 -0
- cave_cli-3.7.0/test/test_logs.py +389 -0
- cave_cli-3.7.0/test/test_prettify.py +67 -0
- cave_cli-3.7.0/test/test_purge.py +55 -0
- cave_cli-3.7.0/test/test_reset.py +52 -0
- cave_cli-3.7.0/test/test_run.py +517 -0
- cave_cli-3.7.0/test/test_sync.py +343 -0
- cave_cli-3.7.0/test/test_task_cmd.py +444 -0
- cave_cli-3.7.0/test/test_task_queue.py +279 -0
- cave_cli-3.7.0/test/test_test_server.py +323 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/test/test_upgrade.py +43 -3
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/test/test_validate.py +48 -12
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/utils/prettify.py +11 -11
- cave_cli-3.6.0b4/cave_cli/cli.py +0 -549
- cave_cli-3.6.0b4/cave_cli/commands/list_cmd.py +0 -48
- cave_cli-3.6.0b4/cave_cli/commands/prettify.py +0 -27
- cave_cli-3.6.0b4/cave_cli/commands/run.py +0 -394
- cave_cli-3.6.0b4/cave_cli/commands/test.py +0 -39
- cave_cli-3.6.0b4/cave_cli/utils/display.py +0 -1080
- cave_cli-3.6.0b4/test/test_display.py +0 -64
- cave_cli-3.6.0b4/test/test_sync.py +0 -116
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/LICENSE +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/NOTICE.md +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/__init__.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/__init__.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/commands/theme.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/__init__.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/constants.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/net.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli/utils/subprocess.py +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli.egg-info/dependency_links.txt +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli.egg-info/entry_points.txt +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli.egg-info/requires.txt +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/cave_cli.egg-info/top_level.txt +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/setup.cfg +0 -0
- {cave_cli-3.6.0b4 → cave_cli-3.7.0}/test/test_net.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cave_cli
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.7.0
|
|
4
4
|
Summary: CLI for creating and managing Docker-based CAVE web applications.
|
|
5
5
|
Author-email: MIT-CAVE <cave-contact@mit.edu>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -140,6 +140,7 @@ cave --help
|
|
|
140
140
|
| `cave sync --url <url>` | Merge files from another repository into the app |
|
|
141
141
|
| `cave test` | Run tests in `cave_api/tests/` |
|
|
142
142
|
| `cave prettify` | Format code with autoflake and black |
|
|
143
|
+
| `cave task` | Inspect, kill, and manage running tasks and task runner |
|
|
143
144
|
| `cave purge <path>` | Remove an app and all its Docker resources |
|
|
144
145
|
|
|
145
146
|
### Utility Commands
|
|
@@ -150,6 +151,7 @@ cave --help
|
|
|
150
151
|
| `cave kill` | Stop Docker containers for an app |
|
|
151
152
|
| `cave list-versions` | List available CAVE app versions |
|
|
152
153
|
| `cave theme <name>` | Set the CLI color theme (dark, light, solarized, monokai) |
|
|
154
|
+
| `cave completion` | Generate or install shell completion script for bash/zsh |
|
|
153
155
|
| `cave update` | Update the CAVE CLI itself |
|
|
154
156
|
| `cave uninstall` | Remove the CAVE CLI |
|
|
155
157
|
| `cave version` | Print version information |
|
|
@@ -166,10 +168,38 @@ cave --help
|
|
|
166
168
|
|
|
167
169
|
| Flag | Description |
|
|
168
170
|
|---|---|
|
|
169
|
-
| `--
|
|
171
|
+
| `-r`, `--raw` | Show raw container output instead of the TUI dashboard |
|
|
172
|
+
| `-d`, `--detached` | Run in detached background mode |
|
|
170
173
|
| `-it`, `--interactive` | Run in interactive mode (drops into a bash shell) |
|
|
171
174
|
| `ip:port` | Optional argument for LAN hosting (e.g. `192.168.1.1:8000`) |
|
|
172
175
|
|
|
176
|
+
### `cave test` & `cave prettify` Options
|
|
177
|
+
|
|
178
|
+
Both commands execute against a background persistent task runner queue, allowing tests and code formatting to run without stopping or interrupting a live application server.
|
|
179
|
+
|
|
180
|
+
| Option | Description |
|
|
181
|
+
|---|---|
|
|
182
|
+
| `-d`, `--detached` | Run task in detached background mode |
|
|
183
|
+
| `--docker-args ARGS` | Additional arguments to pass to Docker |
|
|
184
|
+
|
|
185
|
+
### `cave task` Options
|
|
186
|
+
|
|
187
|
+
Schedule, inspect, attach to, and cancel serialized background tasks and manage the task runner stack.
|
|
188
|
+
|
|
189
|
+
| Command / Option | Description |
|
|
190
|
+
|---|---|
|
|
191
|
+
| `cave task list` (or `-l`, `--list`) | List current active tasks (queued and running) |
|
|
192
|
+
| `cave task list-all` (or `-la`, `--list-all`) | List all tasks including completed, failed, and cancelled |
|
|
193
|
+
| `cave task start <file> [args...]` | Run arbitrary file or script (e.g. `utils/prettify.py`) sequentially in task container |
|
|
194
|
+
| `cave task <cmd...>` | Run arbitrary container command (e.g. `python manage.py makemigrations`) |
|
|
195
|
+
| `cave task attach [id]` (or `-a`, `--attach`) | Attach to a task to follow live logs (`Esc` to detach, `Ctrl+C` to cancel) |
|
|
196
|
+
| `cave task kill <id>` (or `-k <id>`, `--kill <id>`) | Cancel or terminate a specific task by its incremental ID |
|
|
197
|
+
| `cave task kill-all` (or `--kill-all`) | Cancel all queued and running tasks |
|
|
198
|
+
| `cave task reset` (or `--reset`) | Rebuild the task runner image and reinitialize its database |
|
|
199
|
+
| `cave task stop` (or `--stop`) | Stop task runner containers and purge finished tasks |
|
|
200
|
+
|
|
201
|
+
While attached or waiting in the task queue, pressing **Esc** detaches back to the terminal (leaving the task running in the background), and **Ctrl+C** cancels the task. When the task server stops or times out from inactivity, completed tasks are automatically cleaned up.
|
|
202
|
+
|
|
173
203
|
## Updating
|
|
174
204
|
|
|
175
205
|
```sh
|
|
@@ -114,6 +114,7 @@ cave --help
|
|
|
114
114
|
| `cave sync --url <url>` | Merge files from another repository into the app |
|
|
115
115
|
| `cave test` | Run tests in `cave_api/tests/` |
|
|
116
116
|
| `cave prettify` | Format code with autoflake and black |
|
|
117
|
+
| `cave task` | Inspect, kill, and manage running tasks and task runner |
|
|
117
118
|
| `cave purge <path>` | Remove an app and all its Docker resources |
|
|
118
119
|
|
|
119
120
|
### Utility Commands
|
|
@@ -124,6 +125,7 @@ cave --help
|
|
|
124
125
|
| `cave kill` | Stop Docker containers for an app |
|
|
125
126
|
| `cave list-versions` | List available CAVE app versions |
|
|
126
127
|
| `cave theme <name>` | Set the CLI color theme (dark, light, solarized, monokai) |
|
|
128
|
+
| `cave completion` | Generate or install shell completion script for bash/zsh |
|
|
127
129
|
| `cave update` | Update the CAVE CLI itself |
|
|
128
130
|
| `cave uninstall` | Remove the CAVE CLI |
|
|
129
131
|
| `cave version` | Print version information |
|
|
@@ -140,10 +142,38 @@ cave --help
|
|
|
140
142
|
|
|
141
143
|
| Flag | Description |
|
|
142
144
|
|---|---|
|
|
143
|
-
| `--
|
|
145
|
+
| `-r`, `--raw` | Show raw container output instead of the TUI dashboard |
|
|
146
|
+
| `-d`, `--detached` | Run in detached background mode |
|
|
144
147
|
| `-it`, `--interactive` | Run in interactive mode (drops into a bash shell) |
|
|
145
148
|
| `ip:port` | Optional argument for LAN hosting (e.g. `192.168.1.1:8000`) |
|
|
146
149
|
|
|
150
|
+
### `cave test` & `cave prettify` Options
|
|
151
|
+
|
|
152
|
+
Both commands execute against a background persistent task runner queue, allowing tests and code formatting to run without stopping or interrupting a live application server.
|
|
153
|
+
|
|
154
|
+
| Option | Description |
|
|
155
|
+
|---|---|
|
|
156
|
+
| `-d`, `--detached` | Run task in detached background mode |
|
|
157
|
+
| `--docker-args ARGS` | Additional arguments to pass to Docker |
|
|
158
|
+
|
|
159
|
+
### `cave task` Options
|
|
160
|
+
|
|
161
|
+
Schedule, inspect, attach to, and cancel serialized background tasks and manage the task runner stack.
|
|
162
|
+
|
|
163
|
+
| Command / Option | Description |
|
|
164
|
+
|---|---|
|
|
165
|
+
| `cave task list` (or `-l`, `--list`) | List current active tasks (queued and running) |
|
|
166
|
+
| `cave task list-all` (or `-la`, `--list-all`) | List all tasks including completed, failed, and cancelled |
|
|
167
|
+
| `cave task start <file> [args...]` | Run arbitrary file or script (e.g. `utils/prettify.py`) sequentially in task container |
|
|
168
|
+
| `cave task <cmd...>` | Run arbitrary container command (e.g. `python manage.py makemigrations`) |
|
|
169
|
+
| `cave task attach [id]` (or `-a`, `--attach`) | Attach to a task to follow live logs (`Esc` to detach, `Ctrl+C` to cancel) |
|
|
170
|
+
| `cave task kill <id>` (or `-k <id>`, `--kill <id>`) | Cancel or terminate a specific task by its incremental ID |
|
|
171
|
+
| `cave task kill-all` (or `--kill-all`) | Cancel all queued and running tasks |
|
|
172
|
+
| `cave task reset` (or `--reset`) | Rebuild the task runner image and reinitialize its database |
|
|
173
|
+
| `cave task stop` (or `--stop`) | Stop task runner containers and purge finished tasks |
|
|
174
|
+
|
|
175
|
+
While attached or waiting in the task queue, pressing **Esc** detaches back to the terminal (leaving the task running in the background), and **Ctrl+C** cancels the task. When the task server stops or times out from inactivity, completed tasks are automatically cleaned up.
|
|
176
|
+
|
|
147
177
|
## Updating
|
|
148
178
|
|
|
149
179
|
```sh
|