Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions .github/actions/build-example/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Build Example
description: Build an Example target for a specific platform

inputs:
scheme:
description: Xcode scheme to build
required: true
destination:
description: Xcode build destination
required: true
xcode-version:
description: Xcode version to use
required: false
default: "16.4"

runs:
using: composite
steps:
- name: Setup Xcode
uses: OpenSwiftUIProject/setup-xcode@v2
with:
xcode-version: ${{ inputs.xcode-version }}
- name: Setup mise
uses: jdx/mise-action@v2
with:
working_directory: Example
- name: Generate project
shell: bash
run: |
cd Example
tuist install
tuist generate --no-open
- name: Install xcbeautify
shell: bash
run: brew install xcbeautify
- name: Build
shell: bash
run: |
cd Example
set -o pipefail
NSUnbufferedIO=YES xcodebuild build \
-workspace Example.xcworkspace \
-scheme "${{ inputs.scheme }}" \
-destination "${{ inputs.destination }}" \
CODE_SIGN_IDENTITY="" \
CODE_SIGNING_REQUIRED=NO \
CODE_SIGNING_ALLOWED=NO \
2>&1 | xcbeautify --renderer github-actions --preserve-unbeautified
49 changes: 49 additions & 0 deletions .github/workflows/ag_example.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: AGExample

on:
push:
branches: [main]
paths:
- 'AG/**'
- 'Example/AGExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/ag_example.yml'
pull_request:
branches: [main]
paths:
- 'AG/**'
- 'Example/AGExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/ag_example.yml'

jobs:
build:
name: Build AGExample (${{ matrix.platform }})
strategy:
fail-fast: false
matrix:
include:
- platform: iOS
destination: "generic/platform=iOS"
- platform: iOS Simulator
destination: "generic/platform=iOS Simulator"
- platform: macOS
destination: "platform=macOS"
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-example
with:
scheme: AGExample
destination: ${{ matrix.destination }}
xcode-version: "16.4"
47 changes: 47 additions & 0 deletions .github/workflows/bls_example.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: BLSExample

on:
push:
branches: [main]
paths:
- 'BLS/**'
- 'Example/BLSExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/bls_example.yml'
pull_request:
branches: [main]
paths:
- 'BLS/**'
- 'Example/BLSExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/bls_example.yml'

jobs:
build:
name: Build BLSExample (${{ matrix.platform }})
strategy:
fail-fast: false
matrix:
include:
- platform: iOS
destination: "generic/platform=iOS"
- platform: iOS Simulator
destination: "generic/platform=iOS Simulator"
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-example
with:
scheme: BLSExample
destination: ${{ matrix.destination }}
xcode-version: "16.4"
49 changes: 49 additions & 0 deletions .github/workflows/coreui_example.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: CoreUIExample

on:
push:
branches: [main]
paths:
- 'CoreUI/**'
- 'Example/CoreUIExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/coreui_example.yml'
pull_request:
branches: [main]
paths:
- 'CoreUI/**'
- 'Example/CoreUIExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/coreui_example.yml'

jobs:
build:
name: Build CoreUIExample (${{ matrix.platform }})
strategy:
fail-fast: false
matrix:
include:
- platform: iOS
destination: "generic/platform=iOS"
- platform: iOS Simulator
destination: "generic/platform=iOS Simulator"
- platform: macOS
destination: "platform=macOS"
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-example
with:
scheme: CoreUIExample
destination: ${{ matrix.destination }}
xcode-version: "16.4"
49 changes: 49 additions & 0 deletions .github/workflows/gf_example.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: GFExample

on:
push:
branches: [main]
paths:
- 'GF/**'
- 'Example/GFExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/gf_example.yml'
pull_request:
branches: [main]
paths:
- 'GF/**'
- 'Example/GFExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/gf_example.yml'

jobs:
build:
name: Build GFExample (${{ matrix.platform }})
strategy:
fail-fast: false
matrix:
include:
- platform: iOS
destination: "generic/platform=iOS"
- platform: iOS Simulator
destination: "generic/platform=iOS Simulator"
- platform: macOS
destination: "platform=macOS"
runs-on: macos-26
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-example
with:
scheme: GFExample
destination: ${{ matrix.destination }}
xcode-version: "26.3"
49 changes: 49 additions & 0 deletions .github/workflows/rb_example.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: RBExample

on:
push:
branches: [main]
paths:
- 'RB/**'
- 'Example/RBExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/rb_example.yml'
pull_request:
branches: [main]
paths:
- 'RB/**'
- 'Example/RBExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/rb_example.yml'

jobs:
build:
name: Build RBExample (${{ matrix.platform }})
strategy:
fail-fast: false
matrix:
include:
- platform: iOS
destination: "generic/platform=iOS"
- platform: iOS Simulator
destination: "generic/platform=iOS Simulator"
- platform: macOS
destination: "platform=macOS"
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-example
with:
scheme: RBExample
destination: ${{ matrix.destination }}
xcode-version: "16.4"
49 changes: 49 additions & 0 deletions .github/workflows/sfsymbols_example.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: SFSymbolsExample

on:
push:
branches: [main]
paths:
- 'SF/**'
- 'Example/SFSymbolsExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/sfsymbols_example.yml'
pull_request:
branches: [main]
paths:
- 'SF/**'
- 'Example/SFSymbolsExample/**'
- 'Example/Project.swift'
- 'Example/Tuist.swift'
- 'Example/Tuist/**'
- 'Example/.mise.toml'
- 'Package.swift'
- '.github/actions/build-example/**'
- '.github/workflows/sfsymbols_example.yml'

jobs:
build:
name: Build SFSymbolsExample (${{ matrix.platform }})
strategy:
fail-fast: false
matrix:
include:
- platform: iOS
destination: "generic/platform=iOS"
- platform: iOS Simulator
destination: "generic/platform=iOS Simulator"
- platform: macOS
destination: "platform=macOS"
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-example
with:
scheme: SFSymbolsExample
destination: ${{ matrix.destination }}
xcode-version: "16.4"
Loading
Loading