Fastlane 모음
2020.08.06
SUNG9
Fastlane을 이용한 자동화 코드 모음(실제 사용 중)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 platform :ios do lane :cm_test do begin test_lane() rescue => exception on_error(exception) end end desc "Send Slack" lane :sendSlack do sendSlack() end lane :cm_upload_stg do begin upload_stg() sendSlack() rescue => exception on_error(exception) end end lane :cm_upload_prd do begin upload_prd() sendSlack() rescue => exception on_error(exception) end end lane :cm_upload_prd_test_ad do begin upload_prd_test_ad() sendSlack() rescue => exception on_error(exception) end end lane :cm_upload_all do begin upload_stg() upload_prd() upload_prd_test_ad() uploadedAllBuild() rescue => exception on_error(exception) end end end
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 def test_lane clear_derived_data scan( workspace: "projectName.xcworkspace", devices: ["iPhone 6s", "iPad Air"] ) end def uploadedAllBuild slack( message: "Successfully uploaded a All build", slack_url: "url" ) slack( message: "Successfully uploaded a All build", slack_url: "url" ) end def sendSlack slack( message: "Successfully uploaded a new App Store build", slack_url: "url" ) slack( message: "Successfully uploaded a new App Store build", slack_url: "url" ) end def slackTest slack( message: "Test", success: true, slack_url: "url", attachment_properties: { fields: [ { title: "슬랙 보내기 테스트 입니다.", value: ENV["BUILD_NUMBER"], } ] } ) end def on_error(exception) slack( message: "Error!!!", success: false, slack_url: "url", attachment_properties: { fields: [ { title: "Build number", value: ENV["BUILD_NUMBER"], }, { title: "Error message", value: exception.to_s, short: false } ] } ) end