Class: Fastlane::ActionCollector
- Inherits:
-
Object
- Object
- Fastlane::ActionCollector
- Defined in:
- lib/fastlane/action_collector.rb
Constant Summary collapse
- HOST_URL =
"https://fastlane-enhancer.herokuapp.com/"
Instance Method Summary collapse
-
#did_finish ⇒ Object
Sends the used actions Example data => [:xcode_select, :deliver, :notify, :slack].
- #did_launch_action(name) ⇒ Object
- #did_raise_error(name) ⇒ Object
- #did_show_message? ⇒ Boolean
- #is_official?(name) ⇒ Boolean
- #launches ⇒ Object
Instance Method Details
#did_finish ⇒ Object
Sends the used actions Example data => [:xcode_select, :deliver, :notify, :slack]
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 |
# File 'lib/fastlane/action_collector.rb', line 20 def did_finish unless ENV["FASTLANE_OPT_OUT_USAGE"] begin if ! and !Helper.is_ci? Helper.log.debug("Sending Crash/Success information. More information on: https://github.com/fastlane/enhancer") Helper.log.debug("No personal/sensitive data is sent. Only sharing the following:") Helper.log.debug(launches) Helper.log.debug(@error) if @error Helper.log.debug("This information is used to fix failing actions and improve integrations that are often used.") Helper.log.debug("You can disable this by adding `opt_out_usage` to your Fastfile") end require 'excon' url = HOST_URL + '/did_launch?' url += URI.encode_www_form( steps: launches.to_json, error: @error ) unless Helper.is_test? # don't send test data fork do begin Excon.post(url) rescue # we don't want to show a stack trace if something goes wrong end end end rescue # We don't care about connection errors end end end |
#did_launch_action(name) ⇒ Object
5 6 7 8 9 10 |
# File 'lib/fastlane/action_collector.rb', line 5 def did_launch_action(name) if is_official?(name) launches[name] ||= 0 launches[name] += 1 end end |
#did_raise_error(name) ⇒ Object
12 13 14 15 16 |
# File 'lib/fastlane/action_collector.rb', line 12 def did_raise_error(name) if is_official?(name) @error = name end end |
#did_show_message? ⇒ Boolean
63 64 65 66 67 68 69 |
# File 'lib/fastlane/action_collector.rb', line 63 def path = File.join(File.('~'), '.did_show_opt_info') did_show = File.exists?path File.write(path, '1') did_show end |
#is_official?(name) ⇒ Boolean
58 59 60 61 |
# File 'lib/fastlane/action_collector.rb', line 58 def is_official?(name) return true if name == :lane_switch Actions.get_all_official_actions.include?name end |
#launches ⇒ Object
54 55 56 |
# File 'lib/fastlane/action_collector.rb', line 54 def launches @launches ||= {} end |