Skip to content

ci: auto-update workflow for new VSCode releases#4

Merged
EmbeddedAndroid merged 1 commit into
mainfrom
auto-update-action
May 14, 2026
Merged

ci: auto-update workflow for new VSCode releases#4
EmbeddedAndroid merged 1 commit into
mainfrom
auto-update-action

Conversation

@EmbeddedAndroid

Copy link
Copy Markdown
Owner

Adds .github/workflows/auto-update.yml. Daily cron at 10:42 UTC plus manual dispatch.

What it does:

  1. Resolves Microsoft's /latest/linux-/stable redirect for x64, arm64, armhf and pulls the SHA + timestamp out of each URL.
  2. Compares the resolved SHA against the recipe's current GIT_SHA. If they match, exits silently (no PR noise on no-op days).
  3. Otherwise downloads all three tarballs, sha256-sums them, extracts LICENSES.chromium.html from the x64 tarball and md5s it, and pulls the human-readable version from the embedded package.json.
  4. Renames the recipe file to vscode_.bb and rewrites GIT_SHA, TIMESTAMP-, the three SRC_URI[.sha256sum] entries, and the license md5.
  5. Pushes to auto-update/vscode- and opens a PR.
  6. If the branch already exists upstream, skips with a warning (assume the prior auto-update run's PR is still pending review).

PRs are left for human review intentionally — automated bumps of opaque binary blobs are exactly the case where a human eye on the diff is valuable. CI will run the multi-arch parse + fetch matrix and the end-to-end scarthgap build on the PR so reviewers see green before merging.

GITHUB_TOKEN with contents:write + pull-requests:write is sufficient; no secrets needed.

Daily cron at 10:42 UTC + manual dispatch. Resolves Microsoft's
/latest/linux-<arch>/stable redirect for each of the three
supported arches, compares the SHA against what the recipe pins,
and if they differ:
- downloads all three tarballs
- recomputes sha256s
- re-extracts LICENSES.chromium.html and re-computes its md5
- pulls the human-readable version out of resources/app/package.json
- renames the recipe to vscode_<version>.bb and rewrites
  GIT_SHA, TIMESTAMP-*, SRC_URI[*.sha256sum] and the license md5
- opens a PR on a branch named auto-update/vscode-<version>

Skips silently if the SHA already matches, or if a branch for
that version already exists (assume a prior run's PR is still
pending review).

PRs are left for human review on purpose: bumping an opaque
proprietary binary blob is exactly the case where a human eye on
the diff is worth more than fully-automatic merge.
@EmbeddedAndroid EmbeddedAndroid merged commit c6bb398 into main May 14, 2026
22 checks passed
@EmbeddedAndroid EmbeddedAndroid deleted the auto-update-action branch May 14, 2026 21:07
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