Kaynağa Gözat

Add Xcode 9.1/9.2 Travis CI

Kishikawa Katsumi 7 yıl önce
ebeveyn
işleme
6cdafcd74d
2 değiştirilmiş dosya ile 76 ekleme ve 0 silme
  1. 22 0
      .travis.yml
  2. 54 0
      Lib/Rakefile

+ 22 - 0
.travis.yml

@@ -27,6 +27,28 @@ matrix:
   - osx_image: xcode9.3
     env: ACTION='test:macosx'
 
+  - osx_image: xcode9.2
+    env: ACTION=build
+  - osx_image: xcode9.2
+    env: ACTION='build:carthage'
+  - osx_image: xcode9.2
+    env: ACTION='test:iphonesimulator'
+  - osx_image: xcode9.2
+    env: ACTION='test:appletvsimulator'
+  - osx_image: xcode9.2
+    env: ACTION='test:macosx'
+
+  - osx_image: xcode9.1
+    env: ACTION=build
+  - osx_image: xcode9.1
+    env: ACTION='build:carthage'
+  - osx_image: xcode9.1
+    env: ACTION='test:iphonesimulator'
+  - osx_image: xcode9.1
+    env: ACTION='test:appletvsimulator'
+  - osx_image: xcode9.1
+    env: ACTION='test:macosx'
+
   - osx_image: xcode9
     env: ACTION=build
   - osx_image: xcode9

+ 54 - 0
Lib/Rakefile

@@ -27,6 +27,26 @@ def destinations(platform: 'iphonesimulator')
         'name=iPad Pro (9.7-inch),OS=11.2',
         'name=iPad Pro (12.9-inch),OS=11.3'
       ]
+    elsif xcode_version.start_with?('9.2')
+      [ 'name=iPhone 5s,OS=11.2',
+        'name=iPhone 5s,OS=11.2',
+        'name=iPhone 6,OS=11.2',
+        'name=iPhone 6s Plus,OS=11.2',
+        'name=iPhone SE,OS=11.2',
+        'name=iPad Air 2,OS=11.2',
+        'name=iPad Pro (9.7-inch),OS=11.2',
+        'name=iPad Pro (12.9-inch),OS=11.2'
+      ]
+    elsif xcode_version.start_with?('9.1')
+      [ 'name=iPhone 5s,OS=11.1',
+        'name=iPhone 5s,OS=11.1',
+        'name=iPhone 6,OS=11.1',
+        'name=iPhone 6s Plus,OS=11.1',
+        'name=iPhone SE,OS=11.1',
+        'name=iPad Air 2,OS=11.1',
+        'name=iPad Pro (9.7-inch),OS=11.1',
+        'name=iPad Pro (12.9-inch),OS=11.1'
+      ]
     else
       [ 'name=iPhone 5,OS=10.0',
         'name=iPhone 5s,OS=10.0',
@@ -50,6 +70,16 @@ def destinations(platform: 'iphonesimulator')
         'name=Apple Watch - 42mm,OS=4.3',
         'name=Apple Watch Series 2 - 42mm,OS=4.3'
       ]
+    elsif xcode_version.start_with?('9.2')
+      [ 'name=Apple Watch - 38mm,OS=4.2',
+        'name=Apple Watch - 42mm,OS=4.2',
+        'name=Apple Watch Series 2 - 42mm,OS=4.2'
+      ]
+    elsif xcode_version.start_with?('9.1')
+      [ 'name=Apple Watch - 38mm,OS=4.1',
+        'name=Apple Watch - 42mm,OS=4.1',
+        'name=Apple Watch Series 2 - 42mm,OS=4.1'
+      ]
     else
       [ 'name=Apple Watch - 38mm,OS=3.2',
         'name=Apple Watch - 42mm,OS=4.0',
@@ -63,6 +93,12 @@ def destinations(platform: 'iphonesimulator')
     elsif xcode_version.start_with?('9.3')
       [ 'name=Apple TV 4K,OS=11.3'
       ]
+    elsif xcode_version.start_with?('9.2')
+      [ 'name=Apple TV 4K,OS=11.2'
+      ]
+    elsif xcode_version.start_with?('9.1')
+      [ 'name=Apple TV 4K,OS=11.1'
+      ]
     else
       [ 'name=Apple TV 1080p,OS=10.2',
         'name=Apple TV 1080p,OS=11.0'
@@ -123,6 +159,24 @@ namespace :build do
         elsif platform == 'appletvsimulator'
           t.add_destination('name=Apple TV 4K,OS=11.3')
         end
+      elsif xcode_version.start_with?('9.2')
+        t.add_build_setting('SWIFT_VERSION', '4.0')
+        if platform == 'iphonesimulator'
+          t.add_destination('name=iPhone 7,OS=11.2')
+        elsif platform == 'watchsimulator'
+          t.add_destination('name=Apple Watch - 42mm,OS=4.2')
+        elsif platform == 'appletvsimulator'
+          t.add_destination('name=Apple TV 4K,OS=11.2')
+        end
+      elsif xcode_version.start_with?('9.1')
+        t.add_build_setting('SWIFT_VERSION', '4.0')
+        if platform == 'iphonesimulator'
+          t.add_destination('name=iPhone 7,OS=11.1')
+        elsif platform == 'watchsimulator'
+          t.add_destination('name=Apple Watch - 42mm,OS=4.1')
+        elsif platform == 'appletvsimulator'
+          t.add_destination('name=Apple TV 4K,OS=11.1')
+        end
       else
         t.add_build_setting('SWIFT_VERSION', '4.0')
         if platform == 'iphonesimulator'