SiarheiFedartsou / fastlane-plugin-versioning

Extends fastlane versioning actions. Allows to set/get versions without using agvtool and do some other small tricks.
MIT License
509 stars 61 forks source link

No implicit conversion of nil into String #18

Closed BernhardHarrer closed 6 years ago

BernhardHarrer commented 6 years ago

Hi,

since fastlane 2.57 i get the following error with increment_build_number_in_plist.

This is how i call it in Fastfile:

increment_build_number_in_plist( build_number: ENV["BUILD_NUMBER"], scheme:betaAppScheme )

/Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane_core/lib/fastlane_core/project.rb:81:in expand_path': [!] no implicit conversion of nil into String (TypeError) from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane_core/lib/fastlane_core/project.rb:81:ininitialize' from /usr/local/lib/ruby/gems/2.5.0/gems/fastlane-plugin-versioning-0.3.3/lib/fastlane/plugin/versioning/actions/get_info_plist_path.rb:58:in new' from /usr/local/lib/ruby/gems/2.5.0/gems/fastlane-plugin-versioning-0.3.3/lib/fastlane/plugin/versioning/actions/get_info_plist_path.rb:58:infind_path_using_scheme' from /usr/local/lib/ruby/gems/2.5.0/gems/fastlane-plugin-versioning-0.3.3/lib/fastlane/plugin/versioning/actions/get_info_plist_path.rb:20:in run' from /usr/local/lib/ruby/gems/2.5.0/gems/fastlane-plugin-versioning-0.3.3/lib/fastlane/plugin/versioning/actions/increment_build_number_in_plist.rb:17:inrun' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:253:in block (2 levels) in execute_action' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/actions/actions_helper.rb:50:inexecute_action' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:231:in block in execute_action' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:227:inchdir' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:227:in execute_action' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:148:intrigger_action_by_name' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/fast_file.rb:148:in method_missing' from Fastfile:24:inblock in parsing_binding' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/lane.rb:33:in call' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:201:intry_switch_to_lane' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:156:in trigger_action_by_name' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/fast_file.rb:148:inmethod_missing' from Fastfile:63:in block in parsing_binding' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/lane.rb:33:incall' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:49:in block in execute' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:45:inchdir' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/runner.rb:45:in execute' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/lane_manager.rb:56:incruise_lane' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/command_line_handler.rb:34:in handle' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/commands_generator.rb:107:inblock (2 levels) in run' from /usr/local/lib/ruby/gems/2.5.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in call' from /usr/local/lib/ruby/gems/2.5.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:153:inrun' from /usr/local/lib/ruby/gems/2.5.0/gems/commander-fastlane-4.4.5/lib/commander/runner.rb:476:in run_active_command' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:75:inrun!' from /usr/local/lib/ruby/gems/2.5.0/gems/commander-fastlane-4.4.5/lib/commander/delegates.rb:15:in run!' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/commands_generator.rb:336:inrun' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/commands_generator.rb:42:in start' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/fastlane/lib/fastlane/cli_tools_distributor.rb:94:intake_off' from /Users/jenkins/.gem/ruby/2.5.0/gems/fastlane-2.75.1/bin/fastlane:20:in <top (required)>' from /usr/local/bin/fastlane:23:inload' from /usr/local/bin/fastlane:23:in `

'

I've tried lot of things. I've updated fastlane, i've updated ruby, but nothing works.

Thanks Bernhard

SiarheiFedartsou commented 6 years ago

@BernhardHarrer thanks for posting this! Is it possible to make some example project to reproduce this issue? Also as a workaround you can try to use target instead of scheme(yes, there are not the same, but sometimes can substitute each other).

BernhardHarrer commented 6 years ago

Hi @SiarheiFedartsou,

thanks for the quick answer. I also tried to use target but it makes no difference. I tried this on new plain (Just created with Xcode) swift project, so nothing special about it.

Best Bernhard

BernhardHarrer commented 6 years ago

Hi,

sorry for this issue, seems like some weird misconfiguration. I moved the fastlane directory and Gemfile, because of other problems and now it works.

Thanks Bernhard

alexpareto commented 5 years ago

To others who run into this issue, it was due to my xcodeproj not being in my root directory (the default). Configuring it as below solved the issue:

    increment_build_number_in_plist(
      build_number: yournumber,
      scheme: "yourscheme",
      xcodeproj: 'path/to/your/project.xcodeproj'  # this is the part that was missing
    )