fastlane 1.99.0 → 1.100.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 28b8a9977502edeea107da475bedffceb4ff575e
4
- data.tar.gz: 45ec673ada611ee9ebe2348fd90eae048c5a26cb
3
+ metadata.gz: b4f94f49145b163b3e66158a97f75eaeebe84253
4
+ data.tar.gz: fafe74ed2bff80cc8272c7cb40f1d9f0141bb1b5
5
5
  SHA512:
6
- metadata.gz: d2250b41a5ab0b0e806550352e723eaf1e84d233fdd1c705a9edd5dcb578c82bab9d3400bae707289e2559445ae05a308ac90523a266b46de32c2f8b485f8426
7
- data.tar.gz: 59c837b323a5fa9d8978a689ac584ce236995e2e2833e64d97d845220bea3c4ece1522fbfcdb9e14dea90f70e9f16d6dc2694a5d512e461a2e39ed55f0cf8caa
6
+ metadata.gz: 27a87b7b330b560d846d7db68476f9ad5b106c2974c385235af7d06e9829aa97641a97ed8b2343a9ff00c377b0b996896faf7a1e10fd37fbade88d672228ac5e
7
+ data.tar.gz: dfc558934a4f4558f68b85b52bac664848e9c6378a1b496b1f1e9132467e18ff593bc77b1aa8287d5a0f704fa8a6fbf6bc447c16f441a7ef73a47b5bedf80e08
Binary file
Binary file
Binary file
@@ -75,6 +75,10 @@ module Fastlane
75
75
  self.name.split('::').last.gsub('Action', '').fastlane_underscore
76
76
  end
77
77
 
78
+ def self.lane_context
79
+ Actions.lane_context
80
+ end
81
+
78
82
  # Allows the user to call an action from an action
79
83
  def self.method_missing(method_sym, *arguments, &_block)
80
84
  UI.error("Unknown method '#{method_sym}'")
@@ -19,6 +19,7 @@ module Fastlane
19
19
  cmd << "--platform #{params[:platform]}" if params[:platform]
20
20
  cmd << "--configuration #{params[:configuration]}" if params[:configuration]
21
21
  cmd << "--derived-data #{params[:derived_data].shellescape}" if params[:derived_data]
22
+ cmd << "--toolchain #{params[:toolchain]}" if params[:toolchain]
22
23
 
23
24
  Actions.sh(cmd.join(' '))
24
25
  end
@@ -118,7 +119,11 @@ module Fastlane
118
119
  if value.chomp(' ').empty?
119
120
  UI.user_error!("Please pass a valid build configuration. You can review the list of configurations for this project using the command: xcodebuild -list")
120
121
  end
121
- end)
122
+ end),
123
+ FastlaneCore::ConfigItem.new(key: :toolchain,
124
+ env_name: "FL_CARTHAGE_TOOLCHAIN",
125
+ description: "Define which xcodebuild toolchain to use when building",
126
+ optional: true)
122
127
  ]
123
128
  end
124
129
 
@@ -16,6 +16,7 @@ module Fastlane
16
16
 
17
17
  version = params[:version]
18
18
  build_number = params[:build_number]
19
+ platform = params[:platform]
19
20
 
20
21
  message = []
21
22
  message << "Looking for dSYM files for #{params[:app_identifier]}"
@@ -33,11 +34,11 @@ module Fastlane
33
34
  UI.user_error!("Could not find app with bundle identifier '#{params[:app_identifier]}' on account #{params[:username]}")
34
35
  end
35
36
 
36
- app.all_build_train_numbers.each do |train_number|
37
+ app.all_build_train_numbers(platform: platform).each do |train_number|
37
38
  if version && version != train_number
38
39
  next
39
40
  end
40
- app.all_builds_for_train(train: train_number).each do |build|
41
+ app.all_builds_for_train(train: train_number, platform: platform).each do |build|
41
42
  if build_number && build.build_version != build_number
42
43
  next
43
44
  end
@@ -125,6 +126,11 @@ module Fastlane
125
126
  verify_block: proc do |value|
126
127
  ENV["FASTLANE_ITC_TEAM_NAME"] = value
127
128
  end),
