Skip to content

Commit 5149d22

Browse files
Try windows build
1 parent b4ea931 commit 5149d22

1 file changed

Lines changed: 116 additions & 0 deletions

File tree

.github/workflows/build-project.yaml

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,3 +167,119 @@ jobs:
167167
with:
168168
path: ${{ github.workspace }}/.ccache
169169
key: ${{ runner.os }}-ccache-${{ matrix.target }}-${{ needs.check-event.outputs.config }}
170+
171+
172+
ubuntu-build:
173+
name: Ubuntu 🐧
174+
strategy:
175+
matrix:
176+
os: [ubuntu-24.04]
177+
runs-on: ${{ matrix.os }}
178+
needs: check-event
179+
defaults:
180+
run:
181+
shell: bash
182+
steps:
183+
- uses: actions/checkout@v4
184+
with:
185+
submodules: recursive
186+
fetch-depth: 0
187+
188+
- uses: actions/cache/restore@v4
189+
id: ccache-cache
190+
with:
191+
path: ${{ github.workspace }}/.ccache
192+
key: ${{ runner.os }}-${{ matrix.os }}-ccache-x86_64-${{ needs.check-event.outputs.config }}
193+
restore-keys: |
194+
${{ runner.os }}-${{ matrix.os }}-ccache-x86_64-
195+
- name: Build OBS Studio 🧱
196+
uses: ./.github/actions/build-obs
197+
env:
198+
TWITCH_CLIENTID: ${{ secrets.TWITCH_CLIENT_ID }}
199+
TWITCH_HASH: ${{ secrets.TWITCH_HASH }}
200+
RESTREAM_CLIENTID: ${{ secrets.RESTREAM_CLIENTID }}
201+
RESTREAM_HASH: ${{ secrets.RESTREAM_HASH }}
202+
YOUTUBE_CLIENTID: ${{ secrets.YOUTUBE_CLIENTID }}
203+
YOUTUBE_CLIENTID_HASH: ${{ secrets.YOUTUBE_CLIENTID_HASH }}
204+
YOUTUBE_SECRET: ${{ secrets.YOUTUBE_SECRET }}
205+
YOUTUBE_SECRET_HASH: ${{ secrets.YOUTUBE_SECRET_HASH }}
206+
with:
207+
target: x86_64
208+
config: ${{ needs.check-event.outputs.config }}
209+
210+
- name: Package OBS Studio 📀
211+
uses: ./.github/actions/package-obs
212+
with:
213+
target: x86_64
214+
config: ${{ needs.check-event.outputs.config }}
215+
package: ${{ fromJSON(needs.check-event.outputs.package) }}
216+
217+
- name: Upload Source Tarball 🗜️
218+
uses: actions/upload-artifact@v4
219+
with:
220+
name: obs-studio-${{ matrix.os }}-sources-${{ needs.check-event.outputs.commitHash }}
221+
path: ${{ github.workspace }}/build_ubuntu/obs-studio-*-sources.*
222+
223+
- name: Upload Artifacts 📡
224+
uses: actions/upload-artifact@v4
225+
with:
226+
name: obs-studio-${{ matrix.os }}-x86_64-${{ needs.check-event.outputs.commitHash }}
227+
path: ${{ github.workspace }}/build_ubuntu/obs-studio-*-x86_64-ubuntu-gnu.*
228+
229+
- name: Upload Debug Symbol Artifacts 🪲
230+
uses: actions/upload-artifact@v4
231+
if: ${{ fromJSON(needs.check-event.outputs.package) }}
232+
with:
233+
name: obs-studio-${{ matrix.os }}-x86_64-${{ needs.check-event.outputs.commitHash }}-dbgsym
234+
path: ${{ github.workspace }}/build_ubuntu/obs-studio-*-x86_64-ubuntu-gnu-dbgsym.ddeb
235+
236+
- uses: actions/cache/save@v4
237+
if: github.event_name != 'pull_request' && steps.ccache-cache.outputs.cache-hit != 'true'
238+
with:
239+
path: ${{ github.workspace }}/.ccache
240+
key: ${{ runner.os }}-${{ matrix.os }}-ccache-x86_64-${{ needs.check-event.outputs.config }}
241+
242+
windows-build:
243+
name: Windows 🪟
244+
strategy:
245+
matrix:
246+
architecture: [x64, arm64]
247+
runs-on: windows-2022
248+
needs: check-event
249+
defaults:
250+
run:
251+
shell: pwsh
252+
steps:
253+
- uses: actions/checkout@v4
254+
with:
255+
submodules: recursive
256+
fetch-depth: 0
257+
258+
- name: Build OBS Studio 🧱
259+
uses: ./.github/actions/build-obs
260+
env:
261+
TWITCH_CLIENTID: ${{ secrets.TWITCH_CLIENT_ID }}
262+
TWITCH_HASH: ${{ secrets.TWITCH_HASH }}
263+
RESTREAM_CLIENTID: ${{ secrets.RESTREAM_CLIENTID }}
264+
RESTREAM_HASH: ${{ secrets.RESTREAM_HASH }}
265+
YOUTUBE_CLIENTID: ${{ secrets.YOUTUBE_CLIENTID }}
266+
YOUTUBE_CLIENTID_HASH: ${{ secrets.YOUTUBE_CLIENTID_HASH }}
267+
YOUTUBE_SECRET: ${{ secrets.YOUTUBE_SECRET }}
268+
YOUTUBE_SECRET_HASH: ${{ secrets.YOUTUBE_SECRET_HASH }}
269+
GPU_PRIORITY_VAL: ${{ secrets.GPU_PRIORITY_VAL }}
270+
with:
271+
target: ${{ matrix.architecture }}
272+
config: ${{ needs.check-event.outputs.config }}
273+
274+
- name: Package OBS Studio 📀
275+
uses: ./.github/actions/package-obs
276+
with:
277+
target: ${{ matrix.architecture }}
278+
config: ${{ needs.check-event.outputs.config }}
279+
package: ${{ fromJSON(needs.check-event.outputs.package) }}
280+
281+
- name: Upload Artifacts 📡
282+
uses: actions/upload-artifact@v4
283+
with:
284+
name: obs-studio-windows-${{ matrix.architecture }}-${{ needs.check-event.outputs.commitHash }}
285+
path: ${{ github.workspace }}/build_${{ matrix.architecture }}/obs-studio-*-windows-${{ matrix.architecture }}.zip

0 commit comments

Comments
 (0)