Add Vulkan tutorial shaders to lazy check

This commit is contained in:
Igor Shaposhnik
2021-05-20 15:14:09 +03:00
committed by Dzmitry Malyshau
parent 72fca17dbc
commit 6c4012f9c4

View File

@@ -44,3 +44,35 @@ jobs:
run: cargo build --release --features spv-in,msl-out --bin naga
- name: Convert shaders
run: for file in data/*.spv ; do echo "Translating" ${file} && target/release/naga --validate 27 ${file} ${file}.metal; done
parse-vulkan-tutorial-shaders:
name: Parse Sascha Willems Vulkan tutorial shaders
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
- name: Download shaders
run: git clone https://github.com/SaschaWillems/Vulkan.git
- name: Build Naga
run: cargo build --release --features spv-in,msl-out --bin naga
- name: Convert metal shaders
run: |
# No needed to stop workflow if we can't validate one file
set +e
touch counter
SUCCESS_RESULT_COUNT=0
FILE_COUNT=0
mkdir -p out
find "Vulkan/data/shaders/glsl/" -name '*.spv' | while read fname;
do
echo "Convert: $fname"
FILE_COUNT=$((FILE_COUNT+1))
target/release/naga --validate 27 $(realpath ${fname}) out/$(basename ${fname}).metal
if [[ $? -eq 0 ]]; then
SUCCESS_RESULT_COUNT=$((SUCCESS_RESULT_COUNT + 1))
fi
echo "Result: $(expr $FILE_COUNT - $SUCCESS_RESULT_COUNT) / $FILE_COUNT" > counter
done
cat counter