.github: workflows: Stabilize 1ES release builds - #977
René Dudfield (illume) wants to merge 5 commits into
Conversation
8639682 to
f927079
Compare
The Azure Linux 3 image does not include make. The source-package packaging hook calls make backend, so release build 247859 stops after the earlier pip routing fix allows packaging to proceed. Install missing make and binutils packages through tdnf while preserving the existing root and sudo paths. Verify both commands before starting the longer application build.
Release build 247970 completed packaging and passed all 20 bundled-tool checks, but Electron could not launch because the Azure Linux image lacks libnspr4.so and the wider desktop runtime library set. Run the post-build verification directly while retaining the package and tool validation. Restore application smoke after the release image provides the required Electron runtime libraries.
The source-package install recreates nested node_modules directories and materializes Headlamp go.sum files only after Cache@2 resolves its keys. The prior caches were therefore ineffective or failed before installation. Cache npm downloads with explicit tracked lockfiles. Key the Go module cache from tracked source, lockfile, and patch inputs while retaining architecture and toolchain isolation.
Network isolation blocks direct Python and Go package downloads during the source-package install. Pip lacked the approved feed, while Go toolchain resolution was redirected to the centralized proxy onboarding error. Route pip through the Microsoft package feed and enable the 1ES internal Go module proxy. Preserve the injected Go proxy instead of overriding it with public endpoints.
f927079 to
1e299c4
Compare
|
Folded build follow-up: Linux build 248000 completed application build and ESRP signing, then hit the default 60-minute HostJob timeout during injected 1ES security scans. The 120-minute timeout is folded into the Linux prerequisites commit. MacOS build 248001 passed both cache repairs and then lost contact with the hosted Intel agent during application compilation, with no application error in the task log. Replacement runs: Linux https://dev.azure.com/AzureContainerUpstream/58dfe0a2-9ac7-4bb4-ab22-b0af37105551/_build/results?buildId=248026 and macOS https://dev.azure.com/AzureContainerUpstream/58dfe0a2-9ac7-4bb4-ab22-b0af37105551/_build/results?buildId=248027. |
|
Linux build 248026 passed after the folded timeout fix. MacOS build 248027 lost a second hosted agent at the same frontend/Electron packaging boundary. Commit |
42b95b3 to
2f9475b
Compare
|
The 768 MB probe in macOS build 248159 failed cleanly at approximately 765 MB with V8 heap OOM on all three attempts. Commit |
6fe1bb2 to
9a2e863
Compare
Headlamp's Vite production build exhausts constrained CI memory and has caused Intel macOS hosted agents to stop responding. Carry the reviewed five-commit upstream Rsbuild stack so frontend builds run with a 768 MB heap. The upstream stack establishes builder-neutral Electron and SPA contracts before the switch, then covers nested non-root routes and a real default development-server WebSocket handshake after their Vite failures. Retain the single-pass Electron packaging patch and 2 GB workflow cap so memory remains for Electron Builder and the Azure Pipelines agent. Refresh the aggregate patch integrity and installed-source lifecycle contract.
9a2e863 to
16a9b89
Compare
Summary
Stabilize the Linux and macOS 1ES release builds after the Headlamp source-package migration.
Linux
makeandbinutilsbefore packaging.macOS
node_modulesdirectories.0104, rebased onto the pinned Headlamp revision and existing AKS patch series.Verification
bash -n.npm run test:headlamp-patches: 23 passed.npm run test:build: 92 passed, 1 skipped.0104now carries the latest five-commit Headlamp #7712 stack, including tests-first Electron and SPA contracts, nested-route coverage, and a real default-server WebSocket handshake. Patch0105removes the redundant unpacked Electron Builder pass while preserving package preparation and build hooks. macOS 1ES build 248183 confirmed the single-pass path reached macOS code signing before Azure lost the Intel agent. Build 248218 validates the refreshed Headlamp patch on commit16a9b899b.git diff --checkpassed; the changed workflow and package metadata have no editor diagnostics.Commit structure
Linux build prerequisites.
Linux application-smoke exception.
macOS npm and Go cache repair.
macOS Python and Go package routing.
Rebased Headlamp Rsbuild source patch and macOS packaging cap.