Rakefile 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. require 'xcjobs'
  2. def destinations
  3. if ENV['CIRCLECI']
  4. [ 'name=iPhone 6,OS=9.0',
  5. 'name=iPhone 6 Plus,OS=9.0'
  6. ]
  7. else
  8. [ 'name=iPad 2,OS=8.1',
  9. 'name=iPad Air,OS=8.1',
  10. 'name=iPhone 4s,OS=8.1',
  11. 'name=iPhone 5,OS=8.1',
  12. 'name=iPhone 5s,OS=8.1',
  13. 'name=iPhone 6,OS=8.1',
  14. 'name=iPhone 6 Plus,OS=8.1',
  15. 'name=iPhone 6,OS=9.0',
  16. 'name=iPhone 6 Plus,OS=9.0',
  17. 'name=iPhone 6,OS=9.1',
  18. 'name=iPhone 6 Plus,OS=9.1'
  19. ]
  20. end
  21. end
  22. XCJobs::Build.new('build:ios:simulator') do |t|
  23. t.project = 'KeychainAccess'
  24. t.scheme = 'KeychainAccess-iOS'
  25. t.sdk = 'iphonesimulator'
  26. t.configuration = 'Release'
  27. t.build_dir = 'build'
  28. t.formatter = 'xcpretty -c'
  29. t.add_build_setting('CODE_SIGN_IDENTITY', '')
  30. t.add_build_setting('CODE_SIGNING_REQUIRED', 'NO')
  31. end
  32. XCJobs::Build.new('build:ios:device') do |t|
  33. t.project = 'KeychainAccess'
  34. t.scheme = 'KeychainAccess-iOS'
  35. t.sdk = 'iphoneos'
  36. t.configuration = 'Release'
  37. t.build_dir = 'build'
  38. t.formatter = 'xcpretty -c'
  39. t.add_build_setting('CODE_SIGN_IDENTITY', '')
  40. t.add_build_setting('CODE_SIGNING_REQUIRED', 'NO')
  41. end
  42. XCJobs::Build.new('build:tvos:simulator') do |t|
  43. t.project = 'KeychainAccess'
  44. t.scheme = 'KeychainAccess-tvOS'
  45. t.sdk = 'appletvsimulator'
  46. t.configuration = 'Release'
  47. t.build_dir = 'build'
  48. t.formatter = 'xcpretty -c'
  49. t.add_build_setting('CODE_SIGN_IDENTITY', '')
  50. t.add_build_setting('CODE_SIGNING_REQUIRED', 'NO')
  51. end
  52. XCJobs::Build.new('build:tvos:device') do |t|
  53. t.project = 'KeychainAccess'
  54. t.scheme = 'KeychainAccess-tvOS'
  55. t.sdk = 'appletvos'
  56. t.configuration = 'Release'
  57. t.build_dir = 'build'
  58. t.formatter = 'xcpretty -c'
  59. t.add_build_setting('CODE_SIGN_IDENTITY', '')
  60. t.add_build_setting('CODE_SIGNING_REQUIRED', 'NO')
  61. end
  62. XCJobs::Build.new('build:osx') do |t|
  63. t.project = 'KeychainAccess'
  64. t.scheme = 'KeychainAccess-Mac'
  65. t.configuration = 'Release'
  66. t.build_dir = 'build'
  67. t.formatter = 'xcpretty -c'
  68. t.add_build_setting('CODE_SIGN_IDENTITY', '')
  69. t.add_build_setting('CODE_SIGNING_REQUIRED', 'NO')
  70. end
  71. XCJobs::Test.new('test:ios') do |t|
  72. t.project = 'KeychainAccess'
  73. t.scheme = 'KeychainAccess-iOS'
  74. t.configuration = 'Release'
  75. t.coverage = true
  76. destinations.each do |destination|
  77. t.add_destination(destination)
  78. end
  79. t.build_dir = 'build'
  80. t.formatter = 'xcpretty -c'
  81. end
  82. XCJobs::Test.new('test:tvos') do |t|
  83. t.project = 'KeychainAccess'
  84. t.scheme = 'KeychainAccess-tvOS'
  85. t.sdk = 'appletvsimulator'
  86. t.configuration = 'Release'
  87. t.coverage = true
  88. t.build_dir = 'build'
  89. t.formatter = 'xcpretty -c'
  90. end
  91. XCJobs::Test.new('test:osx') do |t|
  92. t.project = 'KeychainAccess'
  93. t.scheme = 'KeychainAccess-Mac'
  94. t.sdk = 'macosx'
  95. t.configuration = 'Release'
  96. t.coverage = true
  97. t.build_dir = 'build'
  98. t.formatter = 'xcpretty -c'
  99. end
  100. XCJobs::Coverage::Coveralls.new() do |t|
  101. end