Skip to content

ci: harden daily Docker dependency updater - #158

Open
fqjony wants to merge 5 commits into
latestfrom
ci/daily-docker-dependency-upgrades
Open

ci: harden daily Docker dependency updater#158
fqjony wants to merge 5 commits into
latestfrom
ci/daily-docker-dependency-upgrades

Conversation

@fqjony

@fqjony fqjony commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Run Docker dependency-update checks daily at 05:00 UTC.
  • Restrict the updater to Dockerfile edits and source hosts declared in that Dockerfile.
  • Replace the stale dev.kit context with generated Rabbit CI delivery metadata.

Scope

  • Changed: scheduled Docker dependency-updater workflow, Rabbit CI repository metadata, and README guidance.
  • Not changed: worker runtime behavior, image-release workflow, or dependency versions.

Validation

  • Parsed the workflow YAML and checked the embedded Bash and Node scripts.
  • Verified the non-APT inventory against the current Dockerfile.
  • Regenerated .rabbit/repo.yaml from the current GitHub delivery configuration and confirmed a stable dry run.

Open in Devin Review

Copilot AI lite review requested due to automatic review settings August 22, 2026 14:14
@fqjony
fqjony requested a review from a team August 22, 2026 14:16
@fqjony fqjony self-assigned this Aug 22, 2026
@fqjony fqjony added enhancement New feature or request dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Aug 22, 2026

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR hardens the GitHub Actions workflow that probes Dockerfile dependencies and opens an automated, Dockerfile-only update PR, and documents the updater behavior in the README.

Changes:

  • Switch the dependency updater schedule to run daily at 05:00 UTC.
  • Tighten Copilot CLI execution by validating inputs, limiting allowed URLs to those found in the Dockerfile report, and guarding against non-Dockerfile changes (including staged changes).
  • Extend the dependency report to include an inventory of Dockerfile ARG pins and URL sources, and document the updater behavior in README.md.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
README.md Documents when/how the Docker dependency updater runs and what it does.
.github/workflows/docker-dependency-updater.yml Hardens the scheduled dependency-updater workflow, adds non-APT inventory to the report, and tightens Copilot execution/guards.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Copilot AI review requested due to automatic review settings August 22, 2026 14:21

This comment was marked as resolved.

Copilot AI review requested due to automatic review settings August 22, 2026 14:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings August 22, 2026 14:35

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

Suppressed comments (1)

Previously missed (1) — in code that hasn't changed since the last review.

.github/workflows/docker-dependency-updater.yml:223

  • This step runs an inline Node script to inventory Dockerfile ARGs/URLs, but Node isn’t set up/pinned until later (actions/setup-node). That makes the probe depend on whatever Node version happens to be preinstalled on the runner image and can drift/break independently of the pinned Node 22 used later in the job.
          node <<'NODE' > "${non_apt_path}"
          const fs = require("node:fs");

          const dockerfile = fs.readFileSync(process.env.DOCKERFILE, "utf8");
          const pins = [];

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file enhancement New feature or request github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants