1- # This workflow will build a Swift project on macOS and Linux
1+ # This workflow will build a Swift project on macOS and Linux
22# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-swift
33name : swift-openapi-lambda-build
44
55on :
66 push :
7- branches : [ "main" ]
7+ branches : ["main"]
88 pull_request :
99 types : [opened, reopened, synchronize]
1010
1111jobs :
12- build-macos :
13- env :
14- # https://github.com/actions/runner-images/tree/main/images/macos
15- DEVELOPER_DIR : /Applications/Xcode_16.app/Contents/Developer
16-
17- runs-on : macos-15-arm64
18- # runs-on: macos-15
19- steps :
20- - uses : actions/checkout@v4
21- - name : Build
22- run : swift build -v
23- - name : Run tests
24- run : swift test -v
25- build-linux :
12+ soundness :
13+ name : Soundness
14+ uses : swiftlang/github-workflows/.github/workflows/soundness.yml@main
15+ with :
16+ # do not use SwiftLang's license header check because the copyright for this project is Amazon.com + contributors
17+ license_header_check_enabled : false
18+ license_header_check_project_name : " Swift OpenAPI Lambda"
19+ shell_check_enabled : false
20+ python_lint_check_enabled : false
21+ api_breakage_check_container_image : " swift:6.0-noble"
22+ docs_check_container_image : " swift:6.0-noble"
23+ format_check_container_image : " swiftlang/swift:nightly-6.0-jammy"
24+
25+ license :
26+ name : License headers check
2627 runs-on : ubuntu-latest
28+ strategy :
29+ fail-fast : false
2730 steps :
28- - uses : actions/checkout@v4
29- - name : Build
30- run : swift build -v
31- - name : Run tests
32- run : swift test -v
31+ - name : Checkout repository
32+ uses : actions/checkout@v4
33+ with :
34+ persist-credentials : false
35+ - name : Mark the workspace as safe
36+ # https://github.com/actions/checkout/issues/766
37+ run : git config --global --add safe.directory ${GITHUB_WORKSPACE}
38+ - name : License headers check
39+ env :
40+ PROJECT_NAME : " Swift OpenAPI Lambda"
41+ run : |
42+ ./scripts/check-license-headers.sh
43+
44+ unit-tests :
45+ name : Unit tests
46+ uses : apple/swift-nio/.github/workflows/unit_tests.yml@main
47+ with :
48+ linux_5_9_enabled : false
49+ linux_5_10_enabled : true
50+ linux_nightly_6_0_arguments_override : " --explicit-target-dependency-import-check error"
51+ linux_nightly_main_arguments_override : " --explicit-target-dependency-import-check error"
52+
53+ swift-6-language-mode :
54+ name : Swift 6 Language Mode
55+ uses : apple/swift-nio/.github/workflows/swift_6_language_mode.yml@main
0 commit comments