Skip to content

Commit d67ecb8

Browse files
committed
CI: Add Ubuntu 26 build
1 parent a04c513 commit d67ecb8

3 files changed

Lines changed: 79 additions & 3 deletions

File tree

.github/scripts/utils.zsh/setup_linux

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,8 @@ if (( ! (${skips[(Ie)all]} + ${skips[(Ie)deps]}) )) {
4242
build-essential \
4343
libgles2-mesa-dev \
4444
libsimde-dev \
45-
obs-studio
45+
obs-studio \
46+
libobs-dev
4647

4748
local -a _qt_packages=()
4849

.github/workflows/build-debian.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@ on:
1818

1919
jobs:
2020
build:
21-
runs-on: ubuntu-latest
21+
runs-on: ${{ matrix.os }}
22+
23+
strategy:
24+
matrix:
25+
os: [ubuntu-latest, ubuntu-26.04]
2226

2327
steps:
2428
- uses: actions/checkout@v6
@@ -52,5 +56,5 @@ jobs:
5256
if: success()
5357
uses: actions/upload-artifact@v7
5458
with:
55-
name: "obs-scene-switcher.deb"
59+
name: "obs-scene-switcher-${{ matrix.os }}.deb"
5660
path: ${{ github.workspace }}/*.deb

.github/workflows/build-project.yaml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,77 @@ jobs:
252252
path: ${{ github.workspace }}/release/${{ steps.setup.outputs.pluginName }}-*-x86_64*-dbgsym.ddeb
253253
if-no-files-found: ignore
254254

255+
ubuntu-26-build:
256+
name: Build for Ubuntu 26 🐧
257+
runs-on: ubuntu-26.04
258+
needs: check-event
259+
defaults:
260+
run:
261+
shell: bash
262+
steps:
263+
- uses: actions/checkout@v6
264+
with:
265+
submodules: recursive
266+
fetch-depth: 0
267+
268+
- name: Set Up Environment 🔧
269+
id: setup
270+
run: |
271+
: Set Up Environment 🔧
272+
if [[ "${RUNNER_DEBUG}" ]]; then set -x; fi
273+
274+
git_tag="$(git describe --tags)"
275+
276+
read -r product_name product_version <<< \
277+
"$(jq -r '. | {name, version} | join(" ")' buildspec.json)"
278+
279+
echo "pluginName=${product_name}" >> $GITHUB_OUTPUT
280+
echo "pluginVersion=${git_tag}" >> $GITHUB_OUTPUT
281+
282+
- uses: actions/cache@v5
283+
id: ccache-cache
284+
with:
285+
path: ${{ github.workspace }}/.ccache
286+
key: ${{ runner.os }}-ccache-x86_64-${{ needs.check-event.outputs.config }}
287+
restore-keys: |
288+
${{ runner.os }}-ccache-x86_64-
289+
290+
- name: Set up Homebrew 🍺
291+
uses: Homebrew/actions/setup-homebrew@main
292+
293+
- name: Build Plugin 🧱
294+
uses: ./.github/actions/build-plugin
295+
with:
296+
target: x86_64
297+
config: ${{ needs.check-event.outputs.config }}
298+
299+
- name: Run tests
300+
uses: ./.github/actions/run-tests
301+
with:
302+
target: x86_64
303+
config: ${{ needs.check-event.outputs.config }}
304+
305+
- name: Package Plugin 📀
306+
uses: ./.github/actions/package-plugin
307+
with:
308+
package: ${{ fromJSON(needs.check-event.outputs.package) }}
309+
target: x86_64
310+
config: ${{ needs.check-event.outputs.config }}
311+
312+
- name: Upload Artifacts 📡
313+
uses: actions/upload-artifact@v7
314+
with:
315+
name: ${{ steps.setup.outputs.pluginName }}-${{ steps.setup.outputs.pluginVersion }}-ubuntu-26.04-x86_64-${{ needs.check-event.outputs.commitHash }}
316+
path: ${{ github.workspace }}/release/${{ steps.setup.outputs.pluginName }}-*-x86_64*.*
317+
318+
- name: Upload debug symbol artifacts 🪲
319+
uses: actions/upload-artifact@v7
320+
if: ${{ fromJSON(needs.check-event.outputs.package) }}
321+
with:
322+
name: ${{ steps.setup.outputs.pluginName }}-${{ steps.setup.outputs.pluginVersion }}-ubuntu-26.04-x86_64-${{ needs.check-event.outputs.commitHash }}-dbgsym
323+
path: ${{ github.workspace }}/release/${{ steps.setup.outputs.pluginName }}-*-x86_64*-dbgsym.ddeb
324+
if-no-files-found: ignore
325+
255326
windows-build:
256327
name: Build for Windows 🪟
257328
runs-on: windows-2022

0 commit comments

Comments
 (0)