129
+ FastlaneCore::ConfigItem.new(key: :platform,
130
+ short_option: "-p",
131
+ env_name: "DOWNLOAD_DSYMS_PLATFORM",
132
+ description: "The app platform for dSYMs you wish to download",
133
+ optional: true),
128
134
  FastlaneCore::ConfigItem.new(key: :version,
129
135
  short_option: "-v",
130
136
  env_name: "DOWNLOAD_DSYMS_VERSION",
@@ -51,7 +51,8 @@ module Fastlane
51
51
  json_headers = { 'Content-Type' => 'application/json',
52
52
  'Accept' => 'application/json', 'Authorization' => "Bearer #{api_token}" }
53
53
 
54
- uri = URI.parse("https://#{api_host}/v2/user/#{channel}/message")
54
+ escaped_channel = URI.unescape(channel) == channel ? URI.escape(channel) : channel
55
+ uri = URI.parse("https://#{api_host}/v2/user/#{escaped_channel}/message")
55
56
  http = Net::HTTP.new(uri.host, uri.port)
56
57
  http.use_ssl = true
57
58
 
@@ -26,7 +26,7 @@ module Fastlane
26
26
  description: "The url of the repository to import the Fastfile from",
27
27
  default_value: nil),
28
28
  FastlaneCore::ConfigItem.new(key: :branch,
29
- description: "The branch to check-out on the repository",
29
+ description: "The branch or tag to check-out on the repository",
30
30
  default_value: 'HEAD',
31
31
  optional: true),
32
32
  FastlaneCore::ConfigItem.new(key: :path,
@@ -3,7 +3,7 @@ module Fastlane
3
3
  class JiraAction < Action
4
4
  def self.run(params)
5
5
  Actions.verify_gem!('jira-ruby')
6
- require 'jira'
6
+ require 'jira-ruby'
7
7
 
8
8
  site = params[:url]
9
9
  context_path = ""
@@ -12,6 +12,7 @@ module Fastlane
12
12
 
13
13
  credentials = CredentialsManager::AccountManager.new(user: params[:username])
14
14
  Spaceship::Tunes.login(credentials.user, credentials.password)
15
+ ENV["FASTLANE_TEAM_ID"] = params[:team_id]
15
16
  Spaceship::Tunes.select_team
16
17
  app = Spaceship::Tunes::Application.find(params[:app_identifier])
17
18
 
@@ -75,8 +76,12 @@ module Fastlane
75
76
  env_name: "INTITIAL_BUILD_NUMBER",
76
77
  description: "sets the build number to given value if no build is in current train",
77
78
  optional: true,
78
- is_string: false)
79
-
79
+ is_string: false),
80
+ FastlaneCore::ConfigItem.new(key: :team_id,
81
+ env_name: "FASTLANE_TEAM_ID",
82
+ description: "Your team ID if you're in multiple teams",
83
+ default_value: CredentialsManager::AppfileConfig.try_fetch_value(:team_id),
84
+ optional: true)
80
85
  ]
81
86
  end
82
87
 
@@ -1,22 +1,43 @@
1
1
  module Fastlane
2
2
  module Actions
3
+ module SharedValues
4
+ SCAN_DERIVED_DATA_PATH = :SCAN_DERIVED_DATA_PATH
5
+ SCAN_GENERATED_PLIST_FILE = :SCAN_GENERATED_PLIST_FILE
6
+ end
7
+
3
8
  class ScanAction < Action
4
9
  def self.run(values)
5
10
  require 'scan'
6
11
 
7
12
  begin
13
+ Scan.config = values # we set this here to auto-detect missing values, which we need later on
14
+ unless values[:derived_data_path].to_s.empty?
15
+ plist_files_before = Dir["#{values[:derived_data_path]}/**/Logs/Test/*TestSummaries.plist"]
16
+ Scan.config[:destination] = nil # we have to do this, as otherwise a warning is shown to the user to not set this value
17
+ end
18
+
8
19
  FastlaneCore::UpdateChecker.start_looking_for_update('scan') unless Helper.is_test?
9
20
 
10
21
  Scan::Manager.new.work(values)
11
22
 
12
- true
23
+ return true
24
+ rescue => ex
25
+ if values[:fail_build]
26
+ raise ex
27
+ end
13
28
  ensure
29
+ unless values[:derived_data_path].to_s.empty?
30
+ Actions.lane_context[SharedValues::SCAN_DERIVED_DATA_PATH] = values[:derived_data_path]
31
+ plist_files_after = Dir["#{values[:derived_data_path]}/**/Logs/Test/*TestSummaries.plist"]
32
+ Actions.lane_context[SharedValues::SCAN_GENERATED_PLIST_FILE] = (plist_files_after - plist_files_before).last
33
+ end
34
+
14
35
  FastlaneCore::UpdateChecker.show_update_status('scan', Scan::VERSION)
