Bladeren bron

Add GitHub Actions configuration.

Jon Shier 6 jaren geleden
bovenliggende
commit
bf36cf532f
1 gewijzigde bestanden met toevoegingen van 61 en 0 verwijderingen
  1. 61 0
      .github/workflows/ci.yml

+ 61 - 0
.github/workflows/ci.yml

@@ -0,0 +1,61 @@
+name: "Alamofire CI"
+
+on: 
+  push:
+    branches:
+      - master
+      - hotfix
+  pull_request:
+      - master
+      - hotfix
+
+jobs:
+  macOS:
+    name: Test macOS 
+    runs-on: macOS-latest
+    steps:
+      - uses: actions/checkout@v1    
+      - name: macOS
+        run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean test | tee .ci/results/xcodebuild-macOS.log
+  iOS:
+    name: Test iOS 
+    runs-on: macOS-latest
+    strategy:
+      matrix:
+        destination: ["OS=12.4,name=iPhone XS", "OS=11.4,name=iPhone X", "OS=10.3.1,name=iPhone SE"
+    steps:
+      - uses: actions/checkout@v1            
+      - name: iOS - ${{ maxtrix.destination }}
+        run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire iOS" -destination ${{ matrix.destination }} clean test | tee .ci/results/xcodebuild-${{ maxtrix.destination }}.log
+  tvOS:
+    name: Test tvOS 
+    runs-on: macOS-latest
+    strategy:
+      matrix:
+        destination: ["OS=12.4,name=Apple TV 4K", "OS=11.4,name=Apple TV 4K", "OS=10.2,name=Apple TV 1080p"
+    steps:
+      - uses: actions/checkout@v1            
+      - name: tvOS - ${{ matrix.destination }}
+        run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire tvOS" -destination ${{ matrix.destination }} clean test | tee .ci/results/xcodebuild-${{ maxtrix.destination }}.log
+  watchOS:
+    name: Build watchOS
+    runs-on: macOS-latest
+        strategy:
+      matrix:
+        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"
+    steps:
+      - uses: actions/checkout@v1
+      - name: watchOS
+        run: xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire watchOS" -destination ${{ matrix.destination }} clean test | tee .ci/results/xcodebuild-${{ maxtrix.destination }}.log
+  spm:
+    name: Test SPM Integration
+    runs-on: macOS-latest    
+    needs: [macOS]
+    steps:
+      - uses: actions/checkout@v1
+      - name: SPM Build & Test
+        run: |      
+          cd 'Integrations/SPM'
+          swift build
+          swift test
+