Skip to content

Commit d1fe931

Browse files
committed
ci: only run macos build matrix on main or demand
This is our longest running job in CI and I don't need it to run for every PR. I'd like it running on main in case I miss a need for it in a PR.
1 parent d1bba37 commit d1fe931

File tree

3 files changed

+57
-46
lines changed

3 files changed

+57
-46
lines changed
+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
on:
2+
workflow_dispatch: {}
3+
push:
4+
branches:
5+
- main
6+
7+
name: Test macOS Matrix
8+
9+
jobs:
10+
build-macos-matrix:
11+
runs-on: namespace-profile-ghostty-macos
12+
needs: test
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v4
16+
17+
# Install Nix and use that to run our tests so our environment matches exactly.
18+
- uses: cachix/install-nix-action@v29
19+
with:
20+
nix_path: nixpkgs=channel:nixos-unstable
21+
- uses: cachix/cachix-action@v15
22+
with:
23+
name: ghostty
24+
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}"
25+
26+
- name: Test All
27+
run: |
28+
# OpenGL
29+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=freetype
30+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext
31+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_freetype
32+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_harfbuzz
33+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_noshape
34+
35+
# Metal
36+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=freetype
37+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext
38+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_freetype
39+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_harfbuzz
40+
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_noshape
41+
42+
- name: Build All
43+
run: |
44+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=freetype
45+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext
46+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_freetype
47+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_harfbuzz
48+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_noshape
49+
50+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=freetype
51+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext
52+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_freetype
53+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_harfbuzz
54+
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_noshape

.github/workflows/test.yml

-46
Original file line numberDiff line numberDiff line change
@@ -180,52 +180,6 @@ jobs:
180180
cd macos
181181
xcodebuild -target Ghostty-iOS "CODE_SIGNING_ALLOWED=NO"
182182
183-
build-macos-matrix:
184-
runs-on: namespace-profile-ghostty-macos
185-
needs: test
186-
steps:
187-
- name: Checkout code
188-
uses: actions/checkout@v4
189-
190-
# Install Nix and use that to run our tests so our environment matches exactly.
191-
- uses: cachix/install-nix-action@v29
192-
with:
193-
nix_path: nixpkgs=channel:nixos-unstable
194-
- uses: cachix/cachix-action@v15
195-
with:
196-
name: ghostty
197-
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}"
198-
199-
- name: Test All
200-
run: |
201-
# OpenGL
202-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=freetype
203-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext
204-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_freetype
205-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_harfbuzz
206-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_noshape
207-
208-
# Metal
209-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=freetype
210-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext
211-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_freetype
212-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_harfbuzz
213-
nix develop -c zig build test -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_noshape
214-
215-
- name: Build All
216-
run: |
217-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=freetype
218-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext
219-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_freetype
220-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_harfbuzz
221-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=opengl -Dfont-backend=coretext_noshape
222-
223-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=freetype
224-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext
225-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_freetype
226-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_harfbuzz
227-
nix develop -c zig build -Dapp-runtime=glfw -Drenderer=metal -Dfont-backend=coretext_noshape
228-
229183
build-windows:
230184
runs-on: windows-2019
231185
# this will not stop other jobs from running

.prettierignore

+3
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ vendor/
55
zig-cache/
66
zig-out/
77

8+
# jujutsu
9+
.jj/
10+
811
# macos is managed by XCode GUI
912
macos/
1013

0 commit comments

Comments
 (0)