-
Notifications
You must be signed in to change notification settings - Fork 14
89 lines (87 loc) · 3.8 KB
/
ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Based on https://github.com/vsg-dev/VulkanSceneGraph/blob/master/.github/workflows/ci.yml
name: CI
on:
push:
pull_request:
env:
JuliaVersion: 1.6
VulkanSDKVersion: 1.3.239.0
JULIA_GITHUB_ACTIONS_CI: ON
jobs:
ubuntu-latest-x64:
runs-on: ubuntu-latest
env:
VULKAN_SDK: $GITHUB_WORKSPACE/../$VulkanSDKVersion/x86_64
steps:
- uses: actions/checkout@v4
- name: Download & Extract Vulkan SDK
run: |
wget --no-cookies -O ../vulkansdk-linux-x86_64-${{env.VulkanSDKVersion}}.tar.gz https://sdk.lunarg.com/sdk/download/${{env.VulkanSDKVersion}}/linux/vulkansdk-linux-x86_64-${{env.VulkanSDKVersion}}.tar.gz
tar -zxf ../vulkansdk-linux-x86_64-${{env.VulkanSDKVersion}}.tar.gz -C ../
- name: Install xvfb for GLFW
run: sudo apt-get install xvfb && Xvfb :99 &
- uses: julia-actions/setup-julia@v1
with:
version: ${{env.JuliaVersion}}
arch: x64
- uses: julia-actions/julia-buildpkg@latest
- uses: julia-actions/julia-runtest@latest
env:
DISPLAY: :99
- uses: julia-actions/julia-uploadcodecov@latest
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# windows-latest-x64:
# runs-on: windows-latest
# steps:
# - uses: actions/checkout@v4
# - name: Set Environment variables
# run: echo "VULKAN_SDK=C:\VulkanSDK\${{env.VulkanSDKVersion}}" >> $GITHUB_ENV
# - name: Download & Install Vulkan SDK
# run: |
# Invoke-WebRequest -Uri https://sdk.lunarg.com/sdk/download/${{env.VulkanSDKVersion}}/windows/VulkanSDK-${{env.VulkanSDKVersion}}-Installer.exe -OutFile ../vulkan-sdk-${{env.VulkanSDKVersion}}.exe
# $installer = Start-Process -FilePath ../vulkan-sdk-${{env.VulkanSDKVersion}}.exe -Wait -PassThru -ArgumentList @("/S");
# $installer.WaitForExit();
# Invoke-WebRequest -Uri https://sdk.lunarg.com/sdk/download/latest/windows/vulkan-runtime.exe -OutFile ../vulkan-runtime.exe
# $installer = Start-Process -FilePath ../vulkan-runtime.exe -Wait -PassThru -ArgumentList @("/S");
# $installer.WaitForExit();
# - uses: julia-actions/setup-julia@v1
# with:
# version: ${{env.JuliaVersion}}
# arch: x64
# - uses: julia-actions/julia-buildpkg@latest
# - uses: julia-actions/julia-runtest@latest
# env:
# DISPLAY: :99
# - uses: julia-actions/julia-uploadcodecov@latest
# env:
# CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
macos-latest-x64:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Set Environment variables
run: |
VULKAN_SDK=$GITHUB_WORKSPACE/../vulkansdk-macos-${{env.VulkanSDKVersion}}/macOS
echo VULKAN_SDK=$VULKAN_SDK >> $GITHUB_ENV
echo JULIA_VULKAN_SDK_SEARCH_PATH=$VULKAN_SDK/lib >> $GITHUB_ENV
echo VK_LAYER_PATH=$VULKAN_SDK/share/vulkan/explicit_layer.d >> $GITHUB_ENV
echo VK_ICD_FILENAMES=$VULKAN_SDK/share/vulkan/icd.d/MoltenVK_icd.json >> $GITHUB_ENV
echo JULIA_VULKAN_LIBNAME=libvulkan.1.dylib >> $GITHUB_ENV
- name: Download & Extract Vulkan SDK
run: |
wget --no-cookies -O ../vulkansdk-macos-${{env.VulkanSDKVersion}}.dmg https://sdk.lunarg.com/sdk/download/${{env.VulkanSDKVersion}}/mac/vulkansdk-macos-${{env.VulkanSDKVersion}}.dmg
hdiutil attach ../vulkansdk-macos-${{env.VulkanSDKVersion}}.dmg
cp -r /Volumes/vulkansdk-macos-${{env.VulkanSDKVersion}} ../
hdiutil detach /Volumes/vulkansdk-macos-${{env.VulkanSDKVersion}}
- uses: julia-actions/setup-julia@v1
with:
version: ${{env.JuliaVersion}}
arch: x64
- uses: julia-actions/julia-buildpkg@latest
- uses: julia-actions/julia-runtest@latest
env:
DISPLAY: :99
- uses: julia-actions/julia-uploadcodecov@latest
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}