Skip to content

Commit ba1cdf3

Browse files
Add UWP workflow
1 parent 3d3ec99 commit ba1cdf3

File tree

1 file changed

+189
-0
lines changed

1 file changed

+189
-0
lines changed

.github/workflows/UWP.yml

Lines changed: 189 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,189 @@
1+
name: UWP
2+
'on':
3+
push:
4+
branches:
5+
- master
6+
pull_request:
7+
branches:
8+
- master
9+
jobs:
10+
XboxOne:
11+
runs-on: windows-latest
12+
steps:
13+
- name: Add msbuild to PATH
14+
uses: microsoft/setup-msbuild@v2
15+
- name: Checkout Repository
16+
uses: actions/[email protected]
17+
with:
18+
fetch-depth: 0
19+
submodules: false
20+
- name: Download ANGLE Cores, DLLs and Extract
21+
run: >
22+
curl -L "https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/Angle%%20Cores.zip" --output Angle_Cores.zip
23+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
24+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
25+
7z x Angle_Cores.zip -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores" *.* -r -y && 7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
26+
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty"
27+
shell: cmd
28+
- name: Compile ANGLE build
29+
run: |
30+
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
31+
/p:AppxBundle=Always `
32+
/p:UapAppxPackageBuildMode==SideloadOnly `
33+
/p:AppxBundlePlatforms="x64" `
34+
/p:Configuration="ReleaseANGLE" `
35+
/p:Platform="x64" `
36+
/restore
37+
shell: pwsh
38+
- name: Grab AppX package
39+
shell: cmd
40+
run: >
41+
cd pkg\msvc-uwp\x64\ReleaseANGLE\RetroArch-msvcUWP && copy /B *ReleaseANGLE.appx ..\..\RetroArch-XboxOne.appx
42+
- name: Upload AppX package
43+
uses: actions/upload-artifact@v4
44+
with:
45+
name: "RetroArch-XboxOne"
46+
path: ./pkg/msvc-uwp/x64/RetroArch-XboxOne.appx
47+
SeriesConsoles:
48+
runs-on: windows-latest
49+
steps:
50+
- name: Add msbuild to PATH
51+
uses: microsoft/setup-msbuild@v2
52+
- name: Checkout Repository
53+
uses: actions/[email protected]
54+
with:
55+
fetch-depth: 0
56+
submodules: false
57+
- name: Download and Extract DLLs
58+
run: >
59+
curl -L "https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
60+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
61+
7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
62+
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty"
63+
shell: cmd
64+
- name: Compile Mesa build
65+
run: |
66+
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
67+
/p:AppxBundle=Always `
68+
/p:UapAppxPackageBuildMode==SideloadOnly `
69+
/p:AppxBundlePlatforms="x64" `
70+
/p:Configuration="Release" `
71+
/p:Platform="x64" `
72+
/restore
73+
shell: pwsh
74+
- name: Grab AppX package
75+
shell: cmd
76+
run: >
77+
cd pkg\msvc-uwp\x64\Release\RetroArch-msvcUWP && copy /B *x64.appx ..\..\RetroArch-SeriesConsoles.appx
78+
- name: Upload AppX package
79+
uses: actions/[email protected]
80+
with:
81+
name: "RetroArch-SeriesConsoles"
82+
path: ./pkg/msvc-uwp/x64/RetroArch-SeriesConsoles.appx
83+
84+
XboxOneAllCores:
85+
runs-on: windows-latest
86+
steps:
87+
- name: Add msbuild to PATH
88+
uses: microsoft/setup-msbuild@v2
89+
- name: Checkout Repository
90+
uses: actions/[email protected]
91+
with:
92+
fetch-depth: 0
93+
submodules: false
94+
- name: Download Cores, DLLs and Extract
95+
run: >
96+
curl -L "https://buildbot.libretro.com/nightly/windows/x86_64/RetroArch_cores.7z" --output Cores.7z
97+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/Angle%%20Cores.zip" --output Angle_Cores.zip
98+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
99+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
100+
7z e Cores.7z -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\" && 7z x Angle_Cores.zip -aoa -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores" *.* -r -y && 7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
101+
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra2018_libretro.dll" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra_libretro.dll"
102+
shell: cmd
103+
- name: Compile ANGLE build
104+
run: |
105+
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
106+
/p:AppxBundle=Always `
107+
/p:UapAppxPackageBuildMode==SideloadOnly `
108+
/p:AppxBundlePlatforms="x64" `
109+
/p:Configuration="ReleaseANGLE" `
110+
/p:Platform="x64" `
111+
/restore
112+
shell: pwsh
113+
- name: Grab AppX package
114+
shell: cmd
115+
run: >
116+
cd pkg\msvc-uwp\x64\ReleaseANGLE\RetroArch-msvcUWP && copy /B *ReleaseANGLE.appx ..\..\RetroArch-XboxOne-AllCores.appx
117+
- name: Upload AppX package
118+
uses: actions/upload-artifact@v4
119+
with:
120+
name: "RetroArch-XboxOne-AllCores"
121+
path: ./pkg/msvc-uwp/x64/RetroArch-XboxOne-AllCores.appx
122+
123+
SeriesConsolesAllCores:
124+
runs-on: windows-latest
125+
steps:
126+
- name: Add msbuild to PATH
127+
uses: microsoft/setup-msbuild@v2
128+
- name: Checkout Repository
129+
uses: actions/[email protected]
130+
with:
131+
fetch-depth: 0
132+
submodules: false
133+
- name: Download Cores, DLLs and Extract
134+
run: >
135+
curl -L "https://buildbot.libretro.com/nightly/windows/x86_64/RetroArch_cores.7z" --output Cores.7z
136+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
137+
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
138+
7z e Cores.7z -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\" && 7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
139+
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra2018_libretro.dll" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra_libretro.dll"
140+
shell: cmd
141+
- name: Compile Mesa build
142+
run: |
143+
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
144+
/p:AppxBundle=Always `
145+
/p:UapAppxPackageBuildMode==SideloadOnly `
146+
/p:AppxBundlePlatforms="x64" `
147+
/p:Configuration="Release" `
148+
/p:Platform="x64" `
149+
/restore
150+
shell: pwsh
151+
- name: Grab AppX package
152+
shell: cmd
153+
run: >
154+
cd pkg\msvc-uwp\x64\Release\RetroArch-msvcUWP && copy /B *x64.appx ..\..\RetroArch-SeriesConsoles-AllCores.appx
155+
- name: Upload AppX package
156+
uses: actions/[email protected]
157+
with:
158+
name: "RetroArch-SeriesConsoles-AllCores"
159+
path: ./pkg/msvc-uwp/x64/RetroArch-SeriesConsoles-AllCores.appx
160+
161+
Publish-release:
162+
needs: [XboxOne, SeriesConsoles, XboxOneAllCores, SeriesConsolesAllCores]
163+
name: Publish Release
164+
if: github.ref == 'refs/heads/master'
165+
permissions: write-all
166+
runs-on: ubuntu-22.04
167+
168+
steps:
169+
- name: Get current date
170+
id: date
171+
run: echo "::set-output name=date::$(date +'%m-%d-%Y')"
172+
173+
- name: Download Artifacts
174+
uses: actions/[email protected]
175+
with:
176+
path: ./artifacts/
177+
178+
- name: Create a new release
179+
uses: marvinpinto/action-automatic-releases@latest
180+
with:
181+
repo_token: ${{ secrets.GITHUB_TOKEN }}
182+
automatic_release_tag: ${{ steps.date.outputs.date }}
183+
prerelease: false
184+
title: Xbox Builds [${{ steps.date.outputs.date }}]
185+
files: |
186+
./artifacts/RetroArch-XboxOne/RetroArch-XboxOne.appx
187+
./artifacts/RetroArch-SeriesConsoles/RetroArch-SeriesConsoles.appx
188+
./artifacts/RetroArch-XboxOne-AllCores/RetroArch-XboxOne-AllCores.appx
189+
./artifacts/RetroArch-SeriesConsoles-AllCores/RetroArch-SeriesConsoles-AllCores.appx

0 commit comments

Comments
 (0)