Skip to content

Update deps

Update deps #1444

Workflow file for this run

name: Test
on:
push:
branches:
- master
pull_request: {}
env:
MISE_EXPERIMENTAL: 1
swift_package_resolve: swift package resolve
swift_build: swift build
swift_test: swift test
periphery_scan: ./.build/debug/periphery scan --quiet --clean-build --strict
cache_version: 1
jobs:
lint:
runs-on: macos-15
name: Lint
steps:
- uses: actions/checkout@master
- uses: jdx/mise-action@v2
- run: mise run lint-ci
bazel:
runs-on: macos-15
name: Bazel
steps:
- uses: actions/checkout@master
- uses: jdx/mise-action@v2
- uses: bazel-contrib/setup-bazel@0.14.0
with:
bazelisk-cache: true
disk-cache: ${{ github.workflow }}
repository-cache: true
- name: Check generated rules
run: mise r gen-bazel-rules && git diff --quiet --exit-code
- name: Scan
run: bazel run //:periphery -- scan --bazel --quiet --strict --baseline baselines/bazel.json
macOS:
name: macOS
strategy:
fail-fast: false
matrix:
step: ["nightly", "16.3", "16.2", "16.1"]
include:
- step: "nightly"
xcode: "16.2"
swiftly: "main-snapshot"
macos: macos-15
continueOnError: true
- step: "16.3"
xcode: "16.3"
macos: macos-15
- step: "16.2"
xcode: "16.2"
macos: macos-15
- step: "16.1"
xcode: "16.1"
macos: macos-15
runs-on: ${{ matrix.macos }}
steps:
- uses: actions/checkout@master
- name: Select Xcode version
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app; swift -version
- name: Install Swiftly
if: ${{ matrix.swiftly }}
run: |
curl -O https://download.swift.org/swiftly/darwin/swiftly.pkg
installer -pkg swiftly.pkg -target CurrentUserHomeDirectory
~/.swiftly/bin/swiftly init --skip-install
. ~/.swiftly/env.sh
ls -al
- name: Install Swift (Swiftly)
if: ${{ matrix.swiftly }}
run: |
echo $PATH
swiftly install ${{ matrix.swiftly }} --use
- name: Get Swift Version
id: get-swift-version
run: |
swift -version
echo "::set-output name=version::$(swift -version | head -n 1 | sed s/,// )"
shell: bash
- name: Cache resolved dependencies
id: cache-resolved-dependencies
uses: actions/cache@v4
with:
path: |
.build
Package.resolved
key: ${{ runner.os }}-${{ matrix.xcode }}-${{ steps.get-swift-version.outputs.version }}-${{ env.cache_version }}-spm-deps-${{ hashFiles('Package.swift', 'Package.resolved') }}
restore-keys: |
${{ runner.os }}-${{ matrix.xcode }}-${{ steps.get-swift-version.outputs.version }}-${{ env.cache_version }}-spm-deps-
- name: Resolve dependencies
if: steps.cache-resolved-dependencies.outputs.cache-hit != 'true'
run: ${{ env.swift_package_resolve }}
- name: Build
run: ${{ env.swift_build }}
- name: Scan
run: ${{ env.periphery_scan }}
- name: Test
run: ${{ env.swift_test }}
linux:
name: Linux
strategy:
fail-fast: false
matrix:
swift: ["nightly", "6.1", "6.0"]
include:
- swift: "nightly"
container: "swiftlang/swift:nightly"
continueOnError: true
- swift: "6.1"
container: "swift:6.1"
- swift: "6.0"
container: "swift:6.0"
runs-on: ubuntu-latest
container: ${{ matrix.container }}
continue-on-error: ${{ matrix.continueOnError == true }}
steps:
- uses: actions/checkout@master
- name: Get Swift Version
id: get-swift-version
run: |
swift -version
echo "::set-output name=version::$(swift -version | head -n 1 | sed s/,// )"
shell: bash
- name: Cache resolved dependencies
id: cache-resolved-dependencies
uses: actions/cache@v4
with:
path: |
.build
Package.resolved
key: ${{ runner.os }}-${{ steps.get-swift-version.outputs.version }}-${{ env.cache_version }}-spm-deps-${{ hashFiles('Package.swift', 'Package.resolved') }}
restore-keys: |
${{ runner.os }}-${{ steps.get-swift-version.outputs.version }}-${{ env.cache_version }}-spm-deps-
- name: Resolve dependencies
if: steps.cache-resolved-dependencies.outputs.cache-hit != 'true'
run: ${{ env.swift_package_resolve }}
- name: Build
run: ${{ env.swift_build }}
- name: Scan
run: ${{ env.periphery_scan }} --baseline baselines/linux.json
- name: Test
run: ${{ env.swift_test }}