Skip to content

build

build #557

Workflow file for this run

name: build
on:
push:
branches-ignore:
- "github-actions/**" # ignore github-actions branches
- "dependabot/**" # ignore dependabot branches
pull_request: # any pull request against any branch
workflow_dispatch: # manual trigger
schedule:
# ┌───────────── minute (0 - 59)
# │ ┌───────────── hour (0 - 23)
# │ │ ┌───────────── day of the month (1 - 31)
# │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)
# │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)
# │ │ │ │ │
# * * * * *
- cron: "30 1,15 * * *" # every day at 1:30 UTC (17:30 PST, 18:30 PDT) and 15:30 UTC (7:30 PST, 8:30 PDT)
env:
TERM: xterm-256color
DEVELOPER_DIR: /Applications/Xcode_${{ vars.XCODE_VERSION }}.app/Contents/Developer
jobs:
build:
name: Build
runs-on: ${{ vars.MACOS }}
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Bootstrap
uses: ./.github/actions/bootstrap
- name: Build root package
run: make build
test-codecov:
name: Test (macOS)
runs-on: ${{ vars.MACOS }}
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Bootstrap
uses: ./.github/actions/bootstrap
# ChouTi
- name: Test package "ChouTi" with Codecov
if: success() || failure()
run: make test-codecov -C packages/ChouTi
- name: Upload package "ChouTi" code coverage
uses: codecov/[email protected]
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: packages/ChouTi/.build/debug/codecov/coverage.lcov
disable_search: true
flags: ChouTi
name: ChouTi
fail_ci_if_error: true
# ChouTiTest
- name: Test package "ChouTiTest" with Codecov
if: success() || failure()
run: make test-codecov -C packages/ChouTiTest
- name: Upload package "ChouTiTest" code coverage
uses: codecov/[email protected]
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: packages/ChouTiTest/.build/debug/codecov/coverage.lcov
disable_search: true
flags: ChouTiTest
name: ChouTiTest
fail_ci_if_error: true
test:
name: Test
strategy:
fail-fast: false
matrix:
platform: [iOS, tvOS, visionOS, watchOS]
timeout-minutes: 30
runs-on: ${{ vars.MACOS }}
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Bootstrap
uses: ./.github/actions/bootstrap
- name: Download visionOS simulator
if: matrix.platform == 'visionOS'
run: xcodebuild -downloadPlatform visionOS
- name: Test package "ChouTi" on ${{ matrix.platform }}
if: success() || failure()
run: make test-${{ matrix.platform }} -C packages/ChouTi