15
36
  end
16
37
  end
17
38
 
18
39
  def self.description
19
- "Easily test your app using `scan`"
40
+ "Easily run tests of your iOS app using `scan`"
20
41
  end
21
42
 
22
43
  def self.details
@@ -29,7 +50,13 @@ module Fastlane
29
50
 
30
51
  def self.available_options
31
52
  require 'scan'
32
- Scan::Options.available_options
53
+
54
+ FastlaneCore::CommanderGenerator.new.generate(Scan::Options.available_options) + [
55
+ FastlaneCore::ConfigItem.new(key: :fail_build,
56
+ env_name: "SCAN_FAIL_BUILD",
57
+ description: "Should this step stop the build if the tests fail? Set this to false if you're using trainer",
58
+ default_value: true)
59
+ ]
33
60
  end
34
61
 
35
62
  def self.is_supported?(platform)
@@ -35,12 +35,12 @@ module Fastlane
35
35
  output << ""
36
36
  end
37
37
 
38
- output << "This README.md is auto-generated and will be re-generated every time to run [fastlane](https://fastlane.tools)."
38
+ output << "This README.md is auto-generated and will be re-generated every time [fastlane](https://fastlane.tools) is run."
39
39
  output << "More information about fastlane can be found on [https://fastlane.tools](https://fastlane.tools)."
40
40
  output << "The documentation of fastlane can be found on [GitHub](https://github.com/fastlane/fastlane/tree/master/fastlane)."
41
41
 
42
42
  File.write(output_path, output.join("\n"))
43
- UI.success "Successfully generated documentation to path '#{File.expand_path(output_path)}'" if $verbose
43
+ UI.success "Successfully generated documentation at path '#{File.expand_path(output_path)}'" if $verbose
44
44
  end
45
45
 
46
46
  #####################################################
@@ -9,7 +9,7 @@ module Fastlane
9
9
  path = File.join(containing_folder, 'report.xml')
10
10
 
11
11
  @steps = results
12
- xml_path = File.join(lib_path, "assets/report_template.xml.erb")
12
+ xml_path = File.join(Helper.gem_path("fastlane"), "lib/assets/report_template.xml.erb")
13
13
  xml = ERB.new(File.read(xml_path)).result(binding) # http://www.rrn.dk/rubys-erb-templating-system
14
14
 
15
15
  xml = xml.gsub('system_', 'system-').delete("\e") # Jenkins can not parse 'ESC' symbol
@@ -18,13 +18,5 @@ module Fastlane
18
18
 
19
19
  return path
20
20
  end
21
-
22
- def self.lib_path
23
- if !Helper.is_test? and Gem::Specification.find_all_by_name('fastlane').any?
24
- return [Gem::Specification.find_by_name('fastlane').gem_dir, 'lib'].join('/')
25
- else
26
- return './lib'
27
- end
28
- end
29
21
  end
30
22
  end
@@ -94,6 +94,7 @@ module Fastlane
94
94
  rows = []
95
95
  actions.each_with_index do |current, i|
96
96
  name = current[:name][0..60]
97
+ name = name.red unless current[:error].to_s.empty?
97
98
  rows << [i + 1, name, current[:time].to_i]
98
99
  end
99
100
 
@@ -8,7 +8,8 @@ module Fastlane
8
8
  def self.fetch_gems(search_query: nil)
9
9
  require 'json'
10
10
  require 'open-uri'
11
- url = "https://rubygems.org/api/v1/search.json?query=#{PluginManager.plugin_prefix}"
11
+ url = "https://rubygems.org/api/v1/search.json?query=#{PluginManager.plugin_prefix}#{search_query}"
12
+ FastlaneCore::UI.verbose("RubyGems API Request: #{url}")
12
13
  results = JSON.parse(open(url).read)
13
14
 
14
15
  plugins = results.collect do |current|
@@ -1,4 +1,4 @@
1
1
  module Fastlane
2
- VERSION = '1.99.0'.freeze
2
+ VERSION = '1.100.0'.freeze
3
3
  DESCRIPTION = "The easiest way to automate building and releasing your iOS and Android apps"
4
4
  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: 1.99.0
4
+ version: 1.100.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
@@ -15,7 +15,7 @@ authors:
15
15
  autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
- date: 2016-07-27 00:00:00.000000000 Z
18
+ date: 2016-08-10 00:00:00.000000000 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: krausefx-shenzhen
@@ -237,7 +237,7 @@ dependencies:
237
237
  requirements:
