Skip to content

Reachability jobs - #641

Draft
Nishnha wants to merge 3 commits into
mainfrom
reachability-job-type
Draft

Reachability jobs#641
Nishnha wants to merge 3 commits into
mainfrom
reachability-job-type

Conversation

@Nishnha

@Nishnha Nishnha commented Jul 28, 2026

Copy link
Copy Markdown
Member

No description provided.

Nishnha and others added 3 commits July 27, 2026 18:08
Adds a `dependabot reachability` subcommand and `infra.RunReachability` that
runs the dependabot-reachability-cli as a Dependabot job: it starts the proxy
and a reachability container (the reachability image playing the updater role),
networks them so dependency fetches go through the proxy, trusts the proxy CA,
and runs `reach run` over a pre-provided input set.

Follows the update/graph command pattern; adds model.ReachabilityCommand and
unit tests for the flag wiring.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9cbd398-a2cf-426c-83a7-e42d5f9cf684
Bind-mounting the input dir fails when dependabot-cli itself runs inside a
container (e.g. `act`, or a containerized runner), because the host daemon
cannot resolve the runner-container path. Copy the input set into the container
(chowned to dependabot) and copy the outputs back out, matching the updater's
putCloneDir approach. Works under act and on real runners alike.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9cbd398-a2cf-426c-83a7-e42d5f9cf684
…ugh)

The reachability-cli should gather its own inputs rather than the Action
staging them. reachRunCommand now adds `-repo <job source>` so `reach run`
fetches the target's Dependabot alerts and dependency-graph SBOM itself, and
reachAPIEnv surfaces a token (+ GHES API URL) into the container so those calls
authenticate. In CI the calls egress through the proxy, whose github_api
handler injects the github.com git_source credential for api.github.com - so
providing that credential is enough and reach need not see the token.

A caller that pre-stages alerts.json / sbom.json still wins: reach only fetches
what is missing (the "run anywhere" property).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9cbd398-a2cf-426c-83a7-e42d5f9cf684
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant