15

Fastlane を使用して TestFlight へのデプロイを自動化しようとしています。レーンの1つがエラーになったとしても、「エラー時」に続行したい.

たとえば、以下の「doall」を実行して「item1」でエラーが発生した場合でも、「item2」と「item3」を引き続き実行したいと考えています。

これは可能ですか?ありがとう!

lane :item1 do
 # Do some stuff
end

lane :item2 do
 # Do some stuff
end

lane :item3 do
 # Do some stuff
end

lane :doall do
 item1 # This causes an error
 item2
 item3
end

error do |lane, exception|
 # Send error notification
end
4

2 に答える 2

35

これを行うには、Ruby のエラー処理を使用できます。

lane :item1 do
 # Do some stuff
end

lane :item2 do
 # Do some stuff
end

lane :item3 do
 # Do some stuff
end

lane :doall do
 begin
   item1 # This causes an error
 rescue => ex
   UI.error(ex)
 end
 begin
   item2
 rescue => ex
   UI.error(ex)
 end
 begin
   item3
 rescue => ex
   UI.error(ex)
 end
end

error do |lane, exception|
 # Send error notification
end

それほど美しいわけではありませんが、レーンごとにエラーを検出したい場合は、これが最善の方法です。

于 2016-06-18T22:02:24.477 に答える