From 4ffe414b96f2d40cdb402e8f17c830f3d1083f07 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 13 Jun 2026 23:50:10 +0000 Subject: [PATCH] Sanitize runner image metadata in cache key input --- pre_cache_action.sh | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/pre_cache_action.sh b/pre_cache_action.sh index 4283bae..e0b2e16 100755 --- a/pre_cache_action.sh +++ b/pre_cache_action.sh @@ -101,13 +101,20 @@ value="${packages} @ ${version} ${force_update_inc}" # Include runner image metadata in cache key when available to avoid stale # cache hits when GitHub rotates images. -if [ -n "${ImageOS}" ]; then - value="${value} image_os:${ImageOS}" - log "- Runner image OS '${ImageOS}' added to value." +image_os="$(echo "${ImageOS}" | tr -cd '[:alnum:]._-')" +if [ -n "${image_os}" ]; then + value="${value} image_os:${image_os}" + log "- Runner image OS '${image_os}' added to value." +elif [ -n "${ImageOS}" ]; then + log "- Runner image OS '${ImageOS}' ignored due to unsupported characters." fi -if [ -n "${ImageVersion}" ]; then - value="${value} image_version:${ImageVersion}" - log "- Runner image version '${ImageVersion}' added to value." + +image_version="$(echo "${ImageVersion}" | tr -cd '[:alnum:]._-')" +if [ -n "${image_version}" ]; then + value="${value} image_version:${image_version}" + log "- Runner image version '${image_version}' added to value." +elif [ -n "${ImageVersion}" ]; then + log "- Runner image version '${ImageVersion}' ignored due to unsupported characters." fi # Include repositories in cache key to ensure different repos get different caches