deps: Add toolshed-actions updater to envoy-dependency workflow#44955
Draft
Copilot wants to merge 2 commits into
Draft
deps: Add toolshed-actions updater to envoy-dependency workflow#44955Copilot wants to merge 2 commits into
Copilot wants to merge 2 commits into
Conversation
Agent-Logs-Url: https://github.com/envoyproxy/envoy/sessions/e4ef022b-d705-484d-b43d-b79821c61b04 Co-authored-by: phlax <454682+phlax@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add bespoke dependency updater for toolshed actions
deps: Add toolshed-actions updater to envoy-dependency workflow
May 8, 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.
Dependabot doesn't reliably update
envoyproxy/toolshed/actions/...@<sha>refs in Envoy — particularly those nested inside composite action definitions — because they don't surface as standardgithub-actionsdependencies. This adds a bespoketoolshed-actionstask to the existingenvoy-dependencydispatch workflow to handle these updates.Changes
toolshed-actionstoworkflow_dispatch.inputs.taskchoices inenvoy-dependency.ymlupdate-toolshed-actionswith three resolution modes via the existingversioninput:actions-v*release fromenvoyproxy/toolshedactions-v*tag → resolves that tag to its commit SHA via the GitHub commits APIactions-v*tag if one existsactions-v*tag, ensures every updated line carries a# actions-vX.Y.Ztrailing comment; when dispatching a raw unmapped SHA, strips any stale comment.github/workflows/containing toolshed action refs; usesperl -i -pewith$ENV{}interpolation for safe, deterministic substitutionenvoyproxy/toolshed/actions/github/prwith the same commit/branch/title conventions as other dependency update jobsExample resulting line after an update with a known release SHA:
And after dispatching a raw unmapped SHA (no semver comment appended):
Original prompt
Implement a new bespoke dependency updater in
envoyproxy/envoyfor pinnedenvoyproxy/toolshed/actions/...@SHAreferences that Dependabot does not reliably update.Context:
# actions-v0.4.12.github-actions, but some toolshed action usages are nested / defined in ways that do not appear as normal action dependencies to the updater..github/workflows/envoy-dependency.ymlthat supports custom dependency update tasks likebazel,bazel-api,build-image, andcheck..github/workflows/_release.yml.Requested change:
.github/workflows/envoy-dependency.ymlwith a new workflow_dispatch task option namedtoolshed-actions.toolshed-actions.envoyproxy/toolshed/actions/...@<sha>in Envoy.versiondispatch input as an override:versionis empty: resolve the latestactions-v*release/tag fromenvoyproxy/toolshed.versionlooks like anactions-v*tag: resolve that tag to its commit SHA.versionlooks like a 40-char commit SHA: use that SHA directly.actions-v*tag, ensure the updated line has a trailing comment exactly like# actions-vX.Y.Z.actions-v*tag, the updated line should have no semver comment.# actions-v...comment to an unmapped SHA, remove the stale comment.actions-v*tag, add the semver comment.Implementation guidance:
uses:lines.Please create a pull request in
envoyproxy/envoywith this implementation.The following is the prior conversation context from the user's chat exploration (may be truncated):
User: riddle me this - toolshed has just release a new actions-v version - why tf is dependabot not pickin it up?
Assistant: Because Dependabot is almost certainly doing exactly what you told it to do: it’s only tracking the
github-actionsecosystem, andenvoyproxy/toolshed/actions/...refs are being used as SHA-pinned third-party actions with inline comments, not version tags Dependabot can bump in the way you expect.What I found:
.github/dependabot.yml:That pattern repeats across a bunch of workflow files. The important bit is:
@2ed4461f62fe3cf80196c05bea0d7dc39f15cf26# actions-v0.4.12Dependabot updates the ref, not the comment. So if it’s not opening a PR, the likely reason is one of these:
The new toolshed release/tag doesn’t resolve as an update for the exact action ref format Dependabot sees
envoyproxy/toolshed/actions/jqenvoyproxy/toolshed/actions/github/remntThe repo is pinned to a commit SHA, and Dependabot only updates when it can map that SHA to a newer release/tag
**The new release may not satisfy GitHub Actions versio...
This pull request was created from Copilot chat.