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:

FlagDescriptionDefault
--script <path>Python script to executeRequired (unless --experiment)
--experiment <id>Deploy a defined experimentNone
--pod <pod-id>Target pod IDNone (auto-creates if --gpu set)
--gpu <type>GPU type for auto-created pod: h100, h200, a100, cpuNone
--config <path>Config file to upload alongside the scriptNone
--data <path>Data directory to sync to the podNone
--timeout <duration>Max runtime (e.g., 4h, 30m)No limit
--env <KEY=VALUE>Environment variable (repeatable)None
--notifySend notification on completionfalse

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:

FlagDescriptionDefault
--allShow all deployments (not just active)false
--jsonOutput as JSONfalse

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:

FlagDescriptionDefault
--followStream log output in real timefalse
--tail <n>Show last N linesAll
--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
← Back to docs index