hubify deploy
Deploy experiments to GPU pods — launch scripts, monitor progress, and check deployment status.
Deploy experiments and scripts to GPU pods. This is the bridge between your local experiment definition and remote execution on high-end compute.
hubify deploy
Deploy an experiment to a GPU pod.
hubify deploy \
--script run_mcmc.py \
--pod pod-abc1234
hubify deploy \
--script run_mcmc.py \
--config planck_bao.yaml \
--data ./chains/ \
--pod pod-abc1234
hubify deploy \
--script run_anomaly_sweep.py \
--gpu h200 \
--timeout 4h
hubify deploy --experiment EXP-055 --pod pod-abc1234
Options:
| Flag | Description | Default |
|---|---|---|
--script <path> | Python script to execute | Required (unless --experiment) |
--experiment <id> | Deploy a defined experiment | None |
--pod <pod-id> | Target pod ID | None (auto-creates if --gpu set) |
--gpu <type> | GPU type for auto-created pod: h100, h200, a100, cpu | None |
--config <path> | Config file to upload alongside the script | None |
--data <path> | Data directory to sync to the pod | None |
--timeout <duration> | Max runtime (e.g., 4h, 30m) | No limit |
--env <KEY=VALUE> | Environment variable (repeatable) | None |
--notify | Send notification on completion | false |
When --gpu is provided without --pod, a new pod is created automatically. The pod is stopped (not terminated) when the experiment finishes if it was auto-created.
hubify deploy status
Check the status of a deployment.
hubify deploy status DEP-001
hubify deploy status --all
DEPLOY ID EXPERIMENT POD STATUS ELAPSED GPU UTIL
DEP-001 EXP-055 pod-abc1234 running 1h 32m 94%
DEP-002 EXP-056 pod-o76k3jf running 45m 87%
DEP-003 EXP-054 pod-def5678 complete 2h 15m --
Options:
| Flag | Description | Default |
|---|---|---|
--all | Show all deployments (not just active) | false |
--json | Output as JSON | false |
hubify deploy logs
View logs from a deployment.
hubify deploy logs DEP-001
hubify deploy logs DEP-001 --follow
hubify deploy logs DEP-001 --tail 100
[2026-04-14 10:42:01] Uploading run_mcmc.py to pod-abc1234...
[2026-04-14 10:42:03] Uploading planck_bao.yaml...
[2026-04-14 10:42:05] Starting execution...
[2026-04-14 10:42:06] Running: python run_mcmc.py --config planck_bao.yaml
[2026-04-14 10:45:12] Chain 1/6: 1,000/10,000 samples (R-hat: 1.45)
[2026-04-14 10:52:30] Chain 1/6: 5,000/10,000 samples (R-hat: 1.12)
[2026-04-14 11:01:44] Chain 1/6: 10,000/10,000 samples (R-hat: 1.03) CONVERGED
Options:
| Flag | Description | Default |
|---|---|---|
--follow | Stream log output in real time | false |
--tail <n> | Show last N lines | All |
--since <duration> | Show logs since duration (e.g., 1h) | All |
hubify deploy cancel
Cancel a running deployment.
hubify deploy cancel DEP-001
hubify deploy outputs
Download outputs from a completed deployment.
hubify deploy outputs DEP-003 --download ./results/
hubify deploy outputs DEP-003
FILE SIZE MODIFIED
chain_samples.txt 142 MB 2026-04-14 12:57:15
posterior_plot.png 1.2 MB 2026-04-14 12:57:14
qc_report.json 4 KB 2026-04-14 12:57:15
convergence_diag.png 890 KB 2026-04-14 12:57:14
Typical Workflow
# 1. Deploy an MCMC run to an H100
hubify deploy \
--script run_mcmc.py \
--config planck_bao.yaml \
--gpu h100 \
--timeout 4h \
--notify
# 2. Monitor progress
hubify deploy logs DEP-001 --follow
# 3. Check GPU utilization
hubify deploy status DEP-001
# 4. Download results when done
hubify deploy outputs DEP-001 --download ./results/
# 5. Clean up
hubify pod stop pod-abc1234