ci.yml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. name: "Alamofire CI"
  2. on:
  3. push:
  4. branches:
  5. - master
  6. jobs:
  7. macOS:
  8. name: Test macOS
  9. runs-on: macOS-latest
  10. steps:
  11. - uses: actions/checkout@v1
  12. - name: macOS
  13. run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean test | tee .ci/results/xcodebuild-macOS.log
  14. iOS:
  15. name: Test iOS
  16. runs-on: macOS-latest
  17. strategy:
  18. matrix:
  19. destination: ["OS=12.4,name=iPhone XS", "OS=11.4,name=iPhone X", "OS=10.3.1,name=iPhone SE"]
  20. steps:
  21. - uses: actions/checkout@v1
  22. - name: iOS - ${{ matrix.destination }}
  23. run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire iOS" -destination ${{ matrix.destination }} clean test | tee .ci/results/xcodebuild-iOS.log
  24. tvOS:
  25. name: Test tvOS
  26. runs-on: macOS-latest
  27. strategy:
  28. matrix:
  29. destination: ["OS=12.4,name=Apple TV 4K", "OS=11.4,name=Apple TV 4K", "OS=10.2,name=Apple TV 1080p"]
  30. steps:
  31. - uses: actions/checkout@v1
  32. - name: tvOS - ${{ matrix.destination }}
  33. run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire tvOS" -destination ${{ matrix.destination }} clean test | tee .ci/results/xcodebuild-tvOS.log
  34. watchOS:
  35. name: Build watchOS
  36. runs-on: macOS-latest
  37. strategy:
  38. matrix:
  39. destination: ["OS=5.3,name=Apple Watch Series 4 - 44mm", "OS=4.2,name=Apple Watch Series 3 - 42mm", "OS=3.2,name=Apple Watch Series 2 - 42mm"]
  40. steps:
  41. - uses: actions/checkout@v1
  42. - name: watchOS - ${{ matrix.destination }}
  43. run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire watchOS" -destination ${{ matrix.destination }} clean test | tee .ci/results/xcodebuild-watchOS.log
  44. spm:
  45. name: Test SPM Integration
  46. runs-on: macOS-latest
  47. needs: [macOS]
  48. steps:
  49. - uses: actions/checkout@v1
  50. - name: SPM Build & Test
  51. run: |
  52. cd 'Integrations/SPM'
  53. swift build
  54. swift test