Improve markdown output #1487
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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: ["main-snapshot", "16.3", "16.2", "16.1"] | |
include: | |
- step: "main-snapshot" | |
xcode: "16.3" | |
swiftly: "main-snapshot" | |
continueOnError: true | |
- step: "16.3" | |
xcode: "16.3" | |
baseline: "macos-swift-6.1.json" | |
- step: "16.2" | |
xcode: "16.2" | |
- step: "16.1" | |
xcode: "16.1" | |
runs-on: macos-15 | |
continue-on-error: ${{ matrix.continueOnError == true }} | |
steps: | |
- uses: actions/checkout@master | |
- name: Select Xcode version | |
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app | |
- 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 | |
hash -r | |
echo "PATH=$PATH" >> "$GITHUB_ENV" | |
echo "SWIFTLY_HOME_DIR=$SWIFTLY_HOME_DIR" >> "$GITHUB_ENV" | |
echo "SWIFTLY_BIN_DIR=$SWIFTLY_BIN_DIR" >> "$GITHUB_ENV" | |
- name: Install Swift (Swiftly) | |
if: ${{ matrix.swiftly }} | |
run: swiftly install ${{ matrix.swiftly }} --use | |
- name: Get Swift Version | |
id: get-swift-version | |
run: | | |
swift_version=$(swift -version | head -n 1 | sed s/,//) | |
echo "$swift_version" | |
echo "SWIFT_VERSION=${swift_version}" >> "$GITHUB_ENV" | |
shell: bash | |
- name: Cache resolved dependencies | |
id: cache-resolved-dependencies | |
uses: actions/cache@v4 | |
with: | |
path: | | |
.build | |
Package.resolved | |
key: ${{ runner.os }}-${{ matrix.xcode }}-${{ env.SWIFT_VERSION }}-${{ env.cache_version }}-spm-deps-${{ hashFiles('Package.swift', 'Package.resolved') }} | |
restore-keys: | | |
${{ runner.os }}-${{ matrix.xcode }}-${{ env.SWIFT_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 }} ${{ matrix.baseline && format('--baseline baselines/{0}', matrix.baseline) || '' }} | |
- name: Test | |
run: ${{ env.swift_test }} | |
linux: | |
name: Linux | |
strategy: | |
fail-fast: false | |
matrix: | |
swift: ["nightly-main", "6.1", "6.0"] | |
include: | |
- swift: "nightly-main" | |
container: "swiftlang/swift:nightly-main" | |
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=$(swift -version | head -n 1 | sed s/,//) | |
echo "$swift_version" | |
echo "SWIFT_VERSION=${swift_version}" >> "$GITHUB_ENV" | |
shell: bash | |
- name: Cache resolved dependencies | |
id: cache-resolved-dependencies | |
uses: actions/cache@v4 | |
with: | |
path: | | |
.build | |
Package.resolved | |
key: ${{ runner.os }}-${{ env.SWIFT_VERSION }}-${{ env.cache_version }}-spm-deps-${{ hashFiles('Package.swift', 'Package.resolved') }} | |
restore-keys: | | |
${{ runner.os }}-${{ env.SWIFT_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 }} |