Skip to content

Add Swift 6.0 CI for building carton for macOS #1561

Add Swift 6.0 CI for building carton for macOS

Add Swift 6.0 CI for building carton for macOS #1561

Workflow file for this run

name: Build and test
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
swift-test-macos:
name: Build and test on ${{ matrix.os }} with Swift ${{ matrix.swift }}, Xcode ${{ matrix.xcode }}
timeout-minutes: 40
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-14
xcode: "15.4"
swift: "6.0"
swift-install:
dir: "swift-6.0-branch/xcode"
version: "swift-6.0-DEVELOPMENT-SNAPSHOT-2024-06-08-a"
# - os: macos-14
# xcode: "15.4"
# swift: "5.10"
# - os: macos-13
# xcode: "15.2"
# swift: "5.9.2"
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Select Xcode version
run: sudo xcode-select --switch /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer
- name: Install Swift ${{ matrix.swift }}
if: ${{ matrix.swift-install }} != null
run: bash ci/mac/install-swift.bash
env:
SWIFT_DIR: ${{ matrix.swift-install.dir }}
SWIFT_VERSION: ${{ matrix.swift-install.version }}
- run: env
- name: Check Swift version
run: swift --version
- name: Install dependencies for macOS
run: brew bundle
- name: Build the project
run: swift build --build-tests
- name: Run tests
run: swift test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# swift-test-linux:
# name: Build and test on Linux with Swift ${{ matrix.swift.version }}
# timeout-minutes: 40
# runs-on: ubuntu-22.04
# steps:
# - name: Skip now
# run: echo hello world
# - name: Checkout the repository
# uses: actions/checkout@v4
# - name: Install Swift toolchain
# uses: ./.github/actions/install-swift
# with:
# swift-dir: ${{ matrix.swift.dir }}
# swift-version: ${{ matrix.swift.version }}
# - name: Check Swift version
# run: swift --version
# - name: Install dependent packages for WebAssembly
# run: >
# sudo apt-get update && sudo apt-get install -y
# wabt binaryen
# - name: Install WebAssembly runtime
# uses: bytecodealliance/actions/wasmtime/setup@v1
# - name: Build the project
# run: swift build --build-tests
# - name: Run tests
# run: swift test
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}