Skip to content

Commit 55771b1

Browse files
committed
Use a cache in GitHub workflow instead of downloading Vulkan SDK with every CI run
1 parent f0dc115 commit 55771b1

1 file changed

Lines changed: 17 additions & 10 deletions

File tree

.github/workflows/linux.yaml

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,20 +29,27 @@ jobs:
2929
${{matrix.install}}
3030
cmake -E make_directory ${{runner.workspace}}/build
3131
32+
- name: Cache Vulkan SDK
33+
id: cache-vulkan
34+
uses: actions/cache@v4
35+
with:
36+
path: vulkan_sdk
37+
key: vulkan-sdk-1.4.309.0
38+
3239
- name: Prepare Vulkan SDK
3340
shell: bash
3441
run: |
35-
curl -LS -o vulkansdk.tar.xz https://sdk.lunarg.com/sdk/download/1.4.309.0/linux/vulkansdk-linux-x86_64-1.4.309.0.tar.xz
36-
mkdir -p vulkan_sdk
37-
tar xf vulkansdk.tar.xz -C vulkan_sdk
38-
rm -rf vulkansdk.tar.xz
39-
40-
export VULKAN_SDK=$GITHUB_WORKSPACE/vulkan_sdk/1.4.309.0/x86_64
41-
export PATH=$VULKAN_SDK/bin:$PATH
42-
export LD_LIBRARY_PATH=$VULKAN_SDK/lib:$LD_LIBRARY_PATH
43-
export VK_ICD_FILENAMES=$VULKAN_SDK/etc/vulkan/icd.d
44-
export VK_LAYER_PATH=$VULKAN_SDK/etc/vulkan/layer.d
42+
if [ ! -d "vulkan_sdk/1.4.309.0/x86_64" ]; then
43+
echo "Vulkan SDK not found in cache. Downloading..."
44+
curl -LS -o vulkansdk.tar.xz https://sdk.lunarg.com/sdk/download/1.4.309.0/linux/vulkansdk-linux-x86_64-1.4.309.0.tar.xz
45+
mkdir -p vulkan_sdk
46+
tar xf vulkansdk.tar.xz -C vulkan_sdk
47+
rm -f vulkansdk.tar.xz
48+
else
49+
echo "Using cached Vulkan SDK"
50+
fi
4551
52+
export VULKAN_SDK=$GITHUB_WORKSPACE/vulkan_sdk/1.4.309.0/x86_64
4653
echo "VULKAN_SDK=$VULKAN_SDK" >> $GITHUB_ENV
4754
echo "PATH=$VULKAN_SDK/bin:$PATH" >> $GITHUB_ENV
4855
echo "LD_LIBRARY_PATH=$VULKAN_SDK/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV

0 commit comments

Comments
 (0)