feat: streamline dev setup DX with auto-sourced env config - #4
Merged
Conversation
rhuss
marked this pull request as draft
July 31, 2026 20:53
rhuss
force-pushed
the
fix-dev-setup
branch
2 times, most recently
from
August 1, 2026 06:49
bd4d49b to
10d0d31
Compare
rhuss
force-pushed
the
fix-dev-setup
branch
2 times, most recently
from
August 1, 2026 07:14
1b315c2 to
757f98a
Compare
rhuss
marked this pull request as ready for review
August 1, 2026 07:57
6 tasks
rhuss
force-pushed
the
fix-dev-setup
branch
2 times, most recently
from
August 1, 2026 12:11
3eabd96 to
32df1e7
Compare
DX improvements: - dev-env.sh writes scripts/.env.dev with all config (including OPENSHELL_DIR) - Makefile auto-sources scripts/.env.dev via -include (zero manual exports) - make dev-full: one command starts infra + dashboard - make dev: auto-reads config from previous dev-env.sh start OPENSHELL_DIR resolution: - Checks env var first, then scripts/.env.dev, then prompts interactively - Offers to clone NVIDIA/OpenShell if no checkout exists - Persists the path to .env.dev for future runs Robust shutdown: - Graceful stop with 10s timeout, then SIGKILL - Detects and kills orphaned gateway processes on the expected port - Force-removes Keycloak containers regardless of state - Cleans up stale PID/log/config files (preserves PKI, DB, env config) Also: fix grpcurl to use proto descriptor instead of server reflection Assisted-By: 🤖 Claude Code
Gkrumbach07
approved these changes
Aug 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Streamline the local development experience so running the full OIDC auth stack takes one command.
Before: 5 manual env var exports + 2 commands
After:
make dev-full(ormake devafter first run)What changed
scripts/dev-env.shorchestrates Keycloak (Podman), self-signed TLS, and the OpenShell gatewayscripts/.env.devvia-include(zero manual exports after first run)OPENSHELL_DIRresolved interactively on first run, with option to clone from GitHubstopcommand handles orphaned processes, stale PIDs, and dangling containersgrpcurlworkspace creation uses proto descriptor instead of server reflectionGATEWAY_CA_CERTenv varUse cases
First-time setup
make setup make dev-full # prompts for OpenShell dir, starts everythingOpen http://localhost:3000, log in with
admin@test/admin.Daily development
make dev # infra already running, config auto-loaded from scripts/.env.devAfter pulling upstream gateway changes
Clean shutdown
./scripts/dev-env.sh stop # kills gateway, removes Keycloak, cleans up orphansCheck what's running
Components started by
dev-fullstopstopgo runMerge order
This PR should be merged before PR #2 (SDK migration), which is rebased on top of it.
Test plan
make setup && make dev-fullprompts for OpenShell dir, starts everythingmake devreads config without prompts./scripts/dev-env.sh stopcleans up everything including orphaned processes./scripts/dev-env.sh rebuild-gatewayrebuilds and restarts gateway onlyadmin@test/admin🤖 Generated with Claude Code