fastlane 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/lib/assets/FastfileTemplate +3 -0
  3. data/lib/fastlane.rb +1 -0
  4. data/lib/fastlane/action.rb +5 -0
  5. data/lib/fastlane/action_collector.rb +3 -1
  6. data/lib/fastlane/actions/actions_helper.rb +5 -0
  7. data/lib/fastlane/actions/add_git_tag.rb +21 -15
  8. data/lib/fastlane/actions/cert.rb +2 -2
  9. data/lib/fastlane/actions/clean_build_artifacts.rb +1 -1
  10. data/lib/fastlane/actions/commit_version_bump.rb +15 -8
  11. data/lib/fastlane/actions/crashlytics.rb +51 -66
  12. data/lib/fastlane/actions/deliver.rb +32 -15
  13. data/lib/fastlane/actions/deploygate.rb +29 -22
  14. data/lib/fastlane/actions/ensure_git_status_clean.rb +1 -1
  15. data/lib/fastlane/actions/frameit.rb +2 -2
  16. data/lib/fastlane/actions/gcovr.rb +2 -2
  17. data/lib/fastlane/actions/hipchat.rb +36 -23
  18. data/lib/fastlane/actions/hockey.rb +37 -23
  19. data/lib/fastlane/actions/increment_build_number.rb +14 -19
  20. data/lib/fastlane/actions/increment_version_number.rb +42 -44
  21. data/lib/fastlane/actions/install_carthage.rb +1 -1
  22. data/lib/fastlane/actions/install_cocapods.rb +1 -1
  23. data/lib/fastlane/actions/ipa.rb +69 -47
  24. data/lib/fastlane/actions/notify.rb +1 -1
  25. data/lib/fastlane/actions/pem.rb +1 -1
  26. data/lib/fastlane/actions/produce.rb +3 -4
  27. data/lib/fastlane/actions/push_to_git_remote.rb +24 -14
  28. data/lib/fastlane/actions/register_devices.rb +23 -11
  29. data/lib/fastlane/actions/reset_git_repo.rb +13 -5
  30. data/lib/fastlane/actions/resign.rb +19 -16
  31. data/lib/fastlane/actions/s3.rb +56 -37
  32. data/lib/fastlane/actions/sigh.rb +1 -1
  33. data/lib/fastlane/actions/slack.rb +31 -13
  34. data/lib/fastlane/actions/snapshot.rb +13 -6
  35. data/lib/fastlane/actions/team_id.rb +1 -1
  36. data/lib/fastlane/actions/team_name.rb +1 -1
  37. data/lib/fastlane/actions/testmunk.rb +28 -14
  38. data/lib/fastlane/actions/typetalk.rb +1 -1
  39. data/lib/fastlane/actions/update_fastlane.rb +115 -0
  40. data/lib/fastlane/actions/update_project_code_signing.rb +22 -7
  41. data/lib/fastlane/actions/xcode_select.rb +1 -1
  42. data/lib/fastlane/actions/xcodebuild.rb +56 -12
  43. data/lib/fastlane/actions_list.rb +2 -2
  44. data/lib/fastlane/configuration_helper.rb +28 -0
  45. data/lib/fastlane/fast_file.rb +17 -0
  46. data/lib/fastlane/fastlane_folder.rb +3 -3
  47. data/lib/fastlane/setup.rb +11 -5
  48. data/lib/fastlane/version.rb +1 -1
  49. metadata +7 -5
@@ -92,6 +92,23 @@ module Fastlane
92
92
  begin
93
93
  Dir.chdir('..') do # go up from the fastlane folder, to the project folder
94
94
  Actions.execute_action(method_sym) do
95
+ # arguments is an array by default, containing an hash with the actual parameters
96
+ # Since we usually just need the passed hash, we'll just use the first object if there is only one
97
+ if arguments.count == 0
98
+ arguments = ConfigurationHelper.parse(class_ref, {}) # no parameters => empty hsh
99
+ elsif arguments.count == 1 and arguments.first.kind_of?Hash
100
+ arguments = ConfigurationHelper.parse(class_ref, arguments.first) # Correct configuration passed
101
+ elsif not class_ref.available_options
102
+ # This action does not use the new action format
103
+ # Just passing the arguments to this method
104
+ else
105
+ Helper.log.fatal "------------------------------------------------------------------------------------".red
106
+ Helper.log.fatal "If you've been an existing fastlane user, please check out the MigrationGuide to 1.0".yellow
107
+ Helper.log.fatal "https://github.com/KrauseFx/fastlane/blob/master/docs/MigrationGuide.md".yellow
108
+ Helper.log.fatal "------------------------------------------------------------------------------------".red
109
+ raise "You have to pass the options for '#{method_sym}' in a different way. Please check out the current documentation on GitHub!".red
110
+ end
111
+
95
112
  class_ref.run(arguments)
96
113
  end
97
114
  end
@@ -15,9 +15,9 @@ module Fastlane
15
15
  File.exist?(path)
16
16
  end
17
17
 
