-
-
Notifications
You must be signed in to change notification settings - Fork 4
59 lines (50 loc) · 1.47 KB
/
ci.yml
File metadata and controls
59 lines (50 loc) · 1.47 KB
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
# SPDX-License-Identifier: GPL-3.0-only
# SPDX-FileCopyrightText: Copyright (c) 2025 Andrew Wyatt (Fewtarius)
name: CI - Build and Test
on:
push:
branches: [ main, develop ]
paths-ignore:
- '**.md'
- 'project-docs/**'
- 'scratch/**'
- 'licenses/**'
- 'ai-assisted/**'
- '.github/ISSUE_TEMPLATE/**'
- '.github/FUNDING.yml'
pull_request:
branches: [ main ]
paths-ignore:
- '**.md'
- 'project-docs/**'
- 'scratch/**'
- 'licenses/**'
- 'ai-assisted/**'
- '.github/ISSUE_TEMPLATE/**'
- '.github/FUNDING.yml'
workflow_dispatch:
jobs:
build-and-test:
name: Build, Validate, and Test
runs-on: [self-hosted]
steps:
- name: Checkout code
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '26.2'
- name: Download Metal Toolchain
run: |
echo "Downloading Metal Toolchain for Xcode 26.2..."
sudo xcodebuild -downloadComponent MetalToolchain || echo "Metal Toolchain already installed or download failed"
- name: Build SAM (Debug)
run: make build-debug
- name: Run unit tests
run: make test || echo "Tests not yet implemented"
- name: Verify build artifacts
run: |
ls -la .build/Build/Products/Debug/SAM.app
ls -la .build/Build/Products/Debug/SAM.app/Contents/MacOS/SAM