gpu-dev 0.7.14__tar.gz → 0.7.16__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.
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/PKG-INFO +5 -6
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/README.md +1 -1
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/README.md +4 -4
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/cli.py +11 -3
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/gpu_dev.egg-info/PKG-INFO +5 -6
- gpu_dev-0.7.16/gpu_dev.egg-info/SOURCES.txt +34 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/gpu_dev.egg-info/entry_points.txt +0 -1
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/gpu_dev.egg-info/requires.txt +0 -1
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/pyproject.toml +2 -4
- gpu_dev-0.7.14/.github/workflows/no-gitlinks.yml +0 -22
- gpu_dev-0.7.14/.github/workflows/publish.yml +0 -43
- gpu_dev-0.7.14/.github/workflows/tests.yml +0 -20
- gpu_dev-0.7.14/.gitignore +0 -86
- gpu_dev-0.7.14/CLAUDE.md +0 -496
- gpu_dev-0.7.14/admin/README.md +0 -50
- gpu_dev-0.7.14/admin/generate_stats.py +0 -1004
- gpu_dev-0.7.14/admin/requirements.txt +0 -5
- gpu_dev-0.7.14/cli-tools/gpu-dev-cli/ZERO_CONFIG_SETUP.md +0 -87
- gpu_dev-0.7.14/cli-tools/gpu-dev-cli/minimal-iam-policy.json +0 -44
- gpu_dev-0.7.14/cli-tools/scripts/clear_stale_disk_locks.py +0 -215
- gpu_dev-0.7.14/conftest.py +0 -92
- gpu_dev-0.7.14/docs/FAST_REPRO_DESIGN.md +0 -141
- gpu_dev-0.7.14/docs/GPU_DEV_SUBMIT.md +0 -89
- gpu_dev-0.7.14/docs/SDK_REPRO.md +0 -116
- gpu_dev-0.7.14/docs/USER_GUIDE.md +0 -1529
- gpu_dev-0.7.14/docs/devgpu-features.html +0 -537
- gpu_dev-0.7.14/docs/docker-mark-blue.svg +0 -12
- gpu_dev-0.7.14/docs/icons8-cursor-ai.svg +0 -1
- gpu_dev-0.7.14/gpu_dev.egg-info/SOURCES.txt +0 -233
- gpu_dev-0.7.14/post-may-2026.md +0 -185
- gpu_dev-0.7.14/presentation/CLAUDE.md +0 -220
- gpu_dev-0.7.14/presentation/architecture.html +0 -401
- gpu_dev-0.7.14/presentation/cli-demo.html +0 -381
- gpu_dev-0.7.14/presentation/devgpu-features.html +0 -292
- gpu_dev-0.7.14/presentation/docker-mark-blue.svg +0 -12
- gpu_dev-0.7.14/presentation/feedback.png +0 -0
- gpu_dev-0.7.14/presentation/gpu-fleet.html +0 -355
- gpu_dev-0.7.14/presentation/icons8-cursor-ai.svg +0 -1
- gpu_dev-0.7.14/presentation/index.html +0 -563
- gpu_dev-0.7.14/presentation/k8s-under-the-hood.html +0 -369
- gpu_dev-0.7.14/presentation/multinode.html +0 -421
- gpu_dev-0.7.14/presentation/osdc-future-plans.html +0 -191
- gpu_dev-0.7.14/presentation/problem.png +0 -0
- gpu_dev-0.7.14/presentation/pyproject.toml +0 -33
- gpu_dev-0.7.14/presentation/sandbox.html +0 -745
- gpu_dev-0.7.14/presentation/sdk-demo.html +0 -518
- gpu_dev-0.7.14/presentation/teaser.html +0 -317
- gpu_dev-0.7.14/presentation/thesis.html +0 -70
- gpu_dev-0.7.14/presentation/title-vid.mp4 +0 -0
- gpu_dev-0.7.14/presentation/weneedgpus.png +0 -0
- gpu_dev-0.7.14/presentation/wow.html +0 -166
- gpu_dev-0.7.14/sdk/python/README.md +0 -240
- gpu_dev-0.7.14/sdk/python/examples/batch_multi_gpu.py +0 -66
- gpu_dev-0.7.14/sdk/python/examples/interactive_debug.py +0 -54
- gpu_dev-0.7.14/sdk/python/examples/parallel_experiments.ipynb +0 -408
- gpu_dev-0.7.14/sdk/python/examples/quickstart.ipynb +0 -365
- gpu_dev-0.7.14/sdk/python/examples/run_tests.py +0 -64
- gpu_dev-0.7.14/sdk/python/examples/submit_job.py +0 -38
- gpu_dev-0.7.14/sdk/python/tests/test_models.py +0 -69
- gpu_dev-0.7.14/terraform-deck/backend.tf +0 -8
- gpu_dev-0.7.14/terraform-deck/main.tf +0 -223
- gpu_dev-0.7.14/terraform-deck/terraform.tfvars.example +0 -4
- gpu_dev-0.7.14/terraform-gpu-devservers/.claude/skills/deploy.md +0 -87
- gpu_dev-0.7.14/terraform-gpu-devservers/.terraform.lock.hcl +0 -108
- gpu_dev-0.7.14/terraform-gpu-devservers/README.md +0 -333
- gpu_dev-0.7.14/terraform-gpu-devservers/alb.tf +0 -298
- gpu_dev-0.7.14/terraform-gpu-devservers/ami-baker.tf +0 -144
- gpu_dev-0.7.14/terraform-gpu-devservers/availability.tf +0 -293
- gpu_dev-0.7.14/terraform-gpu-devservers/backend.tf +0 -9
- gpu_dev-0.7.14/terraform-gpu-devservers/build-node.tf +0 -99
- gpu_dev-0.7.14/terraform-gpu-devservers/check_b200.py +0 -21
- gpu_dev-0.7.14/terraform-gpu-devservers/cluster-autoscaler.tf +0 -47
- gpu_dev-0.7.14/terraform-gpu-devservers/cmd_proxy.py +0 -49
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/.dockerignore +0 -22
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/Dockerfile +0 -289
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/backup-dotfiles +0 -74
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/bash_profile +0 -15
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/bashrc +0 -30
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/bashrc_ext +0 -40
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/build-with-efa.sh +0 -117
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/dotfiles-shutdown-handler +0 -8
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/list-dotfile-versions +0 -69
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/motd_script +0 -116
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/nproc_wrapper +0 -32
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/profile +0 -15
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/restore-dotfiles +0 -38
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/restore-dotfiles-version +0 -79
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/setup-dotfiles-persistence +0 -83
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/shell_env +0 -35
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/ssh_config +0 -14
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/zprofile +0 -10
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/zshrc +0 -61
- gpu_dev-0.7.14/terraform-gpu-devservers/docker/zshrc_ext +0 -41
- gpu_dev-0.7.14/terraform-gpu-devservers/docker-build.tf +0 -150
- gpu_dev-0.7.14/terraform-gpu-devservers/docker-example/Dockerfile +0 -95
- gpu_dev-0.7.14/terraform-gpu-devservers/docker-example/hello.txt +0 -1
- gpu_dev-0.7.14/terraform-gpu-devservers/ecr.tf +0 -238
- gpu_dev-0.7.14/terraform-gpu-devservers/efs.tf +0 -119
- gpu_dev-0.7.14/terraform-gpu-devservers/eks.tf +0 -700
- gpu_dev-0.7.14/terraform-gpu-devservers/expiry.tf +0 -235
- gpu_dev-0.7.14/terraform-gpu-devservers/git-cache.tf +0 -541
- gpu_dev-0.7.14/terraform-gpu-devservers/gpu-dev-pod-irsa.tf +0 -143
- gpu_dev-0.7.14/terraform-gpu-devservers/kubernetes.tf +0 -612
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/availability_updater/index.py +0 -799
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/availability_updater/requirements.txt +0 -3
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/migration/tag_largest_snapshots.py +0 -183
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/reservation_expiry/index.py +0 -2133
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/reservation_expiry/requirements.txt +0 -3
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/reservation_processor/buildkit_job.py +0 -483
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/reservation_processor/index.py +0 -10547
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/reservation_processor/requirements.txt +0 -3
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/__init__.py +0 -8
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/alb_utils.py +0 -331
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/dns_utils.py +0 -494
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/k8s_client.py +0 -130
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/k8s_resource_tracker.py +0 -255
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/requirements.txt +0 -3
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda/shared/snapshot_utils.py +0 -567
- gpu_dev-0.7.14/terraform-gpu-devservers/lambda.tf +0 -424
- gpu_dev-0.7.14/terraform-gpu-devservers/list_b200.py +0 -68
- gpu_dev-0.7.14/terraform-gpu-devservers/main.tf +0 -922
- gpu_dev-0.7.14/terraform-gpu-devservers/mig-config.tf +0 -73
- gpu_dev-0.7.14/terraform-gpu-devservers/mig-parted-config.yaml +0 -543
- gpu_dev-0.7.14/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py +0 -382
- gpu_dev-0.7.14/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py.bak +0 -337
- gpu_dev-0.7.14/terraform-gpu-devservers/migrations/check_snapshots.py +0 -62
- gpu_dev-0.7.14/terraform-gpu-devservers/migrations/migrate_disks_to_named.py +0 -454
- gpu_dev-0.7.14/terraform-gpu-devservers/migrations/run_backfill.sh +0 -183
- gpu_dev-0.7.14/terraform-gpu-devservers/monitoring.tf +0 -988
- gpu_dev-0.7.14/terraform-gpu-devservers/node-termination-handler.tf +0 -37
- gpu_dev-0.7.14/terraform-gpu-devservers/outputs.tf +0 -82
- gpu_dev-0.7.14/terraform-gpu-devservers/pyproject.toml +0 -43
- gpu_dev-0.7.14/terraform-gpu-devservers/pytorch-ondemand.tf +0 -178
- gpu_dev-0.7.14/terraform-gpu-devservers/pytorch-prebuild.tf +0 -238
- gpu_dev-0.7.14/terraform-gpu-devservers/queue.tf +0 -169
- gpu_dev-0.7.14/terraform-gpu-devservers/route53.tf +0 -216
- gpu_dev-0.7.14/terraform-gpu-devservers/s3-disk-contents.tf +0 -69
- gpu_dev-0.7.14/terraform-gpu-devservers/scripts/CLEANUP_GUIDE.md +0 -140
- gpu_dev-0.7.14/terraform-gpu-devservers/scripts/detect_empty_volumes.sh +0 -111
- gpu_dev-0.7.14/terraform-gpu-devservers/scripts/ec2_avail_probe.sh +0 -145
- gpu_dev-0.7.14/terraform-gpu-devservers/scripts/inspect_user_data.sh +0 -258
- gpu_dev-0.7.14/terraform-gpu-devservers/ssh-proxy/Dockerfile +0 -25
- gpu_dev-0.7.14/terraform-gpu-devservers/ssh-proxy/proxy.py +0 -234
- gpu_dev-0.7.14/terraform-gpu-devservers/ssh-proxy/requirements.txt +0 -2
- gpu_dev-0.7.14/terraform-gpu-devservers/ssh-proxy-service.tf +0 -384
- gpu_dev-0.7.14/terraform-gpu-devservers/ssh-proxy.tf +0 -67
- gpu_dev-0.7.14/terraform-gpu-devservers/subnet-0fe3a2c45570091ad +0 -0
- gpu_dev-0.7.14/terraform-gpu-devservers/switch-to.sh +0 -67
- gpu_dev-0.7.14/terraform-gpu-devservers/templates/al2023-cpu-user-data.sh +0 -57
- gpu_dev-0.7.14/terraform-gpu-devservers/templates/al2023-user-data.sh +0 -266
- gpu_dev-0.7.14/terraform-gpu-devservers/templates/ami-baker-user-data.sh +0 -48
- gpu_dev-0.7.14/terraform-gpu-devservers/templates/user-data-self-managed.sh +0 -55
- gpu_dev-0.7.14/terraform-gpu-devservers/templates/user-data.sh +0 -30
- gpu_dev-0.7.14/terraform-gpu-devservers/variables.tf +0 -175
- gpu_dev-0.7.14/terraform-gpu-devservers/warm-pool.tf +0 -31
- gpu_dev-0.7.14/tests/__init__.py +0 -0
- gpu_dev-0.7.14/tests/integration/README.md +0 -35
- gpu_dev-0.7.14/tests/integration/__init__.py +0 -0
- gpu_dev-0.7.14/tests/integration/conftest.py +0 -131
- gpu_dev-0.7.14/tests/integration/test_claude.py +0 -40
- gpu_dev-0.7.14/tests/integration/test_cpu_lifecycle.py +0 -36
- gpu_dev-0.7.14/tests/integration/test_repro_known_failure.py +0 -54
- gpu_dev-0.7.14/tests/integration/test_t4_lifecycle.py +0 -39
- gpu_dev-0.7.14/tests/integration/test_warm_pool.py +0 -54
- gpu_dev-0.7.14/tests/submit/README.md +0 -63
- gpu_dev-0.7.14/tests/submit/fail/run.sh +0 -20
- gpu_dev-0.7.14/tests/submit/multinode/run.sh +0 -65
- gpu_dev-0.7.14/tests/submit/success/run.sh +0 -23
- gpu_dev-0.7.14/tests/unit/__init__.py +0 -0
- gpu_dev-0.7.14/tests/unit/cli/__init__.py +0 -0
- gpu_dev-0.7.14/tests/unit/cli/test_auth.py +0 -442
- gpu_dev-0.7.14/tests/unit/cli/test_avail.py +0 -295
- gpu_dev-0.7.14/tests/unit/cli/test_cancel.py +0 -380
- gpu_dev-0.7.14/tests/unit/cli/test_config_cmd.py +0 -187
- gpu_dev-0.7.14/tests/unit/cli/test_config_module.py +0 -476
- gpu_dev-0.7.14/tests/unit/cli/test_connect.py +0 -373
- gpu_dev-0.7.14/tests/unit/cli/test_debug.py +0 -155
- gpu_dev-0.7.14/tests/unit/cli/test_disks.py +0 -747
- gpu_dev-0.7.14/tests/unit/cli/test_edit.py +0 -321
- gpu_dev-0.7.14/tests/unit/cli/test_interactive.py +0 -489
- gpu_dev-0.7.14/tests/unit/cli/test_list_show.py +0 -547
- gpu_dev-0.7.14/tests/unit/cli/test_name_generator.py +0 -272
- gpu_dev-0.7.14/tests/unit/cli/test_repro.py +0 -541
- gpu_dev-0.7.14/tests/unit/cli/test_reservations_mgr.py +0 -593
- gpu_dev-0.7.14/tests/unit/cli/test_reserve.py +0 -394
- gpu_dev-0.7.14/tests/unit/cli/test_smoke.py +0 -12
- gpu_dev-0.7.14/tests/unit/cli/test_ssh_alias.py +0 -130
- gpu_dev-0.7.14/tests/unit/cli/test_submit.py +0 -447
- gpu_dev-0.7.14/tests/unit/lambda_fn/__init__.py +0 -0
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_availability.py +0 -488
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_cancellation.py +0 -355
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_claim.py +0 -348
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_dead_pod_cleanup.py +0 -177
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_finalize_no_ssh.py +0 -24
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_get_logs.py +0 -59
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_mig_gpu_config.py +0 -599
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_pod_resources.py +0 -264
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_ref_staging.py +0 -292
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_smoke.py +0 -12
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_version_gate.py +0 -178
- gpu_dev-0.7.14/tests/unit/lambda_fn/test_warm_pool.py +0 -682
- gpu_dev-0.7.14/tests/unit/sdk/__init__.py +0 -0
- gpu_dev-0.7.14/tests/unit/sdk/test_backend_aws.py +0 -790
- gpu_dev-0.7.14/tests/unit/sdk/test_client.py +0 -519
- gpu_dev-0.7.14/tests/unit/sdk/test_errors_enums.py +0 -308
- gpu_dev-0.7.14/tests/unit/sdk/test_models_extra.py +0 -361
- gpu_dev-0.7.14/tests/unit/sdk/test_sandbox.py +0 -352
- gpu_dev-0.7.14/tests/unit/sdk/test_sdk_config.py +0 -258
- gpu_dev-0.7.14/tests/unit/sdk/test_transport_ssh.py +0 -327
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/auth.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/config.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/disks.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/interactive.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/name_generator.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/reservations.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/ssh_proxy.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/gpu_dev.egg-info/dependency_links.txt +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/gpu_dev.egg-info/top_level.txt +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_async/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_backend/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_backend/aws.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_backend/protocol.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_sync/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_sync/client.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_sync/sandbox.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_transport/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/_transport/ssh.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/common/__init__.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/common/config.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/common/enums.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/common/errors.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/common/models.py +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/sdk/python/src/gpu_dev/py.typed +0 -0
- {gpu_dev-0.7.14 → gpu_dev-0.7.16}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gpu-dev
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.16
|
|
4
4
|
Summary: CLI + Python SDK for PyTorch GPU developer server reservations
|
|
5
5
|
Author: PyTorch Team
|
|
6
6
|
Requires-Python: >=3.10
|
|
@@ -14,7 +14,6 @@ Requires-Dist: pyyaml>=6.0.1
|
|
|
14
14
|
Requires-Dist: questionary>=2.1.1
|
|
15
15
|
Requires-Dist: websockets>=12.0
|
|
16
16
|
Requires-Dist: certifi>=2023.7.22
|
|
17
|
-
Requires-Dist: mcp>=1.0.0
|
|
18
17
|
Provides-Extra: test
|
|
19
18
|
Requires-Dist: pytest>=7.4; extra == "test"
|
|
20
19
|
Requires-Dist: pytest-cov>=4.1; extra == "test"
|
|
@@ -67,11 +66,11 @@ The SDK ships inside the `gpu-dev` package: `pip install gpu-dev`, then `from gp
|
|
|
67
66
|
|
|
68
67
|
```bash
|
|
69
68
|
# Install directly from GitHub (recommended)
|
|
70
|
-
python3 -m pip install --upgrade "git+https://github.com/
|
|
69
|
+
python3 -m pip install --upgrade "git+https://github.com/pytorch/ci-infra.git#subdirectory=gpu-dev"
|
|
71
70
|
|
|
72
71
|
# Or install from local clone
|
|
73
|
-
git clone https://github.com/
|
|
74
|
-
cd
|
|
72
|
+
git clone https://github.com/pytorch/ci-infra.git
|
|
73
|
+
cd ci-infra/gpu-dev
|
|
75
74
|
pip install -e .
|
|
76
75
|
```
|
|
77
76
|
|
|
@@ -706,7 +705,7 @@ gpu-dev disk list-content <disk-name>
|
|
|
706
705
|
### Getting Help
|
|
707
706
|
|
|
708
707
|
- Use `gpu-dev help` or `gpu-dev <command> --help`
|
|
709
|
-
- Report issues: https://github.com/
|
|
708
|
+
- Report issues: https://github.com/pytorch/ci-infra/issues
|
|
710
709
|
|
|
711
710
|
---
|
|
712
711
|
|
|
@@ -44,11 +44,11 @@ The SDK ships inside the `gpu-dev` package: `pip install gpu-dev`, then `from gp
|
|
|
44
44
|
|
|
45
45
|
```bash
|
|
46
46
|
# Install directly from GitHub (recommended)
|
|
47
|
-
python3 -m pip install --upgrade "git+https://github.com/
|
|
47
|
+
python3 -m pip install --upgrade "git+https://github.com/pytorch/ci-infra.git#subdirectory=gpu-dev"
|
|
48
48
|
|
|
49
49
|
# Or install from local clone
|
|
50
|
-
git clone https://github.com/
|
|
51
|
-
cd
|
|
50
|
+
git clone https://github.com/pytorch/ci-infra.git
|
|
51
|
+
cd ci-infra/gpu-dev
|
|
52
52
|
pip install -e .
|
|
53
53
|
```
|
|
54
54
|
|
|
@@ -683,7 +683,7 @@ gpu-dev disk list-content <disk-name>
|
|
|
683
683
|
### Getting Help
|
|
684
684
|
|
|
685
685
|
- Use `gpu-dev help` or `gpu-dev <command> --help`
|
|
686
|
-
- Report issues: https://github.com/
|
|
686
|
+
- Report issues: https://github.com/pytorch/ci-infra/issues
|
|
687
687
|
|
|
688
688
|
---
|
|
689
689
|
|
|
@@ -1748,9 +1748,16 @@ def repro(ctx, ref, test_args, lint, clang, gpu_type, gpus, hours, no_connect, k
|
|
|
1748
1748
|
ssh_cmd = ssh_cmd.replace("ssh ", "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=ERROR ", 1)
|
|
1749
1749
|
rprint(f"[dim]→ {ssh_cmd}[/dim]\n")
|
|
1750
1750
|
rid8 = str(rid)[:8]
|
|
1751
|
+
# lintrunner only renders its live progress bar to a TTY -> run lint over an SSH
|
|
1752
|
+
# PTY (-t) so you see per-linter progress instead of silence. (-t is polite: in a
|
|
1753
|
+
# non-TTY CI run it just proceeds without a PTY.)
|
|
1754
|
+
run_ssh = ssh_cmd.replace("ssh ", "ssh -t ", 1) if lint else ssh_cmd
|
|
1755
|
+
if lint and "--all-files" in (scope or ""):
|
|
1756
|
+
rprint("[yellow]note:[/yellow] full-tree lint (ruff/mypy/pyrefly over ALL files) — several minutes. "
|
|
1757
|
+
"Lint a PR (gpu-dev repro --lint pr/N) for a fast diff-only run.\n")
|
|
1751
1758
|
rc = 1
|
|
1752
1759
|
try:
|
|
1753
|
-
rc = subprocess.run(f"{
|
|
1760
|
+
rc = subprocess.run(f"{run_ssh} {shlex.quote(remote)}", shell=True).returncode
|
|
1754
1761
|
except KeyboardInterrupt:
|
|
1755
1762
|
rprint("\n[yellow]interrupted[/yellow]"); rc = 130
|
|
1756
1763
|
|
|
@@ -2019,7 +2026,7 @@ def submit(ctx, gpu_type, gpus, hours, disk, ref, no_persistent_disk, spot, dock
|
|
|
2019
2026
|
|
|
2020
2027
|
try:
|
|
2021
2028
|
if timeout >= 60:
|
|
2022
|
-
wait_str = f"up to {timeout//60}h{(
|
|
2029
|
+
wait_str = f"up to {timeout//60}h{(' ' + str(timeout%60) + 'm') if timeout%60 else ''}"
|
|
2023
2030
|
else:
|
|
2024
2031
|
wait_str = f"up to {timeout}m"
|
|
2025
2032
|
rprint(f"[cyan]⏳ Waiting for reservation {short_id} to become active ({wait_str}; can queue when cluster is full)...[/cyan]")
|
|
@@ -3495,7 +3502,8 @@ def _maybe_show_sdk_tip() -> None:
|
|
|
3495
3502
|
rprint(
|
|
3496
3503
|
"\n[bold cyan]✨ NEW:[/bold cyan] use the [bold]gpu_dev[/bold] Python SDK for "
|
|
3497
3504
|
"sub-second reservations + repro GitHub issues →\n"
|
|
3498
|
-
" [underline]https://github.com/
|
|
3505
|
+
" [underline]https://github.com/pytorch/ci-infra/blob/main/"
|
|
3506
|
+
"gpu-dev/docs/SDK_REPRO.md[/underline]")
|
|
3499
3507
|
except Exception:
|
|
3500
3508
|
pass
|
|
3501
3509
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gpu-dev
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.16
|
|
4
4
|
Summary: CLI + Python SDK for PyTorch GPU developer server reservations
|
|
5
5
|
Author: PyTorch Team
|
|
6
6
|
Requires-Python: >=3.10
|
|
@@ -14,7 +14,6 @@ Requires-Dist: pyyaml>=6.0.1
|
|
|
14
14
|
Requires-Dist: questionary>=2.1.1
|
|
15
15
|
Requires-Dist: websockets>=12.0
|
|
16
16
|
Requires-Dist: certifi>=2023.7.22
|
|
17
|
-
Requires-Dist: mcp>=1.0.0
|
|
18
17
|
Provides-Extra: test
|
|
19
18
|
Requires-Dist: pytest>=7.4; extra == "test"
|
|
20
19
|
Requires-Dist: pytest-cov>=4.1; extra == "test"
|
|
@@ -67,11 +66,11 @@ The SDK ships inside the `gpu-dev` package: `pip install gpu-dev`, then `from gp
|
|
|
67
66
|
|
|
68
67
|
```bash
|
|
69
68
|
# Install directly from GitHub (recommended)
|
|
70
|
-
python3 -m pip install --upgrade "git+https://github.com/
|
|
69
|
+
python3 -m pip install --upgrade "git+https://github.com/pytorch/ci-infra.git#subdirectory=gpu-dev"
|
|
71
70
|
|
|
72
71
|
# Or install from local clone
|
|
73
|
-
git clone https://github.com/
|
|
74
|
-
cd
|
|
72
|
+
git clone https://github.com/pytorch/ci-infra.git
|
|
73
|
+
cd ci-infra/gpu-dev
|
|
75
74
|
pip install -e .
|
|
76
75
|
```
|
|
77
76
|
|
|
@@ -706,7 +705,7 @@ gpu-dev disk list-content <disk-name>
|
|
|
706
705
|
### Getting Help
|
|
707
706
|
|
|
708
707
|
- Use `gpu-dev help` or `gpu-dev <command> --help`
|
|
709
|
-
- Report issues: https://github.com/
|
|
708
|
+
- Report issues: https://github.com/pytorch/ci-infra/issues
|
|
710
709
|
|
|
711
710
|
---
|
|
712
711
|
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
README.md
|
|
2
|
+
pyproject.toml
|
|
3
|
+
cli-tools/gpu-dev-cli/README.md
|
|
4
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/__init__.py
|
|
5
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/auth.py
|
|
6
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/cli.py
|
|
7
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/config.py
|
|
8
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/disks.py
|
|
9
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/interactive.py
|
|
10
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/name_generator.py
|
|
11
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/reservations.py
|
|
12
|
+
cli-tools/gpu-dev-cli/gpu_dev_cli/ssh_proxy.py
|
|
13
|
+
gpu_dev.egg-info/PKG-INFO
|
|
14
|
+
gpu_dev.egg-info/SOURCES.txt
|
|
15
|
+
gpu_dev.egg-info/dependency_links.txt
|
|
16
|
+
gpu_dev.egg-info/entry_points.txt
|
|
17
|
+
gpu_dev.egg-info/requires.txt
|
|
18
|
+
gpu_dev.egg-info/top_level.txt
|
|
19
|
+
sdk/python/src/gpu_dev/__init__.py
|
|
20
|
+
sdk/python/src/gpu_dev/py.typed
|
|
21
|
+
sdk/python/src/gpu_dev/_async/__init__.py
|
|
22
|
+
sdk/python/src/gpu_dev/_backend/__init__.py
|
|
23
|
+
sdk/python/src/gpu_dev/_backend/aws.py
|
|
24
|
+
sdk/python/src/gpu_dev/_backend/protocol.py
|
|
25
|
+
sdk/python/src/gpu_dev/_sync/__init__.py
|
|
26
|
+
sdk/python/src/gpu_dev/_sync/client.py
|
|
27
|
+
sdk/python/src/gpu_dev/_sync/sandbox.py
|
|
28
|
+
sdk/python/src/gpu_dev/_transport/__init__.py
|
|
29
|
+
sdk/python/src/gpu_dev/_transport/ssh.py
|
|
30
|
+
sdk/python/src/gpu_dev/common/__init__.py
|
|
31
|
+
sdk/python/src/gpu_dev/common/config.py
|
|
32
|
+
sdk/python/src/gpu_dev/common/enums.py
|
|
33
|
+
sdk/python/src/gpu_dev/common/errors.py
|
|
34
|
+
sdk/python/src/gpu_dev/common/models.py
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["setuptools>=45", "wheel"
|
|
2
|
+
requires = ["setuptools>=45", "wheel"]
|
|
3
3
|
build-backend = "setuptools.build_meta"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gpu-dev"
|
|
7
|
-
version = "0.7.
|
|
7
|
+
version = "0.7.16"
|
|
8
8
|
description = "CLI + Python SDK for PyTorch GPU developer server reservations"
|
|
9
9
|
authors = [{name = "PyTorch Team"}]
|
|
10
10
|
readme = "cli-tools/gpu-dev-cli/README.md"
|
|
@@ -19,7 +19,6 @@ dependencies = [
|
|
|
19
19
|
"questionary>=2.1.1",
|
|
20
20
|
"websockets>=12.0",
|
|
21
21
|
"certifi>=2023.7.22",
|
|
22
|
-
"mcp>=1.0.0",
|
|
23
22
|
]
|
|
24
23
|
|
|
25
24
|
[project.optional-dependencies]
|
|
@@ -41,7 +40,6 @@ markers = [
|
|
|
41
40
|
[project.scripts]
|
|
42
41
|
gpu-dev = "gpu_dev_cli.cli:main"
|
|
43
42
|
gpu-dev-ssh-proxy = "gpu_dev_cli.ssh_proxy:main"
|
|
44
|
-
gpu-dev-mcp = "gpu_dev_cli.mcp_server:main"
|
|
45
43
|
|
|
46
44
|
# One distribution ships BOTH the CLI (gpu_dev_cli) and the SDK (gpu_dev), from
|
|
47
45
|
# their two source trees, via explicit per-package dirs.
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
name: Validate repository structure
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
pull_request:
|
|
5
|
-
push:
|
|
6
|
-
branches:
|
|
7
|
-
- main
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
no-gitlinks:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
steps:
|
|
13
|
-
- name: Checkout
|
|
14
|
-
uses: actions/checkout@v4
|
|
15
|
-
- name: Ensure no gitlinks are tracked
|
|
16
|
-
run: |
|
|
17
|
-
gitlinks=$(git ls-files -s | awk '$1 == 160000 {print}')
|
|
18
|
-
if [ -n "$gitlinks" ]; then
|
|
19
|
-
echo "Unexpected gitlinks found:"
|
|
20
|
-
echo "$gitlinks"
|
|
21
|
-
exit 1
|
|
22
|
-
fi
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
name: Publish to PyPI
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
tags:
|
|
6
|
-
- "v*"
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
publish:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
environment: pypi
|
|
12
|
-
permissions:
|
|
13
|
-
id-token: write
|
|
14
|
-
attestations: write
|
|
15
|
-
contents: read
|
|
16
|
-
steps:
|
|
17
|
-
- name: Checkout
|
|
18
|
-
uses: actions/checkout@v4
|
|
19
|
-
- name: Install uv
|
|
20
|
-
uses: astral-sh/setup-uv@v5
|
|
21
|
-
with:
|
|
22
|
-
python-version: "3.13"
|
|
23
|
-
- name: Verify tag matches package version
|
|
24
|
-
run: |
|
|
25
|
-
PKG_VERSION=$(uv run python -c "import tomllib; print(tomllib.load(open('pyproject.toml', 'rb'))['project']['version'])")
|
|
26
|
-
TAG_VERSION=${GITHUB_REF#refs/tags/v}
|
|
27
|
-
if [ "$PKG_VERSION" != "$TAG_VERSION" ]; then
|
|
28
|
-
echo "::error::Tag version ($TAG_VERSION) does not match package version ($PKG_VERSION)"
|
|
29
|
-
exit 1
|
|
30
|
-
fi
|
|
31
|
-
- name: "Build package (gpu-dev = CLI + SDK)"
|
|
32
|
-
run: uv build
|
|
33
|
-
- name: Generate attestations
|
|
34
|
-
uses: actions/attest-build-provenance@v2
|
|
35
|
-
with:
|
|
36
|
-
subject-path: dist/*
|
|
37
|
-
- name: Publish to PyPI
|
|
38
|
-
uses: pypa/gh-action-pypi-publish@release/v1
|
|
39
|
-
with:
|
|
40
|
-
# Multi-package + re-run safety: skip any file already on PyPI (e.g. a
|
|
41
|
-
# gpu-dev version that published before a sibling failed) instead of
|
|
42
|
-
# erroring on the duplicate.
|
|
43
|
-
skip-existing: true
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
name: tests
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
pull_request:
|
|
6
|
-
|
|
7
|
-
jobs:
|
|
8
|
-
unit:
|
|
9
|
-
name: unit + mocks
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
steps:
|
|
12
|
-
- uses: actions/checkout@v4
|
|
13
|
-
- name: Install uv
|
|
14
|
-
uses: astral-sh/setup-uv@v5
|
|
15
|
-
with:
|
|
16
|
-
python-version: "3.12"
|
|
17
|
-
- name: Install package + test deps
|
|
18
|
-
run: uv pip install -e ".[test]"
|
|
19
|
-
- name: Run unit + mock tests (integration excluded)
|
|
20
|
-
run: uv run pytest -m "not integration"
|
gpu_dev-0.7.14/.gitignore
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# Python
|
|
2
|
-
__pycache__/
|
|
3
|
-
*.py[cod]
|
|
4
|
-
*$py.class
|
|
5
|
-
*.so
|
|
6
|
-
.Python
|
|
7
|
-
build/
|
|
8
|
-
develop-eggs/
|
|
9
|
-
dist/
|
|
10
|
-
downloads/
|
|
11
|
-
eggs/
|
|
12
|
-
.eggs/
|
|
13
|
-
lib/
|
|
14
|
-
lib64/
|
|
15
|
-
parts/
|
|
16
|
-
sdist/
|
|
17
|
-
var/
|
|
18
|
-
wheels/
|
|
19
|
-
pip-wheel-metadata/
|
|
20
|
-
share/python-wheels/
|
|
21
|
-
*.egg-info/
|
|
22
|
-
.installed.cfg
|
|
23
|
-
*.egg
|
|
24
|
-
MANIFEST
|
|
25
|
-
|
|
26
|
-
# Virtual environments
|
|
27
|
-
venv/
|
|
28
|
-
env/
|
|
29
|
-
ENV/
|
|
30
|
-
env.bak/
|
|
31
|
-
venv.bak/
|
|
32
|
-
|
|
33
|
-
# Terraform
|
|
34
|
-
*.tfstate
|
|
35
|
-
*.tfstate.*
|
|
36
|
-
*.tfvars
|
|
37
|
-
.terraform/
|
|
38
|
-
.terraform.lock.hcl
|
|
39
|
-
crash.log
|
|
40
|
-
crash.*.log
|
|
41
|
-
override.tf
|
|
42
|
-
override.tf.json
|
|
43
|
-
*_override.tf
|
|
44
|
-
*_override.tf.json
|
|
45
|
-
.terraformrc
|
|
46
|
-
terraform.rc
|
|
47
|
-
|
|
48
|
-
# Lambda packages
|
|
49
|
-
*.zip
|
|
50
|
-
lambda/*/package/
|
|
51
|
-
|
|
52
|
-
# IDE
|
|
53
|
-
.vscode/
|
|
54
|
-
.idea/
|
|
55
|
-
*.swp
|
|
56
|
-
*.swo
|
|
57
|
-
*~
|
|
58
|
-
.DS_Store
|
|
59
|
-
|
|
60
|
-
# Logs
|
|
61
|
-
*.log
|
|
62
|
-
|
|
63
|
-
# Local config
|
|
64
|
-
.env
|
|
65
|
-
.env.local
|
|
66
|
-
|
|
67
|
-
# Grafana Cloud secrets
|
|
68
|
-
**/grafana-cloud.tfvars
|
|
69
|
-
**/grafana-cloud.auto.tfvars
|
|
70
|
-
**/secrets.auto.tfvars
|
|
71
|
-
|
|
72
|
-
# Admin output files
|
|
73
|
-
admin/output/
|
|
74
|
-
|
|
75
|
-
.claude/worktrees/
|
|
76
|
-
.claude/settings.local.json
|
|
77
|
-
.claude/scheduled_tasks.lock
|
|
78
|
-
|
|
79
|
-
# Org-specific (filled in locally; not committed)
|
|
80
|
-
docs/INTERNAL_AUTH.md
|
|
81
|
-
|
|
82
|
-
# Local scratch / staging terraform working dir
|
|
83
|
-
*.pid
|
|
84
|
-
terraform-gpu-devservers/staging/.terraform/
|
|
85
|
-
terraform-gpu-devservers/staging/__pycache__/
|
|
86
|
-
terraform-gpu-devservers/staging/*.log
|