238
238
  - - ">="
239
239
  - !ruby/object:Gem::Version
240
- version: 0.28.0
240
+ version: 0.31.1
241
241
  - - "<"
242
242
  - !ruby/object:Gem::Version
243
243
  version: 1.0.0
@@ -247,7 +247,7 @@ dependencies:
247
247
  requirements:
248
248
  - - ">="
249
249
  - !ruby/object:Gem::Version
250
- version: 0.28.0
250
+ version: 0.31.1
251
251
  - - "<"
252
252
  - !ruby/object:Gem::Version
253
253
  version: 1.0.0
@@ -257,7 +257,7 @@ dependencies:
257
257
  requirements:
258
258
  - - ">="
259
259
  - !ruby/object:Gem::Version
260
- version: 1.13.1
260
+ version: 1.13.2
261
261
  - - "<"
262
262
  - !ruby/object:Gem::Version
263
263
  version: 2.0.0
@@ -267,7 +267,7 @@ dependencies:
267
267
  requirements:
268
268
  - - ">="
269
269
  - !ruby/object:Gem::Version
270
- version: 1.13.1
270
+ version: 1.13.2
271
271
  - - "<"
272
272
  - !ruby/object:Gem::Version
273
273
  version: 2.0.0
@@ -277,7 +277,7 @@ dependencies:
277
277
  requirements:
278
278
  - - ">="
279
279
  - !ruby/object:Gem::Version
280
- version: 1.12.3
280
+ version: 1.13.0
281
281
  - - "<"
282
282
  - !ruby/object:Gem::Version
283
283
  version: 2.0.0
@@ -287,7 +287,7 @@ dependencies:
287
287
  requirements:
288
288
  - - ">="
289
289
  - !ruby/object:Gem::Version
290
- version: 1.12.3
290
+ version: 1.13.0
291
291
  - - "<"
292
292
  - !ruby/object:Gem::Version
293
293
  version: 2.0.0
@@ -317,7 +317,7 @@ dependencies:
317
317
  requirements:
318
318
  - - ">="
319
319
  - !ruby/object:Gem::Version
320
- version: 1.3.1
320
+ version: 1.3.2
321
321
  - - "<"
322
322
  - !ruby/object:Gem::Version
323
323
  version: 2.0.0
@@ -327,7 +327,7 @@ dependencies:
327
327
  requirements:
328
328
  - - ">="
329
329
  - !ruby/object:Gem::Version
330
- version: 1.3.1
330
+ version: 1.3.2
331
331
  - - "<"
332
332
  - !ruby/object:Gem::Version
333
333
  version: 2.0.0
@@ -357,7 +357,7 @@ dependencies:
357
357
  requirements:
358
358
  - - ">="
359
359
  - !ruby/object:Gem::Version
360
- version: 1.8.0
360
+ version: 1.9.0
361
361
  - - "<"
362
362
  - !ruby/object:Gem::Version
363
363
  version: 2.0.0
@@ -367,7 +367,7 @@ dependencies:
367
367
  requirements:
368
368
  - - ">="
369
369
  - !ruby/object:Gem::Version
370
- version: 1.8.0
370
+ version: 1.9.0
371
371
  - - "<"
372
372
  - !ruby/object:Gem::Version
373
373
  version: 2.0.0
@@ -377,7 +377,7 @@ dependencies:
377
377
  requirements:
378
378
  - - ">="
379
379
  - !ruby/object:Gem::Version
380
- version: 1.1.2
380
+ version: 1.2.0
381
381
  - - "<"
382
382
  - !ruby/object:Gem::Version
383
383
  version: 2.0.0
@@ -387,7 +387,7 @@ dependencies:
387
387
  requirements:
388
388
  - - ">="
389
389
  - !ruby/object:Gem::Version
390
- version: 1.1.2
390
+ version: 1.2.0
391
391
  - - "<"
392
392
  - !ruby/object:Gem::Version
393
393
  version: 2.0.0
@@ -417,7 +417,7 @@ dependencies:
417
417
  requirements:
418
418
  - - ">="
419
419
  - !ruby/object:Gem::Version
420
- version: 1.9.1
420
+ version: 1.10.0
421
421
  - - "<"
422
422
  - !ruby/object:Gem::Version
423
423
  version: 2.0.0
@@ -427,37 +427,37 @@ dependencies:
427
427
  requirements:
428
428
  - - ">="
429
429
  - !ruby/object:Gem::Version
