gpu-dev 0.5.15__tar.gz → 0.5.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.5.15 → gpu_dev-0.5.16}/PKG-INFO +1 -1
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/PKG-INFO +1 -1
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/auth.py +18 -1
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/pyproject.toml +1 -1
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/.github/workflows/no-gitlinks.yml +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/.github/workflows/publish.yml +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/.gitignore +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/CLAUDE.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/PROGRESS.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/PR_DESCRIPTION.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/TODO.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/admin/README.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/admin/generate_stats.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/admin/requirements.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/README.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/ZERO_CONFIG_SETUP.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/SOURCES.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/dependency_links.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/entry_points.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/requires.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/top_level.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/__init__.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/cli.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/config.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/disks.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/interactive.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/name_generator.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/reservations.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev_cli/ssh_proxy.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/minimal-iam-policy.json +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/cli-tools/scripts/clear_stale_disk_locks.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/docs/USER_GUIDE.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/docs/devgpu-features.html +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/docs/docker-mark-blue.svg +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/docs/icons8-cursor-ai.svg +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/post.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/setup.cfg +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/.claude/skills/deploy.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/.terraform.lock.hcl +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/README.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/alb.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/availability.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/backend.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/.dockerignore +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/Dockerfile +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/backup-dotfiles +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/bash_profile +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/bashrc +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/bashrc_ext +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/build-with-efa.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/dotfiles-shutdown-handler +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/list-dotfile-versions +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/motd_script +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/nproc_wrapper +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/profile +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/restore-dotfiles +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/restore-dotfiles-version +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/setup-dotfiles-persistence +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/shell_env +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/ssh_config +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/zprofile +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/zshrc +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/zshrc_ext +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker-build.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker-example/Dockerfile +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker-example/hello.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/ecr.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/efs.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/eks.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/expiry.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/git-cache.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/kubernetes.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/availability_updater/index.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/availability_updater/requirements.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/migration/tag_largest_snapshots.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/reservation_expiry/index.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/reservation_expiry/requirements.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/reservation_processor/buildkit_job.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/reservation_processor/index.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/reservation_processor/requirements.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/__init__.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/alb_utils.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/dns_utils.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/k8s_client.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/k8s_resource_tracker.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/requirements.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/shared/snapshot_utils.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/main.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/mig-config.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/mig-parted-config.yaml +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py.bak +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/migrations/check_snapshots.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/migrations/migrate_disks_to_named.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/migrations/run_backfill.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/monitoring.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/outputs.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/pyproject.toml +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/queue.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/route53.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/s3-disk-contents.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/scripts/CLEANUP_GUIDE.md +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/scripts/detect_empty_volumes.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/scripts/ec2_avail_probe.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/scripts/inspect_user_data.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/ssh-proxy/Dockerfile +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/ssh-proxy/proxy.py +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/ssh-proxy/requirements.txt +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/ssh-proxy-service.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/ssh-proxy.tf +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/switch-to.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/templates/al2023-cpu-user-data.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/templates/al2023-user-data.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/templates/user-data-self-managed.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/templates/user-data.sh +0 -0
- {gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/variables.tf +0 -0
|
@@ -19,7 +19,7 @@ _SSH_CACHE_PATH = Path(os.path.expanduser("~/.config/gpu-dev/ssh-validation-cach
|
|
|
19
19
|
# Cache for authenticate_user. STS GetCallerIdentity is stable per AWS profile and slow under SSO
|
|
20
20
|
# (~500ms-1.5s). Cache for 24h keyed by AWS_PROFILE; if creds rotate the user_id rarely changes,
|
|
21
21
|
# and the next AWS call (DDB/SQS) will surface a credential error if it does.
|
|
22
|
-
_AUTH_CACHE_TTL_SECONDS =
|
|
22
|
+
_AUTH_CACHE_TTL_SECONDS = 60 * 60
|
|
23
23
|
_AUTH_CACHE_PATH = Path(os.path.expanduser("~/.config/gpu-dev/auth-cache.json"))
|
|
24
24
|
|
|
25
25
|
|
|
@@ -64,6 +64,22 @@ def _save_auth_cache(github_user: str, result: Dict[str, Any]) -> None:
|
|
|
64
64
|
pass
|
|
65
65
|
|
|
66
66
|
|
|
67
|
+
def clear_auth_cache() -> None:
|
|
68
|
+
"""Drop the cached auth entry for the current AWS profile. Call this after a credential
|
|
69
|
+
error to force the next authenticate_user() to re-hit STS."""
|
|
70
|
+
try:
|
|
71
|
+
if not _AUTH_CACHE_PATH.exists():
|
|
72
|
+
return
|
|
73
|
+
with open(_AUTH_CACHE_PATH) as f:
|
|
74
|
+
data = json.load(f)
|
|
75
|
+
if _auth_cache_key() in data:
|
|
76
|
+
del data[_auth_cache_key()]
|
|
77
|
+
with open(_AUTH_CACHE_PATH, "w") as f:
|
|
78
|
+
json.dump(data, f)
|
|
79
|
+
except Exception:
|
|
80
|
+
pass
|
|
81
|
+
|
|
82
|
+
|
|
67
83
|
def _load_ssh_cache(github_user: str) -> Optional[Dict[str, Any]]:
|
|
68
84
|
"""Return cached validation if it's fresh and matches the configured github_user, else None."""
|
|
69
85
|
try:
|
|
@@ -125,6 +141,7 @@ def authenticate_user(config: Config) -> Dict[str, Any]:
|
|
|
125
141
|
_save_auth_cache(github_user, result)
|
|
126
142
|
return result
|
|
127
143
|
except Exception as e:
|
|
144
|
+
clear_auth_cache()
|
|
128
145
|
raise RuntimeError(f"AWS authentication failed: {e}")
|
|
129
146
|
|
|
130
147
|
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gpu-dev"
|
|
7
|
-
version = "0.5.
|
|
7
|
+
version = "0.5.16"
|
|
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"
|
|
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.5.15 → gpu_dev-0.5.16}/cli-tools/gpu-dev-cli/gpu_dev.egg-info/dependency_links.txt
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
|
|
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.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/docker/setup-dotfiles-persistence
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
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/availability_updater/index.py
RENAMED
|
File without changes
|
|
File without changes
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/migration/tag_largest_snapshots.py
RENAMED
|
File without changes
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/lambda/reservation_expiry/index.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/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.5.15 → gpu_dev-0.5.16}/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.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/migrations/backfill_snapshot_contents.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/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
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/templates/al2023-cpu-user-data.sh
RENAMED
|
File without changes
|
|
File without changes
|
{gpu_dev-0.5.15 → gpu_dev-0.5.16}/terraform-gpu-devservers/templates/user-data-self-managed.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|