18
- def self.create_folder!
19
- path = "./#{FOLDER_NAME}"
20
- FileUtils.mkdir_p path
18
+ def self.create_folder!(path = nil)
19
+ path = File.join(path || '.', FOLDER_NAME)
20
+ FileUtils.mkdir_p(path)
21
21
  Helper.log.info "Created new folder '#{path}'.".green
22
22
  end
23
23
  end
@@ -3,15 +3,16 @@
3
3
  module Fastlane
4
4
  class Setup
5
5
  def run
6
- raise "Fastlane already set up at path #{folder}".yellow if FastlaneFolder.setup?
6
+ raise "Fastlane already set up at path #{folder}".yellow if (FastlaneFolder.setup? and not Helper.is_test?)
7
7
 
8
8
  show_infos
9
9
  response = agree('Do you want to get started? This will move your Deliverfile and Snapfile (if they exist) (y/n)'.yellow, true)
10
10
  return unless response
11
11
  response = agree('Do you have everything commited in version control? If not please do so! (y/n)'.yellow, true)
12
12
  return unless response
13
+
13
14
  begin
14
- FastlaneFolder.create_folder!
15
+ FastlaneFolder.create_folder! unless Helper.is_test?
15
16
  copy_existing_files
16
17
  generate_app_metadata
17
18
  detect_installed_tools # after copying the existing files
@@ -42,6 +43,7 @@ module Fastlane
42
43
 
43
44
  def copy_existing_files
44
45
  files_to_copy.each do |current|
46
+ current = File.join(File.expand_path('..', FastlaneFolder.path), current)
45
47
  next unless File.exist?(current)
46
48
  file_name = File.basename(current)
47
49
  to_path = File.join(folder, file_name)
@@ -67,8 +69,8 @@ module Fastlane
67
69
  @tools = {}
68
70
  @tools[:deliver] = File.exist?(File.join(folder, 'Deliverfile'))
69
71
  @tools[:snapshot] = File.exist?(File.join(folder, 'Snapfile'))
70
- @tools[:xctool] = File.exist?('./.xctool-args')
71
- @tools[:cocoapods] = File.exist?('./Podfile')
72
+ @tools[:xctool] = File.exist?(File.join(File.expand_path('..', folder), '.xctool-args'))
73
+ @tools[:cocoapods] = File.exist?(File.join(File.expand_path('..', folder), 'Podfile'))
72
74
  @tools[:sigh] = false
73
75
  end
74
76
 
@@ -87,7 +89,7 @@ module Fastlane
87
89
  Helper.log.info 'Update your `ipa` and `beta_ipa` block of your Deliverfile to go a folder up before building'.yellow
88
90
  Helper.log.info "e.g. `system('cd ..; ipa build')`".yellow
89
91
  Helper.log.info 'Please read the above carefully and click Enter to confirm.'.green
90
- STDIN.gets
92
+ STDIN.gets unless Helper.is_test?
91
93
  end
92
94
 
93
95
  unless @tools[:snapshot]
@@ -128,6 +130,10 @@ module Fastlane
128
130
  FastlaneFolder.path
129
131
  end
130
132
 
133
+ def tools
134
+ @tools
135
+ end
136
+
131
137
  def restore_previous_state
132
138
  # Move all moved files back
133
139
  files_to_copy.each do |current|
@@ -1,3 +1,3 @@
1
1
  module Fastlane
2
- VERSION = '0.11.0'
2
+ VERSION = '0.12.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
@@ -198,14 +198,14 @@ dependencies:
198
198
  requirements:
199
199
  - - '>='
200
200
  - !ruby/object:Gem::Version
201
- version: 0.5.2
201
+ version: 0.5.3
202
202
  type: :runtime
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - '>='
207
207
  - !ruby/object:Gem::Version
208
- version: 0.5.2
208
+ version: 0.5.3
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: sigh
211
211
  requirement: !ruby/object:Gem::Requirement
@@ -240,14 +240,14 @@ dependencies:
240
240
  requirements:
241
241
  - - '>='
242
242
  - !ruby/object:Gem::Version
243
- version: 0.1.5
243
+ version: 0.1.6
244
244
  type: :runtime
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
248
  - - '>='
249
249
  - !ruby/object:Gem::Version
250
- version: 0.1.5
250
+ version: 0.1.6
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: bundler
253
253
  requirement: !ruby/object:Gem::Requirement
@@ -417,11 +417,13 @@ files:
417
417
  - lib/fastlane/actions/team_name.rb
418
418
  - lib/fastlane/actions/testmunk.rb
419
419
  - lib/fastlane/actions/typetalk.rb
420
+ - lib/fastlane/actions/update_fastlane.rb
420
421
  - lib/fastlane/actions/update_project_code_signing.rb
421
422
  - lib/fastlane/actions/xcode_select.rb
422
423
  - lib/fastlane/actions/xcodebuild.rb
423
424
  - lib/fastlane/actions/xctool.rb
424
425
  - lib/fastlane/actions_list.rb
426
+ - lib/fastlane/configuration_helper.rb
425
427
  - lib/fastlane/core_ext/string.rb
426
428
  - lib/fastlane/dependency_checker.rb
427
429
  - lib/fastlane/docs_generator.rb