430
- version: 1.9.1
430
+ version: 1.10.0
431
431
  - - "<"
432
432
  - !ruby/object:Gem::Version
433
433
  version: 2.0.0
434
434
  - !ruby/object:Gem::Dependency
435
- name: supply
435
+ name: scan
436
436
  requirement: !ruby/object:Gem::Requirement
437
437
  requirements:
438
438
  - - ">="
439
439
  - !ruby/object:Gem::Version
440
- version: 0.7.0
440
+ version: 0.11.0
441
441
  - - "<"
442
442
  - !ruby/object:Gem::Version
443
- version: 1.0.0
443
+ version: 2.0.0
444
444
  type: :runtime
445
445
  prerelease: false
446
446
  version_requirements: !ruby/object:Gem::Requirement
447
447
  requirements:
448
448
  - - ">="
449
449
  - !ruby/object:Gem::Version
450
- version: 0.7.0
450
+ version: 0.11.0
451
451
  - - "<"
452
452
  - !ruby/object:Gem::Version
453
- version: 1.0.0
453
+ version: 2.0.0
454
454
  - !ruby/object:Gem::Dependency
455
- name: scan
455
+ name: supply
456
456
  requirement: !ruby/object:Gem::Requirement
457
457
  requirements:
458
458
  - - ">="
459
459
  - !ruby/object:Gem::Version
460
- version: 0.8.0
460
+ version: 0.7.0
461
461
  - - "<"
462
462
  - !ruby/object:Gem::Version
463
463
  version: 1.0.0
@@ -467,7 +467,7 @@ dependencies:
467
467
  requirements:
468
468
  - - ">="
469
469
  - !ruby/object:Gem::Version
470
- version: 0.8.0
470
+ version: 0.7.0
471
471
  - - "<"
472
472
  - !ruby/object:Gem::Version
473
473
  version: 1.0.0
@@ -694,11 +694,13 @@ files:
694
694
  - bin/fastlane
695
695
  - "bin/\U0001F680"
696
696
  - lib/.DS_Store
697
+ - lib/assets/.DS_Store
697
698
  - lib/assets/AppfileTemplate
698
699
  - lib/assets/AppfileTemplateAndroid
699
700
  - lib/assets/AvailablePlugins.md.erb
700
701
  - lib/assets/DefaultFastfileTemplate
701
702
  - lib/assets/FastfileTemplateAndroid
703
+ - lib/assets/completions/.DS_Store
702
704
  - lib/assets/completions/completion.bash
703
705
  - lib/assets/completions/completion.sh
704
706
  - lib/assets/completions/completion.zsh
@@ -712,6 +714,7 @@ files:
712
714
  - lib/fastlane/.DS_Store
713
715
  - lib/fastlane/action.rb
714
716
  - lib/fastlane/action_collector.rb
717
+ - lib/fastlane/actions/.DS_Store
715
718
  - lib/fastlane/actions/README.md
716
719
  - lib/fastlane/actions/actions_helper.rb
717
720
  - lib/fastlane/actions/adb.rb
@@ -751,6 +754,7 @@ files:
751
754
  - lib/fastlane/actions/delete_keychain.rb
752
755
  - lib/fastlane/actions/deliver.rb
753
756
  - lib/fastlane/actions/deploygate.rb
757
+ - lib/fastlane/actions/device_grid/.DS_Store
754
758
  - lib/fastlane/actions/device_grid/README.md
755
759
  - lib/fastlane/actions/dotgpg_environment.rb
756
760
  - lib/fastlane/actions/download.rb
@@ -941,7 +945,6 @@ files:
941
945
  - lib/fastlane/plugins/template/lib/fastlane/plugin/%plugin_name%/version.rb.erb
942
946
  - lib/fastlane/plugins/template/spec/%plugin_name%_action_spec.rb.erb
943
947
  - lib/fastlane/plugins/template/spec/spec_helper.rb.erb
944
- - lib/fastlane/plugins/templates/.DS_Store
945
948
  - lib/fastlane/runner.rb
946
949
  - lib/fastlane/setup/crashlytics_beta.rb
947
950
  - lib/fastlane/setup/crashlytics_beta_command_line_handler.rb
@@ -976,7 +979,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
976
979
  version: '0'
977
980
  requirements: []
978
981
  rubyforge_project:
979
- rubygems_version: 2.4.5.1
982
+ rubygems_version: 2.6.6
980
983
  signing_key:
981
984
  specification_version: 4
982
985
  summary: The easiest way to automate building and releasing your iOS and Android apps