gpu-dev 0.6.4__tar.gz → 0.6.5__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.6.4 → gpu_dev-0.6.5}/PKG-INFO +1 -1
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/PKG-INFO +1 -1
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/disks.py +28 -11
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/pyproject.toml +1 -1
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/pyproject.toml +1 -1
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/__init__.py +1 -1
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_backend/aws.py +1 -1
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda.tf +2 -2
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/.github/workflows/no-gitlinks.yml +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/.github/workflows/publish.yml +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/.gitignore +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/CLAUDE.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/README.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/admin/README.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/admin/generate_stats.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/admin/requirements.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/README.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/ZERO_CONFIG_SETUP.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/SOURCES.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/dependency_links.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/entry_points.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/requires.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/top_level.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/auth.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/cli.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/config.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/interactive.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/name_generator.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/reservations.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/gpu_dev_cli/ssh_proxy.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/gpu-dev-cli/minimal-iam-policy.json +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/cli-tools/scripts/clear_stale_disk_locks.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/docs/USER_GUIDE.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/docs/devgpu-features.html +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/docs/docker-mark-blue.svg +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/docs/icons8-cursor-ai.svg +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/README.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/examples/batch_multi_gpu.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/examples/interactive_debug.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/examples/quickstart.ipynb +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/examples/run_tests.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/examples/submit_job.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_async/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_backend/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_backend/protocol.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_sync/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_sync/client.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_sync/sandbox.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_transport/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/_transport/ssh.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/common/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/common/config.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/common/enums.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/common/errors.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/common/models.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/src/gpu_dev/py.typed +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/tests/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/sdk/python/tests/test_models.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/setup.cfg +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/.claude/skills/deploy.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/.terraform.lock.hcl +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/README.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/alb.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ami-baker.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/availability.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/backend.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/check_b200.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/cluster-autoscaler.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/cmd_proxy.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/.dockerignore +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/Dockerfile +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/backup-dotfiles +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/bash_profile +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/bashrc +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/bashrc_ext +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/build-with-efa.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/dotfiles-shutdown-handler +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/list-dotfile-versions +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/motd_script +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/nproc_wrapper +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/profile +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/restore-dotfiles +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/restore-dotfiles-version +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/setup-dotfiles-persistence +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/shell_env +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/ssh_config +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/zprofile +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/zshrc +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker/zshrc_ext +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker-build.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker-example/Dockerfile +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/docker-example/hello.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ecr.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/efs.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/eks.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/expiry.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/git-cache.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/gpu-dev-pod-irsa.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/kubernetes.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/availability_updater/index.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/availability_updater/requirements.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/migration/tag_largest_snapshots.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_expiry/index.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_expiry/requirements.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_processor/buildkit_job.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_processor/index.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_processor/requirements.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/__init__.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/alb_utils.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/dns_utils.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/k8s_client.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/k8s_resource_tracker.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/requirements.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/snapshot_utils.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/list_b200.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/main.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/mig-config.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/mig-parted-config.yaml +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py.bak +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/check_snapshots.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/migrate_disks_to_named.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/run_backfill.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/monitoring.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/node-termination-handler.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/outputs.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/pyproject.toml +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/queue.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/route53.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/s3-disk-contents.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/scripts/CLEANUP_GUIDE.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/scripts/detect_empty_volumes.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/scripts/ec2_avail_probe.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/scripts/inspect_user_data.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ssh-proxy/Dockerfile +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ssh-proxy/proxy.py +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ssh-proxy/requirements.txt +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ssh-proxy-service.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/ssh-proxy.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/subnet-0fe3a2c45570091ad +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/switch-to.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/templates/al2023-cpu-user-data.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/templates/al2023-user-data.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/templates/ami-baker-user-data.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/templates/user-data-self-managed.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/templates/user-data.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/variables.tf +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/tests/submit/README.md +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/tests/submit/fail/run.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/tests/submit/multinode/run.sh +0 -0
- {gpu_dev-0.6.4 → gpu_dev-0.6.5}/tests/submit/success/run.sh +0 -0
|
@@ -154,12 +154,8 @@ def list_disks(user_id: str, config: Config) -> List[Dict]:
|
|
|
154
154
|
List all disks for a user.
|
|
155
155
|
Returns list of disk info dicts with: name, size, last_used, created_at, snapshot_count, in_use, reservation_id
|
|
156
156
|
"""
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
# Query DynamoDB disks table for this user's disks (with pagination)
|
|
161
|
-
disks_table_name = config.disks_table if hasattr(config, 'disks_table') else f"{config.queue_name.rsplit('-', 1)[0]}-disks"
|
|
162
|
-
disks_table = dynamodb.Table(disks_table_name)
|
|
157
|
+
dynamodb = config.dynamodb
|
|
158
|
+
disks_table = dynamodb.Table(config.disks_table)
|
|
163
159
|
|
|
164
160
|
dynamodb_disks = []
|
|
165
161
|
response = disks_table.query(
|
|
@@ -208,9 +204,6 @@ def list_disks(user_id: str, config: Config) -> List[Dict]:
|
|
|
208
204
|
is_deleted = disk_item.get('is_deleted', False)
|
|
209
205
|
delete_date = disk_item.get('delete_date')
|
|
210
206
|
|
|
211
|
-
# Check current in_use status (check dynamically from reservations table)
|
|
212
|
-
is_in_use, reservation_id = get_disk_in_use_status(disk_name, user_id, config)
|
|
213
|
-
|
|
214
207
|
disks.append({
|
|
215
208
|
'name': disk_name,
|
|
216
209
|
'size_gb': size_gb,
|
|
@@ -219,13 +212,37 @@ def list_disks(user_id: str, config: Config) -> List[Dict]:
|
|
|
219
212
|
'last_used': last_used,
|
|
220
213
|
'snapshot_count': snapshot_count,
|
|
221
214
|
'pending_snapshot_count': pending_snapshot_count,
|
|
222
|
-
'in_use':
|
|
215
|
+
'in_use': bool(disk_item.get('in_use', False)),
|
|
223
216
|
'is_backing_up': is_backing_up,
|
|
224
|
-
'reservation_id':
|
|
217
|
+
'reservation_id': str(disk_item.get('attached_to_reservation', '')) or None,
|
|
225
218
|
'is_deleted': is_deleted,
|
|
226
219
|
'delete_date': delete_date,
|
|
227
220
|
})
|
|
228
221
|
|
|
222
|
+
# Batch check: find all active reservations with disk_name set (single query)
|
|
223
|
+
try:
|
|
224
|
+
reservations_table = dynamodb.Table(config.reservations_table)
|
|
225
|
+
active_disks = {}
|
|
226
|
+
for status in ["active", "preparing", "queued", "pending"]:
|
|
227
|
+
resp = reservations_table.query(
|
|
228
|
+
IndexName="UserStatusIndex",
|
|
229
|
+
KeyConditionExpression="user_id = :uid AND #s = :status",
|
|
230
|
+
ExpressionAttributeNames={"#s": "status"},
|
|
231
|
+
ExpressionAttributeValues={":uid": user_id, ":status": status},
|
|
232
|
+
ProjectionExpression="reservation_id, disk_name",
|
|
233
|
+
)
|
|
234
|
+
for item in resp.get("Items", []):
|
|
235
|
+
dn = item.get("disk_name")
|
|
236
|
+
if dn:
|
|
237
|
+
active_disks[dn] = str(item.get("reservation_id", ""))[:8]
|
|
238
|
+
|
|
239
|
+
for disk in disks:
|
|
240
|
+
if disk["name"] in active_disks:
|
|
241
|
+
disk["in_use"] = True
|
|
242
|
+
disk["reservation_id"] = active_disks[disk["name"]]
|
|
243
|
+
except Exception:
|
|
244
|
+
pass
|
|
245
|
+
|
|
229
246
|
# Sort by last_used (most recent first)
|
|
230
247
|
disks.sort(key=lambda d: d['last_used'] or datetime.min.replace(tzinfo=timezone.utc), reverse=True)
|
|
231
248
|
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gpu-dev"
|
|
7
|
-
version = "0.6.
|
|
7
|
+
version = "0.6.5"
|
|
8
8
|
description = "CLI tool for PyTorch GPU developer server reservations"
|
|
9
9
|
authors = [{name = "PyTorch Team"}]
|
|
10
10
|
readme = "cli-tools/gpu-dev-cli/README.md"
|
|
@@ -166,7 +166,7 @@ class AwsBackend:
|
|
|
166
166
|
"no_persistent_disk": params.get("no_persistent_disk", False),
|
|
167
167
|
"github_user": params.get("github_user", ""),
|
|
168
168
|
"preserve_entrypoint": params.get("preserve_entrypoint", False),
|
|
169
|
-
"version": "
|
|
169
|
+
"version": __import__("gpu_dev").__version__,
|
|
170
170
|
}
|
|
171
171
|
if params.get("disk_name"):
|
|
172
172
|
message["disk_name"] = params["disk_name"]
|
|
@@ -186,8 +186,8 @@ resource "aws_lambda_function" "reservation_processor" {
|
|
|
186
186
|
HOSTED_ZONE_ID = local.effective_domain_name != "" ? local.hosted_zone_id : ""
|
|
187
187
|
SSH_DOMAIN_MAPPINGS_TABLE = local.effective_domain_name != "" ? aws_dynamodb_table.ssh_domain_mappings.name : ""
|
|
188
188
|
SSL_CERTIFICATE_ARN = local.effective_domain_name != "" ? aws_acm_certificate.wildcard[0].arn : ""
|
|
189
|
-
LAMBDA_VERSION = "0.6.
|
|
190
|
-
MIN_CLI_VERSION = "0.6.
|
|
189
|
+
LAMBDA_VERSION = "0.6.5"
|
|
190
|
+
MIN_CLI_VERSION = "0.6.5"
|
|
191
191
|
# Comma-separated GPU types that require --spot flag, or "all" for every type.
|
|
192
192
|
# Empty = no spot types (on-demand / reserved). Set per-workspace.
|
|
193
193
|
ASG_NAME_PREFIX = "${var.prefix}-gpu-nodes"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/availability_updater/index.py
RENAMED
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/migration/tag_largest_snapshots.py
RENAMED
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_expiry/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/reservation_processor/index.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/lambda/shared/k8s_resource_tracker.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/migrations/migrate_disks_to_named.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.6.4 → gpu_dev-0.6.5}/terraform-gpu-devservers/templates/user-data-self-managed.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|