test: fully-automated integration run against disposable Vaultwarden#2
Open
bsorescu wants to merge 1 commit into
Open
test: fully-automated integration run against disposable Vaultwarden#2bsorescu wants to merge 1 commit into
bsorescu wants to merge 1 commit into
Conversation
Implements the FUTURE WORK plan from bitwarden_integration.sh: vaultwarden + caddy TLS proxy (the 2026+ bw CLI refuses plain http servers, so an internal self-signed cert is required), fixture account registered via the identity API (vaultwarden_bootstrap.py implements the client-side registration crypto bw doesn't expose), bw CLI isolated via BITWARDENCLI_APPDATA_DIR so the developer's real config is untouched. No repository secrets needed; works on fork PRs. Verified locally: full bitwarden_integration.sh suite 19/19 PASSED end-to-end from a cold start (containers, registration, login, suite, cleanup) on macOS + colima. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015CDSY4yJXvof9Am8acxzHf
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.
Implements the FUTURE WORK plan from the header of
tests/bitwarden_integration.sh: a fully-automated run against a disposable local Vaultwarden — no real vault, no repository secrets, works on fork PRs.Pipeline (
tests/vaultwarden_harness.sh):vaultwarden/servercontainer (volatile storage) + Caddy TLS proxy — the 2026+bwCLI refuses plainhttp://servers, so an internal self-signed cert is required (NODE_TLS_REJECT_UNAUTHORIZED=0scoped to the fixture run only).tests/vaultwarden_bootstrap.pyimplements the client-side registration cryptobwdoesn't expose (PBKDF2 master key → HKDF stretch → EncString type 2 protected sym key → RSA keypair). Fixture credentials are committable constants, not secrets.bwCLI pointed at the disposable server through an isolatedBITWARDENCLI_APPDATA_DIR— the developer's real bw config is untouched.tests/bitwarden_integration.shruns unchanged.Verified: cold-start end-to-end on macOS + colima — full suite 19/19 PASSED, automatic container/network/tempdir cleanup on exit (
--keepto inspect).A GitHub Actions job wiring this up should be a ~20-line follow-up once the provider lands.
🤖 Generated with Claude Code