From 78562d4bed924b3f9f76349e132e225d9039a646 Mon Sep 17 00:00:00 2001 From: Alexander Artemenko Date: Wed, 28 Feb 2024 00:28:17 +0300 Subject: [PATCH 1/2] Fix recreating of qlfile inside qlot environment cache. --- action.yml | 45 ++++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/action.yml b/action.yml index 569f24e..0d4bf52 100644 --- a/action.yml +++ b/action.yml @@ -322,6 +322,34 @@ runs: path: ${{ inputs.roswell-cache-paths }} key: ${{ steps.roswell-cache-restore.outputs.cache-primary-key }} + # We really need this step go before cache restore, + # because it changes qlfile and cache key depends on it. + - name: Ensure qlfile exists + shell: lispsh -eo pipefail {0} + run: | + echo ::group::Ensure qlfile exists + + if [[ -n "${{ inputs.qlfile-template }}" ]]; then + echo "${{ inputs.qlfile-template }}" | $GITHUB_ACTION_PATH/templater.ros > qlfile + rm -f qlfile.lock + + echo "Created qlfile:" + echo '===============' + cat qlfile + echo '===============' + echo '' + elif [[ -e qlfile ]]; then + echo 'Here is content of qlfile:' + echo '===============' + cat qlfile + echo '===============' + echo '' + else + echo 'There is no qlfile. Creating an empty one.' + touch qlfile + fi + + echo ::endgroup:: - if: inputs.cache == 'true' name: Restore Qlot Environment @@ -342,23 +370,6 @@ runs: shell: lispsh -eo pipefail {0} run: | echo ::group::Create Qlot Environment - - if [[ -n "${QLFILE_TEMPLATE}" ]]; then - echo "${QLFILE_TEMPLATE}" | $GITHUB_ACTION_PATH/templater.ros > qlfile - rm -f qlfile.lock - fi - - if [[ -e qlfile ]]; then - echo 'Here is content of qlfile:' - echo '===============' - cat qlfile - echo '===============' - echo '' - else - echo 'There is no qlfile. Creating an empty one.' - touch qlfile - fi - qlot install echo ::endgroup:: env: From d1afc4a2c7aa5678a22862fdb663384bbffd8078 Mon Sep 17 00:00:00 2001 From: Alexander Artemenko Date: Wed, 28 Feb 2024 01:17:35 +0300 Subject: [PATCH 2/2] Update changelog. --- changelog.lisp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/changelog.lisp b/changelog.lisp index ea7173c..4ef527a 100644 --- a/changelog.lisp +++ b/changelog.lisp @@ -8,6 +8,15 @@ (defchangelog (:ignore-words ("ASDF" "PATH" "HOME")) + (4.0.2 2024-02-27 + " +# Fixed + +* Fix recreating of qlfile inside qlot environment cache. + + When some jobs used qlfile-template argument + caching, a template application + result was cached and caused an error during the next run. +") (4.0.1 2024-02-25 " # Fixed