-
-
Notifications
You must be signed in to change notification settings - Fork 170
80 lines (69 loc) · 3.33 KB
/
dev-release.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
name: Dev Release
on: [push, workflow_dispatch]
env:
BUILD_TYPE: Release
jobs:
dev-release:
runs-on: windows-latest
strategy:
matrix:
target: [uevr]
steps:
- name: Checkout backend
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
with:
token: ${{ secrets.UESDK_PULLER }}
submodules: recursive
persist-credentials: false
- name: Configure CMake
run: cmake -S ${{github.workspace}} -B ${{github.workspace}}/build -G "Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build backend
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target ${{matrix.target}}
- name: Build plugin nullifier
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target vr-plugin-nullifier
- name: Build Lua API (shared DLL)
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target LuaVR
- name: Checkout frontend
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
with:
repository: praydog/uevr-frontend
path: frontend
persist-credentials: false
- name: Set up dotnet
uses: actions/setup-dotnet@v1
with:
dotnet-version: 6.0.x
- name: Build frontend
run: dotnet publish '${{github.workspace}}/frontend' --output '${{github.workspace}}/build/bin/${{matrix.target}}' --configuration Release
- name: Upload artifacts
uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8
with:
name: ${{matrix.target}}
path: |
${{github.workspace}}/build/bin/${{matrix.target}}/*
${{github.workspace}}/build/bin/vr-plugin-nullifier/UEVRPluginNullifier.dll
${{github.workspace}}/build/bin/LuaVR/LuaVR.dll
if-no-files-found: error
- name: Compress artifacts
run: |
echo ${{github.sha}} > ${{github.workspace}}/revision.txt
7z a ${{github.workspace}}/${{matrix.target}}.zip ${{github.workspace}}/build/bin/${{matrix.target}}/*
7z a ${{github.workspace}}/${{matrix.target}}.zip ${{github.workspace}}/build/bin/vr-plugin-nullifier/UEVRPluginNullifier.dll
7z a ${{github.workspace}}/${{matrix.target}}.zip ${{github.workspace}}/build/bin/LuaVR/LuaVR.dll
7z a ${{github.workspace}}/${{matrix.target}}.zip ${{github.workspace}}/revision.txt
- name: Hash zip
run: |
$ReleaseHash = Get-FileHash -Algorithm SHA256 ${{github.workspace}}/${{matrix.target}}.zip
$ReleaseHash.Hash | Out-File -FilePath ${{github.workspace}}/${{matrix.target}}.zip.sha256
- name: Create Release
if: github.ref == 'refs/heads/master'
uses: ncipollo/release-action@6c75be85e571768fa31b40abf38de58ba0397db5
with:
repo: UEVR-nightly
owner: praydog
token: ${{ secrets.CI_NIGHTLY }}
name: ${{format('UEVR Nightly {0} ({1})', github.run_number, github.sha)}}
tag: ${{format('nightly-{0}-{1}', github.run_number, github.sha)}}
artifacts: "${{github.workspace}}/${{matrix.target}}.zip,${{github.workspace}}/${{matrix.target}}.zip.sha256"
makeLatest: true
bodyFile: ${{github.workspace}}/nightly-body.md