ci.yml 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. name: "Alamofire CI"
  2. on:
  3. push:
  4. branches:
  5. - master
  6. - hotfix
  7. pull_request:
  8. branches:
  9. - '*'
  10. jobs:
  11. macOS_5_1:
  12. name: Build macOS (5.1)
  13. runs-on: macOS-latest
  14. env:
  15. DEVELOPER_DIR: /Applications/Xcode_11.3.1.app/Contents/Developer
  16. steps:
  17. - uses: actions/checkout@v2
  18. - name: macOS (5.1)
  19. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean build | xcpretty
  20. macOS_5_2:
  21. name: Test macOS (5.2)
  22. runs-on: macOS-latest
  23. env:
  24. DEVELOPER_DIR: /Applications/Xcode_11.7.app/Contents/Developer
  25. steps:
  26. - uses: actions/checkout@v2
  27. - name: macOS (5.2)
  28. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean test | xcpretty
  29. macOS_Catalina_5_3:
  30. name: Test macOS 10.15 (5.3)
  31. runs-on: macOS-10.15
  32. env:
  33. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  34. steps:
  35. - uses: actions/checkout@v2
  36. - name: macOS (5.3)
  37. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean test | xcpretty
  38. macOS_Big_Sur_5_3:
  39. name: Test macOS 11 (5.3)
  40. runs-on: macOS-11.0
  41. env:
  42. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  43. steps:
  44. - uses: actions/checkout@v2
  45. - name: macOS (5.3)
  46. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean test | xcpretty
  47. Catalyst:
  48. name: Test Catalyst
  49. runs-on: macOS-latest
  50. env:
  51. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  52. steps:
  53. - uses: actions/checkout@v2
  54. - name: Catalyst
  55. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire iOS" -destination "platform=macOS" clean test | xcpretty
  56. iOS:
  57. name: Test iOS
  58. runs-on: macOS-latest
  59. env:
  60. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  61. strategy:
  62. matrix:
  63. destination: ["OS=14.3,name=iPhone 12 Pro"] #, "OS=12.4,name=iPhone XS", "OS=11.4,name=iPhone X", "OS=10.3.1,name=iPhone SE"]
  64. steps:
  65. - uses: actions/checkout@v2
  66. - name: iOS - ${{ matrix.destination }}
  67. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire iOS" -destination "${{ matrix.destination }}" clean test | xcpretty
  68. tvOS:
  69. name: Test tvOS
  70. runs-on: macOS-latest
  71. env:
  72. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  73. strategy:
  74. matrix:
  75. destination: ["OS=14.3,name=Apple TV 4K"] #, "OS=11.4,name=Apple TV 4K", "OS=10.2,name=Apple TV 1080p"]
  76. steps:
  77. - uses: actions/checkout@v2
  78. - name: tvOS - ${{ matrix.destination }}
  79. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire tvOS" -destination "${{ matrix.destination }}" clean test | xcpretty
  80. watchOS:
  81. name: Build watchOS
  82. runs-on: macOS-latest
  83. env:
  84. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  85. strategy:
  86. matrix:
  87. destination: ["OS=7.2,name=Apple Watch Series 6 - 44mm"] #, "OS=4.2,name=Apple Watch Series 3 - 42mm", "OS=3.2,name=Apple Watch Series 2 - 42mm"]
  88. steps:
  89. - uses: actions/checkout@v2
  90. - name: watchOS - ${{ matrix.destination }}
  91. run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire watchOS" -destination "${{ matrix.destination }}" clean build | xcpretty
  92. spm:
  93. name: Test with SPM
  94. runs-on: macOS-latest
  95. env:
  96. DEVELOPER_DIR: /Applications/Xcode_12.3.app/Contents/Developer
  97. steps:
  98. - uses: actions/checkout@v2
  99. - name: SPM Test
  100. run: swift test -c debug