diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml index e8a0224c..4c8c9f5c 100644 --- a/.github/workflows/danger.yml +++ b/.github/workflows/danger.yml @@ -9,6 +9,9 @@ jobs: job-danger: name: Review, Lint, Verify runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: write steps: - uses: actions/checkout@v6 @@ -17,4 +20,4 @@ jobs: with: args: --failOnErrors --no-publish-check env: - GITHUB_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN || secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index db102dc5..f6456717 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -11,7 +11,7 @@ on: jobs: deploy_docs: name: Generate Documentation - runs-on: macos-26 + runs-on: macos-latest steps: - name: Checkout the repository uses: actions/checkout@v6 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 679c52ba..0dc701d0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,7 +13,7 @@ on: jobs: release: name: Publish Release - runs-on: macos-15 + runs-on: macos-latest steps: - name: Checkout Repository uses: actions/checkout@v6 diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0131cb87..3c43e8a6 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -16,7 +16,7 @@ concurrency: jobs: unit-tests: name: Unit Tests (${{ matrix.build.name }}) - runs-on: macos-26 + runs-on: macos-latest timeout-minutes: 30 strategy: matrix: @@ -24,6 +24,9 @@ jobs: - name: iOS action: test-ios logfiles: raw-*-ios.log + platform: iOS + simulator-prefix: IOS + device: iPhone 17 Pro - name: macOS action: test-macos logfiles: raw-*-macos.log @@ -34,25 +37,47 @@ jobs: action: test-tvos logfiles: raw-*-tvos.log platform: tvOS + simulator-prefix: TVOS + device: Apple TV 4K (3rd generation) - name: watchOS action: test-watchos logfiles: raw-*-watchos.log platform: watchOS + simulator-prefix: WATCHOS + device: Apple Watch Series 11 (46mm) - name: visionOS action: test-visionos logfiles: raw-*-visionos.log platform: visionOS + simulator-prefix: VISION_OS + device: Apple Vision Pro steps: - name: Checkout the repository uses: actions/checkout@v6 - uses: maxim-lobanov/setup-xcode@v1 with: - xcode-version: "26.2" + xcode-version: latest-stable - name: Ensuring required simulator runtimes are loaded + id: simulator if: matrix.build.platform != null - run: scripts/ensure-runtime-loaded.sh --os-version 26.2 --platform ${{ matrix.build.platform }} + uses: kula-app/wait-for-services-action/ios-simulator@v1 + with: + platform: ${{ matrix.build.platform }} + device: ${{ matrix.build.device }} + boot: true + timeout: 300 + + - name: Configure simulator destination + if: matrix.build.platform != null + env: + SIMULATOR_PREFIX: ${{ matrix.build.simulator-prefix }} + OS_VERSION: ${{ steps.simulator.outputs.runtime }} + DEVICE_NAME: ${{ matrix.build.device }} + run: | + echo "${SIMULATOR_PREFIX}_SIMULATOR_OS=$OS_VERSION" >> "$GITHUB_ENV" + echo "${SIMULATOR_PREFIX}_DEVICE_NAME=$DEVICE_NAME" >> "$GITHUB_ENV" - name: Run Tests run: make ${{ matrix.build.action }}