From 605d404db0cf675582be6ebf20124de53bf13043 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sat, 24 Jan 2026 14:09:33 +0000 Subject: [PATCH] Install `yq` directly from GitHub release --- .github/workflows/__build-mode-autobuild.yml | 13 ++++--------- pr-checks/sync.py | 19 ++++++------------- 2 files changed, 10 insertions(+), 22 deletions(-) diff --git a/.github/workflows/__build-mode-autobuild.yml b/.github/workflows/__build-mode-autobuild.yml index 09fa8aee5..4347905ed 100644 --- a/.github/workflows/__build-mode-autobuild.yml +++ b/.github/workflows/__build-mode-autobuild.yml @@ -76,18 +76,13 @@ jobs: with: java-version: ${{ inputs.java-version || '17' }} distribution: temurin - - name: Restore choco cache - if: runner.os == 'Windows' - uses: actions/cache@v5 - with: - key: windows-choco-cache - path: ${{ runner.temp }}/windows-choco-cache - name: Install yq if: runner.os == 'Windows' - shell: pwsh env: - CACHE_DIR: ${{ runner.temp }}/windows-choco-cache - run: choco install yq -y --stoponfirstfailure --cache-location=${env:CACHE_DIR} + YQ_PATH: ${{ runner.temp }}/yq + run: |- + gh release download --repo mikefarah/yq --pattern "yq_windows_amd64.exe" v4.50.1 -O "$YQ_PATH/yq.exe" + echo "$YQ_PATH" >> "$GITHUB_PATH" - name: Set up Java test repo configuration run: | mv * .github ../action/tests/multi-language-repo/ diff --git a/pr-checks/sync.py b/pr-checks/sync.py index fbaca470d..71f86ef52 100755 --- a/pr-checks/sync.py +++ b/pr-checks/sync.py @@ -1,7 +1,7 @@ #!/usr/bin/env python import ruamel.yaml -from ruamel.yaml.scalarstring import SingleQuotedScalarString +from ruamel.yaml.scalarstring import SingleQuotedScalarString, LiteralScalarString import pathlib import os @@ -226,23 +226,16 @@ for file in sorted((this_dir / 'checks').glob('*.yml')): installYq = is_truthy(checkSpecification.get('installYq', '')) if installYq: - steps.append({ - 'name': "Restore choco cache", - 'if': "runner.os == 'Windows'", - 'uses': 'actions/cache@v5', - 'with': { - 'key': 'windows-choco-cache', - 'path': '${{ runner.temp }}/windows-choco-cache' - } - }) steps.append({ 'name': 'Install yq', 'if': "runner.os == 'Windows'", - 'shell': 'pwsh', 'env': { - 'CACHE_DIR': '${{ runner.temp }}/windows-choco-cache' + 'YQ_PATH': '${{ runner.temp }}/yq' }, - 'run': 'choco install yq -y --stoponfirstfailure --cache-location=${env:CACHE_DIR}', + 'run': LiteralScalarString( + 'gh release download --repo mikefarah/yq --pattern "yq_windows_amd64.exe" v4.50.1 -O "$YQ_PATH/yq.exe"\n' + 'echo "$YQ_PATH" >> "$GITHUB_PATH"' + ), }) # If container initialisation steps are present in the check specification,