Skip to content

.github: build: Stabilize macOS release pipeline - #978

Closed
René Dudfield (illume) wants to merge 1 commit into
w70/restore-macos-arm64from
fix/macos-npm-cache-key
Closed

René Dudfield (illume) wants to merge 1 commit into
w70/restore-macos-arm64from
fix/macos-npm-cache-key

Conversation

@illume

Copy link
Copy Markdown
Collaborator

Summary

Repair both blockers observed in macOS build 247846.

The Intel job failed before installation because Azure Cache@2 resolved plugins/*/package-lock.json to zero files. The ARM64 job could not allocate an agent from the configured GitHub-hosted Agents pool.

Changes

  • Replace the failing npm lockfile wildcard with explicit tracked lockfiles for the root, Headlamp source helper, and installed plugins.
  • Bump the immutable npm cache namespace from v1 to v2.
  • Disable Build_arm64 at the stage boundary while no Apple Silicon agent is available. Its signing, notarization, and qualification stages remain dependency-gated.
  • Strengthen the pipeline regression test to reject wildcard npm cache inputs and require the ARM availability gate.

Verification

  • All 5 focused build/macos-pipeline.test.ts tests pass.
  • The edited YAML parses successfully.
  • Azure Pipelines definition 1000 preview compiled the exact YAML and expanded both npm cache tasks. No run was created by preview.
  • Every explicit cache input is tracked at checkout.
  • git diff --check and editor diagnostics pass.
  • Direct self-review confirms Build_x64 remains independent and enabled.

Limitation

This restores the Intel release path; it does not produce an ARM64 artifact. The project GitHub-hosted Agents pool currently reports zero agents, and prior build 247834 could not route the ARM64 image through the standard Azure Pipelines pool. Restore ARM64 only after a live Apple Silicon agent is provisioned and qualified.

Build 247846 failed the Intel job because Cache@2 resolved the plugin
lockfile wildcard to zero files. Its ARM64 job could not start because the
configured GitHub-hosted Agents pool currently has no available agents.

Use explicit tracked lockfiles for both npm download cache keys and bump
the immutable cache prefix. Disable ARM64 at the stage boundary, matching
the release branch behavior, while leaving the independent Intel path and
all dependent signing gates intact.
@illume

Copy link
Copy Markdown
Collaborator Author

Superseded by the direct macOS cache fix in #977. No commits from this experimental branch were cherry-picked.

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