2017-07-26 97 views
2

我想設置FASTLANE爲我的項目。我得到了一些目標(應用程序,watchkit應用和watchkit擴展),加上一些第三方項目,我的工作區。FASTLANE健身房配置特設分佈

我的問題是,我不能下載從crashlytics構建當我FASTLANE上傳,但我可以做到這一點,當我存檔建立manualy。

這是我FASTLANE

lane :beta do 

sh 'bash ./update_version.sh' 

gym(scheme: "MyApp", 
    workspace: "MyApp.xcworkspace", 
    configuration: "Ad Hoc Distribution") 

crashlytics(
    api_token: "d543d4a5b27009b...", 
    build_secret: "fafb26aa69fa...", 
    groups:"myapp-team", 
    notifications: true 
) 
end 

我添加配置屬性健身房,因爲它使用版本默認情況下,我想使用特定的配置分配,因爲所有特設的配置文件在這個配置中設立。

據我瞭解,有配置屬性健身房命令將設置特設配置工作空間內的所有目標和projets。對?

我試圖效仿FASTLANE會做,我設置好的Atchive - 在所有目標和項目計劃手動>Ad Hoc和存檔我的項目 - >Build Configuration。之後,我將這個檔案上傳到crashlytics,並能夠下載這個版本。所以,我的個人資料很好,並且包含我的設備。

如何檢查設置FASTLANE使用完全相同的配置/配置文件?

謝謝。

UPD

還有一個額外的檢查,這應該與一些細節幫助。

我歸檔項目和Xcode,然後創建IPA文件,並從面料的doc運行此命令 - https://docs.fabric.io/apple/beta/build-tools.html

/path/to/Crashlytics.framework/submit API_KEY BUILD_SECRET \ 
-ipaPath path.to/my.ipa \ 
-groupAliases my-team \ 
-notifications YES 

之後,我能下載的版本。

感謝託德從FASTLANE。

UPD 2

這是我FASTLANE輸出

... 
Copying myapp/Resources/sound/connection_found.wav 
[09:33:52]: ▸ Copying myapp/Resources/sound/connection_lost.wav 
[09:33:52]: ▸ Copying myapp.strings 
[09:33:52]: ▸ Copying myapp/Resources/sound/kicked.wav 
[09:33:56]: ▸ Processing myapp-Info.plist 
[09:33:56]: ▸ Generating 'myapp.app.dSYM' 
[09:33:59]: ▸ Copying /Users/evgeniitrapeznikov/Library/Developer/Xcode/DerivedData/myapp-dfrdqdmlsgvypadklcuzikqgrnzs/Build/Intermediates/ArchiveIntermediates/myapp/BuildProductsPath/Ad\ Hoc\ Distribution-iphoneos/myapp\ WatchKit\ Extension.appex 
[09:33:59]: ▸ skipping copy phase strip, binary is code signed: /Users/evgeniitrapeznikov/Library/Developer/Xcode/DerivedData/myapp-dfrdqdmlsgvypadklcuzikqgrnzs/Build/Intermediates/ArchiveIntermediates/myapp/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/myapp WatchKit Extension.appex/myapp WatchKit App.app/_WatchKitStub/WK 
[09:33:59]: ▸ skipping copy phase strip, binary is code signed: /Users/evgeniitrapeznikov/Library/Developer/Xcode/DerivedData/myapp-dfrdqdmlsgvypadklcuzikqgrnzs/Build/Intermediates/ArchiveIntermediates/myapp/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/myapp WatchKit Extension.appex/myapp WatchKit App.app/myapp WatchKit App 
[09:33:59]: ▸ skipping copy phase strip, binary is code signed: /Users/evgeniitrapeznikov/Library/Developer/Xcode/DerivedData/myapp-dfrdqdmlsgvypadklcuzikqgrnzs/Build/Intermediates/ArchiveIntermediates/myapp/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/myapp WatchKit Extension.appex/myapp WatchKit Extension 
[09:33:59]: ▸ Running script 'Run Script' 
[09:33:59]: ▸ Touching myapp.app 
[09:33:59]: ▸ Signing /Users/evgeniitrapeznikov/Library/Developer/Xcode/DerivedData/myapp-dfrdqdmlsgvypadklcuzikqgrnzs/Build/Intermediates/ArchiveIntermediates/myapp/InstallationBuildProductsLocation/Applications/myapp.app 
[09:34:00]: ▸ Touching myapp.app.dSYM 
[09:34:00]: ▸ Archive Succeeded 
[09:34:00]: Generated plist file with the following values: 
[09:34:00]: ▸ ----------------------------------------- 
[09:34:00]: ▸ { 
[09:34:00]: ▸ "method": "app-store", 
[09:34:00]: ▸ "uploadSymbols": true, 
[09:34:00]: ▸ "uploadBitcode": false 
[09:34:00]: ▸ } 
[09:34:00]: ▸ ----------------------------------------- 
[09:34:00]: $ /usr/bin/xcrun /Users/evgeniitrapeznikov/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.48.0/gym/lib/assets/wrap_xcodebuild/xcbuild-safe.sh -exportArchive -exportOptionsPlist '/var/folders/z7/3krkc5211ng2c090_qhd2tlm0000gn/T/gym_config20170726-23446-a2yb0t.plist' -archivePath /Users/evgeniitrapeznikov/Library/Developer/Xcode/Archives/2017-07-26/myapp\ 2017-07-26\ 09.32.18.xcarchive -exportPath '/var/folders/z7/3krkc5211ng2c090_qhd2tlm0000gn/T/gym_output20170726-23446-hafxer' 
[09:34:08]: Compressing 2 dSYM(s) 
[09:34:08]: $ cd '/Users/evgeniitrapeznikov/Library/Developer/Xcode/Archives/2017-07-26/myapp 2017-07-26 09.32.18.xcarchive/dSYMs' && zip -r '/Users/evgeniitrapeznikov/Desktop/myapp/myapp-ios-client/myapp.app.dSYM.zip' *.dSYM 
[09:34:09]: ▸ updating: myapp WatchKit Extension.appex.dSYM/ (stored 0%) 
[09:34:09]: ▸ updating: myapp WatchKit Extension.appex.dSYM/Contents/ (stored 0%) 
[09:34:09]: ▸ updating: myapp WatchKit Extension.appex.dSYM/Contents/Info.plist (deflated 51%) 
[09:34:09]: ▸ updating: myapp WatchKit Extension.appex.dSYM/Contents/Resources/ (stored 0%) 
[09:34:09]: ▸ updating: myapp WatchKit Extension.appex.dSYM/Contents/Resources/DWARF/ (stored 0%) 
[09:34:09]: ▸ updating: myapp WatchKit Extension.appex.dSYM/Contents/Resources/DWARF/myapp WatchKit Extension (deflated 64%) 
[09:34:09]: ▸ updating: myapp.app.dSYM/ (stored 0%) 
[09:34:09]: ▸ updating: myapp.app.dSYM/Contents/ (stored 0%) 
[09:34:09]: ▸ updating: myapp.app.dSYM/Contents/Info.plist (deflated 52%) 
[09:34:09]: ▸ updating: myapp.app.dSYM/Contents/Resources/ (stored 0%) 
[09:34:09]: ▸ updating: myapp.app.dSYM/Contents/Resources/DWARF/ (stored 0%) 
[09:34:09]: ▸ updating: myapp.app.dSYM/Contents/Resources/DWARF/myapp (deflated 69%) 

