@@ -71,40 +71,46 @@ jobs:
7171 version : ["52", "60"]
7272 fail-fast : false
7373 steps :
74- - name : Get the version from the label
75- id : label-version
76- run : |
77- echo "${{ join(github.event.pull_request.labels.*.name) }}" | grep -oP "release-\d+.\d+" | xargs > out
78- echo "LIBRARY_VERSION=$(cat out)" >> $GITHUB_OUTPUT
79- mkdir /home/runner/work/lua_libs
80- - name : Find latest artifact
74+ - name : Make lua_libs_${{ matrix.version }} directory
75+ run : mkdir /home/runner/work/lua_libs_${{ matrix.version }}/
76+ - name : Get latest ${{ matrix.version }} artifact
8177 id : latest
8278 env :
83- ARTIFACTORY_URL : ${{ format( 'https://smartthings.jfrog.io/artifactory/edge-driver-libs/{0}/', steps.label- version.outputs.LIBRARY_VERSION) }}
79+ ARTIFACTORY_URL : ' https://smartthings.jfrog.io/artifactory/edge-driver-libs/release-0.${{ matrix. version }}/ '
8480 ARTIFACTORY_USERNAME : ${{ secrets.ARTIFACTORY_USERNAME }}
8581 ARTIFACTORY_PASSWORD : ${{ secrets.ARTIFACTORY_PASSWORD }}
8682 run : |
87- wget --user=$ARTIFACTORY_USERNAME --password=$ARTIFACTORY_PASSWORD $ARTIFACTORY_URL -q -O - | grep '.zip' | awk -F' ' '{print $3"-"$4"\t"$2}' | sort -t - -k3n -k2M -k1n -k4n | tail -1 | grep -o 'lua_libs_[a-z0-9_]*.zip' | head -1 > out
83+ wget -d --user=$ARTIFACTORY_USERNAME --password=$ARTIFACTORY_PASSWORD $ARTIFACTORY_URL -q -O - > wget_output
84+ cat wget_output
85+ cat wget_output | grep '.zip' | awk -F' ' '{print $3"-"$4"\t"$2}' | sort -t - -k3n -k2M -k1n -k4n | tail -1 | grep -o 'lua_libs_[a-z0-9_]*.zip' | head -1 > out
8886 echo "ZIP_FILE=$(cat out)" >> $GITHUB_OUTPUT
8987 - name : Try to retrieve cache
9088 id : cached-libs
9189 uses : actions/cache@v3
9290 with :
93- path : ' /home/runner/work/lua_libs '
94- key : ${{ steps.latest.outputs.ZIP_FILE }}-v1
91+ path : ' /home/runner/work/lua_libs_${{ matrix.version }} '
92+ key : ${{ steps.latest.outputs.ZIP_FILE }}
9593 - name : Download and unpack specified version
9694 if : steps.cached-libs.outputs.cache-hit != 'true'
9795 env :
98- ARTIFACTORY_URL : ${{ format('https://smartthings.jfrog.io/artifactory/edge-driver-libs/{0}/{1}', steps.label- version.outputs.LIBRARY_VERSION , steps.latest.outputs.ZIP_FILE) }}
96+ ARTIFACTORY_URL : ${{ format('https://smartthings.jfrog.io/artifactory/edge-driver-libs/release-0. {0}/{1}', matrix. version, steps.latest.outputs.ZIP_FILE) }}
9997 ARTIFACTORY_USERNAME : ${{ secrets.ARTIFACTORY_USERNAME }}
10098 ARTIFACTORY_PASSWORD : ${{ secrets.ARTIFACTORY_PASSWORD }}
101- working-directory : ' /home/runner/work/lua_libs '
99+ working-directory : ' /home/runner/work/lua_libs_${{ matrix.version }} '
102100 run : |
103101 wget --user=$ARTIFACTORY_USERNAME --password=$ARTIFACTORY_PASSWORD $ARTIFACTORY_URL -O lua_libs.zip
104102 unzip lua_libs.zip
103+ - name : Verify lua_libs directory
104+ run : cat /home/runner/work/lua_libs_${{ matrix.version }}/version.lua | grep -oP "api\s*=\s*\d+"
105+ - name : Save lua libs cache
106+ if : steps.cached-libs.outputs.cache-hit != 'true'
107+ uses : actions/cache/save@v3
108+ with :
109+ path : /home/runner/work/lua_libs_${{ matrix.version }}
110+ key : lua_libs_${{ matrix.version }}
105111 - name : Set output
106112 id : cache_key
107- run : echo "CACHE_KEY=${{ steps.latest.outputs.ZIP_FILE }}-v1 " >> $GITHUB_OUTPUT
113+ run : echo "CACHE_KEY=${{ steps.latest.outputs.ZIP_FILE }}" >> $GITHUB_OUTPUT
108114
109115 run-driver-tests :
110116 runs-on : ubuntu-latest
0 commit comments