Feature/preamble and output#5
Merged
Merged
Conversation
Preamble: add optional ssh.preamble list (or single string) of PowerShell commands that run after SSH connects but before the agent is uploaded/started. Each command is sent via -EncodedCommand for safe quoting. Non-zero exit aborts the run immediately. Purpose: set up the test environment (create dirs, disable Defender, etc.) using native Windows commands. Output flag: add -o/--output FILE. Silences all stdout during the run; writes only the results summary (and failure details on failure) to the specified file. Useful for CI artefacts where interleaved progress output is unwanted. Also extracts _render_summary() helper and adds 15 unit tests covering both features including edge cases (preamble failure, string vs list, xfail counts, file content on pass vs fail). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove pytest dev dependency and tests/ directory - Move C:\ci creation, Defender disable, and firewall rule from workflow PowerShell steps into ssh.preamble of the CI config (run post-SSH-connect as the admin ci_runner user) - Trim "Create agent drop directory" step to only C:\tmp (needed before SSH key copy); remove "Disable Defender and open callback port" step entirely - Add feature validation inside the docker container: --help grep for -o flag (no server needed), integration test runs with -o /tmp/ci-results.txt and verifies the output file contains the expected summary on success Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The prebuilt container image has a pinned version of adaptix-testing baked in. Add uv tool install --force /workspace at the top of the container script to overwrite it with the current branch's code before any tests run. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
uv is not on PATH inside the Docker container's bash -c context. pip3 install --break-system-packages is reliable and drops adaptix-testing into /usr/local/bin which is prepended to PATH immediately after. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
uv is not on PATH when the container runs at runtime; pip3 installs the editable package directly to /usr/local/bin which is always available. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pip3 and uv are not reliably on PATH in the pre-built container because apt-get autoremove stripped python3-pip during image build. The uv venv created at image-build time already has all dependencies; pointing its Python directly at /workspace/run.py tests the current branch without needing any install step. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Hardcoding the venv path assumed 'python' binary name and exact tool directory name. Reading the shebang of the pre-baked adaptix-testing entry point gives the correct interpreter path directly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The adaptix-container image now preserves pip3 (autoremove removed), so uv is available. PATH is set before the uv call so the reinstall and the adaptix-testing entry point are both found. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.
No description provided.