ci: add integration tests against live API#181
Merged
sachiniyer merged 2 commits intomainfrom Mar 11, 2026
Merged
Conversation
Add a Rust integration test suite (tests/integration.rs) that exercises the CLI binary end-to-end against the Detail API, covering auth login/ logout/status, repos list, bugs list/show with filters and pagination, and scans list. Tests skip gracefully when DETAIL_API_KEY is absent, so `cargo test` works locally without a key. A new CI workflow runs these tests on pushes to main and same-repo PRs using the "integration-tests" GitHub Environment for secret scoping. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
125d273 to
8357b50
Compare
💡 Codex Reviewcli/.github/workflows/api-docs.yml Lines 10 to 12 in 125d273 At the workflow level, setting only ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
sachiniyer
added a commit
that referenced
this pull request
Mar 12, 2026
## Summary - Bumps version from 0.1.10 to 0.1.11 - The release workflow will auto-tag and build artifacts when merged to main ### Changes since v0.1.10 **Features:** - Add shell tab completion via clap_complete (#182) - Add --scan-id flag to bugs list command (#184) - Add scans list command (#163) - Add scans to the skill.md for the detail CLI (#185) - Auto-detect repository in detail-bugs skill (#160) **Fixes:** - Show user-friendly error messages instead of debug output (#129) - Continue list numbering across pages instead of resetting (#130) - Add file locking to prevent concurrent config overwrites (#131) **Chores & Refactoring:** - Replace Makefile with cargo xtask (#159) - Upgrade all dependencies to latest versions (#158) - Enable comprehensive clippy lints (pedantic, nursery, restriction) (#134, #135, #144, #152, #153, #154, #155) - Add GitHub Pages workflow for API docs (#178) - Add Scalar API reference page (#177) - Add integration tests against live API (#181) - Remove alpha warning from README (#156) Co-authored-by: Claude Opus 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.
Summary
tests/integration.rs) that exercises every CLI command end-to-end against the live Detail APIDETAIL_API_KEYis absent socargo testworks locallyintegration.ymlworkflow runs on pushes to main and same-repo PRs, using theintegration-testsGitHub Environment for secret scopingSecurity
pull_requestfrom forks)DETAIL_API_KEYis scoped to theintegration-testsenvironmentSetup
Remove required reviewers from the
integration-testsenvironment in repo Settings → Environments. The environment still scopes the secret; theifcondition handles fork PR protection.Test plan
cargo teststill passes locally withoutDETAIL_API_KEY🤖 Generated with Claude Code