runner-clean: normalize http(s)_proxy to runner's advertised apt proxy - #24
#24Merged
igorpecovnik merged 1 commit intoJun 28, 2026
mainarmbian/actions:mainfrom
fix/runner-clean-normalize-proxyarmbian/actions:fix/runner-clean-normalize-proxyCopy head branch name to clipboard
Merged
runner-clean: normalize http(s)_proxy to runner's advertised apt proxy#24igorpecovnik merged 1 commit intomainarmbian/actions:mainfrom fix/runner-clean-normalize-proxyarmbian/actions:fix/runner-clean-normalize-proxyCopy head branch name to clipboard
igorpecovnik merged 1 commit into
mainarmbian/actions:mainfrom
fix/runner-clean-normalize-proxyarmbian/actions:fix/runner-clean-normalize-proxyCopy head branch name to clipboard
Conversation
…proxy A stale http_proxy in a self-hosted runner's own environment (a datacenter leftover not visible to a host-filesystem grep) leaked into builds: docker.sh forwards http_proxy into the build container, so apt on a runner with no proxy pointed at an unreachable cache (10.0.40.2:3142) and timed out — breaking image builds on non-datacenter runners (kspace, insanisfiction, ...). Make the NetBox json the single source of truth: set http_proxy/https_proxy (lower+upper) to the runner's advertised apt_proxy, or blank them when it has none. Written via $GITHUB_ENV so it overrides the runner-injected value for all later steps and docker.sh. Signed-off-by: Igor Pecovnik <igor@armbian.com>
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.
Problem
Image builds were failing on self-hosted runners that have no proxy in NetBox (e.g.
kspace,insanisfiction):The runner's json entry is empty and the workflow only sets
APT_PROXY_ADDR(also empty) — yet apt used10.0.40.2:3142. Source: a stalehttp_proxybaked into the runner's own environment (a datacenter leftover; invisible to a host-filesystem grep, survives reboots, identical across hosts because runners are provisioned the same).build'sdocker.shforwardshttp_proxyinto the build container, so apt there points at an unreachable cache and times out.Fix
runner-cleanalready resolves this runner's config from the NetBox json. Make that json the single source of truth for the generic proxy env too: sethttp_proxy/https_proxy(lower+upper) to the advertisedapt_proxy, or blank them when the runner has none. Written via$GITHUB_ENV, so it overrides whatever the runner injected, for every later step and fordocker.sh.Net effect: a stale runner proxy can no longer leak into builds. Datacenter runners (with a real
apt_proxy) are unchanged; proxy-less runners get a clean environment.Scope
Pre-existing issue (the old generated workflows hit it too). Fixing it here covers every consumer of
runner-clean@mainat once, without touching each runner's provisioning.