[09:34:09]: Successfully exported and compressed dSYM file 
[09:34:09]: Successfully exported and signed the ipa file: 
[09:34:09]: /Users/evgeniitrapeznikov/Desktop/myapp/myapp-ios-client/myapp.ipa 
[09:34:09]: ------------------------- 
[09:34:09]: --- Step: crashlytics --- 
[09:34:09]: ------------------------- 
[09:34:09]: Uploading the build to Crashlytics Beta. Time for some ☕️. 
[09:34:26]: Build successfully uploaded to Crashlytics Beta 
[09:34:26]: Visit https://fabric.io/_/beta to add release notes and notify testers. 
[09:34:26]: ------------------- 
[09:34:26]: --- Step: slack --- 
[09:34:26]: ------------------- 
[09:34:28]: Successfully sent Slack notification 

+------+---------------------+-------------+ 
|    fastlane summary    | 
+------+---------------------+-------------+ 
| Step | Action    | Time (in s) | 
+------+---------------------+-------------+ 
| 1 | Verifying required | 0   | 
|  | fastlane version |    | 
| 2 | default_platform | 0   | 
| 3 | bash    | 0   | 
|  | ./update_version.sh |    | 
| 4 | gym     | 118   | 
| 5 | crashlytics   | 16   | 
| 6 | slack    | 1   | 
+------+---------------------+-------------+ 

[09:34:28]: fastlane.tools finished successfully 
+0

我剛剛添加了以下3個配置的健身房。它工作正常。它完美地上傳到曲棍球應用程序。 export_method:「ad-hoc」, \t output_directory:「./Hockeybuild」, \t scheme:Array Of BundleId – Manoj

+1

感謝來自Fabric/fastlane的Eugene,Todd。如果您正在手動設置配置文件,您可以告訴我嗎?通常,這種類型的問題是由於在簽名時使用錯誤的配置文件造成的。您能否提供Crashlytics動作的完整輸出以上傳測試版本。另外,讓我知道,如果你在這裏看到與提交腳本相同的問題:https://docs.fabric.io/apple/beta/build-tools.html? –

+0

@ToddBurner在此感謝您的評論。我瞭解錯誤配置文件中的問題。是的,我手動設置了所有配置配置文件(沒有自動管理簽名檢查)。你想讓我在xcode中存檔項目,然後創建IPA文件並在終端中運行此腳本?或者我應該添加這個作爲與sh命令在fastlane中的步驟? –

回答

2

我只是說export_method: "ad-hoc"健身房的最後一部分,它的工作原理。