fastlane 2.49.0.beta.20170726010003 → 2.49.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d04b00f78d2701aa52d92880295801b94668b90b
4
- data.tar.gz: 2cf0b15d424699f1bb82ccde3863178383023843
3
+ metadata.gz: 0c5c381e61264ae25a5cfba6d7edbf480c8a9cd8
4
+ data.tar.gz: 11dd2bcdb58efdae3fbd9ebd03a71e8fb4d11d89
5
5
  SHA512:
6
- metadata.gz: bf52ba6c3ba67dd861d8069a664a62039b9554261a545f376573f53aca349c56fa88b9a19e2a74de8666677138ca4f681c4ab303bdb90a4262c119cfa14abbb7
7
- data.tar.gz: 92714f9e5119feee4af96e14be17efb3d466706349141456a4062ee2ab2f1db6c31863823fd5fead501728734910c855a8c950427ea4acb0c151670afdeab0a1
6
+ metadata.gz: 4a743fa1d2630708355d3cbb74ec96d4a600022d65409f9c5c1b3a1016e1cc729a0ac5334ad01fb0f26765f35f57dc8a01d05b82e8351512710f664bc7f92bec
7
+ data.tar.gz: 7bcb044b0c80e7a5dee29d816dd5f9657323bbbe700b5fab970abde6cd92aa232208c2fce549ca8dbcae5a817dc68759a24ee80ad2f7e422be6df05c35565719
@@ -28,5 +28,6 @@ Gem::Specification.new do |spec|
28
28
  spec.add_development_dependency 'rspec'
29
29
  spec.add_development_dependency 'rake'
30
30
  spec.add_development_dependency 'rubocop'
31
+ spec.add_development_dependency 'simplecov'
31
32
  spec.add_development_dependency 'fastlane', '>= <%= Fastlane::VERSION %>'
32
33
  end
@@ -8,3 +8,4 @@ Gemfile.lock
8
8
  /rdoc/
9
9
  fastlane/README.md
10
10
  fastlane/report.xml
11
+ coverage
@@ -1,5 +1,10 @@
1
1
  $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
2
 
3
+ require 'simplecov'
4
+
5
+ # SimpleCov.minimum_coverage 95
6
+ SimpleCov.start
7
+
3
8
  # This module is only used to check the environment is currently a testing env
4
9
  module SpecHelper
5
10
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.49.0.beta.20170726010003'.freeze
2
+ VERSION = '2.49.0'.freeze
3
3
  DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
4
4
  MINIMUM_XCODE_RELEASE = "7.0".freeze
5
5
  end
@@ -98,15 +98,21 @@ module Gym
98
98
 
99
99
  bundle_identifier = current["PRODUCT_BUNDLE_IDENTIFIER"]
100
100
  provisioning_profile_specifier = current["PROVISIONING_PROFILE_SPECIFIER"]
101
- next if provisioning_profile_specifier.to_s.length == 0
102
-
103
- provisioning_profile_mapping[bundle_identifier] = provisioning_profile_specifier
101
+ provisioning_profile_uuid = current["PROVISIONING_PROFILE"]
102
+ if provisioning_profile_specifier.to_s.length > 0
103
+ provisioning_profile_mapping[bundle_identifier] = provisioning_profile_specifier
104
+ elsif provisioning_profile_uuid.to_s.length > 0
105
+ provisioning_profile_mapping[bundle_identifier] = provisioning_profile_uuid
106
+ end
104
107
  end
105
108
  end
106
109
  rescue => ex
107
110
  # We catch errors here, as we might run into an exception on one included project
108
111
  # But maybe the next project actually contains the information we need
109
112
  if Helper.xcode_at_least?("9.0")
113
+ UI.error("Couldn't automatically detect the provisioning profile mapping")
114
+ UI.error("Since Xcode 9 you need to provide an explicit mapping of what")
115
+ UI.error("provisioning profile to use for each target of your app")
110
116
  UI.error(ex)
111
117
  UI.verbose(ex.backtrace.join("\n"))
112
118
  end
@@ -94,6 +94,7 @@ module Gym
94
94
  print_full_log_path
95
95
  print_environment_information
96
96
  print_build_error_instructions
97
+ print_xcode9_plist_warning
97
98
  UI.build_failure!("Error packaging up the application", error_info: output)
98
99
  end
99
100
 
@@ -139,6 +140,21 @@ module Gym
139
140
  UI.important("📋 #{log_path}")
140
141
  end
141
142
 
143
+ def print_xcode9_plist_warning
144
+ return unless Helper.xcode_at_least?("9.0")
145
+
146
+ export_options = Gym.config[:export_options] || {}
147
+ provisioning_profiles = export_options[:provisioningProfiles] || []
148
+ if provisioning_profiles.count == 0
149
+ UI.error("Looks like no provisioning profile mapping was provided")
150
+ UI.error("Please check the complete output, in particular the very top")
151
+ UI.error("and see if you can find more information. You can also run fastlane")
152
+ UI.error("with the `--verbose` flag.")
153
+ UI.error("Alternatively you can provide the provisioning profile mapping manually")
154
+ UI.error("https://docs.fastlane.tools/codesigning/xcode-project/#xcode-9-and-up")
155
+ end
156
+ end
157
+
142
158
  def print_xcode_version
143
159
  # lots of the times, the user didn't set the correct Xcode version to their Xcode path
144
160
  # since many users don't look at the table of summary before running a tool, let's make
@@ -207,14 +223,14 @@ module Gym
207
223
  # the provisioning profile might be called anything below
208
224
  # There is no 100% good way to detect the profile type based on the name
209
225
  available_export_types = {
210
- "app-store" => :appstore,
211
- "app store" => :appstore,
212
- "appstore" => :appstore,
213
- "ad-hoc" => :adhoc,
214
- "adhoc" => :adhoc,
215
- "ad hoc" => :adhoc,
216
- "enterprise" => :enterprise,
217
- "development" => :development
226
+ "app-store" => "app-store",
227
+ "app store" => "app-store",
228
+ "appstore" => "app-store",
229
+ "ad-hoc" => "ad-hoc",
230
+ "adhoc" => "ad-hoc",
231
+ "ad hoc" => "ad-hoc",
232
+ "enterprise" => "enterprise",
233
+ "development" => "development"
218
234
  }
219
235
 
220
236
  selected_provisioning_profiles.each do |current_bundle_identifier, current_profile_name|
@@ -107,7 +107,7 @@ module Gym
107
107
  optional: true,
108
108
  verify_block: proc do |value|
109
109
  av = %w(app-store ad-hoc package enterprise development developer-id)
110
- UI.user_error!("Unsupported export_method, must be: #{av}") unless av.include?(value)
110
+ UI.user_error!("Unsupported export_method '#{value}', must be: #{av}") unless av.include?(value)
111
111
  end),
112
112
  FastlaneCore::ConfigItem.new(key: :export_options,
113
113
  env_name: "GYM_EXPORT_OPTIONS",
data/sigh/README.md CHANGED
@@ -120,6 +120,8 @@ To download all your provisioning profiles use
120
120
 
121
121
  fastlane sigh download_all
122
122
 
123
+ Optionally, use `fastlane sigh download_all --download_xcode_profiles` to also include the Xcode managed provisioning profiles
124
+
123
125
  For a list of available parameters and commands run
124
126
 
125
127
  fastlane sigh --help
@@ -60,11 +60,21 @@ module Sigh
60
60
  c.syntax = 'fastlane sigh download_all'
61
61
  c.description = 'Downloads all valid provisioning profiles'
62
62
 
63
+ c.option '--download_xcode_profiles', 'Only works with `fastlane sigh download_all` command: Also download Xcode managed provisioning profiles'
64
+
63
65
  FastlaneCore::CommanderGenerator.new.generate(Sigh::Options.available_options, command: c)
64
66
 
65
67
  c.action do |args, options|
66
- Sigh.config = FastlaneCore::Configuration.create(Sigh::Options.available_options, options.__hash__)
67
- Sigh::Manager.download_all
68
+ # Below is some custom code to get an extra flag that's only available
69
+ # for the `fastlane sigh download_all` command and not for the `sigh` action
70
+ user_hash = options.__hash__
71
+ download_xcode_profiles = options.download_xcode_profiles
72
+
73
+ if download_xcode_profiles == true
74
+ user_hash.delete(:download_xcode_profiles)
75
+ end
76
+ Sigh.config = FastlaneCore::Configuration.create(Sigh::Options.available_options, user_hash)
77
+ Sigh::Manager.download_all(download_xcode_profiles: download_xcode_profiles)
68
78
  end
69
79
  end
70
80
 
@@ -1,13 +1,13 @@
1
1
  module Sigh
2
2
  class DownloadAll
3
3
  # Download all valid provisioning profiles
4
- def download_all
4
+ def download_all(download_xcode_profiles: false)
5
5
  UI.message "Starting login with user '#{Sigh.config[:username]}'"
6
6
  Spaceship.login(Sigh.config[:username], nil)
7
7
  Spaceship.select_team
8
8
  UI.message "Successfully logged in"
9
9
 
10
- Spaceship.provisioning_profile.all.each do |profile|
10
+ Spaceship.provisioning_profile.all(xcode: download_xcode_profiles).each do |profile|
11
11
  if profile.valid?
12
12
  UI.message "Downloading profile '#{profile.name}'..."
13
13
  download_profile(profile)
@@ -15,6 +15,12 @@ module Sigh
15
15
  UI.important "Skipping invalid/expired profile '#{profile.name}'"
16
16
  end
17
17
  end
18
+
19
+ if download_xcode_profiles
20
+ UI.message("This run also included all Xcode managed provisioning profiles, as you used the `--download_xcode_profiles` flag")
21
+ else
22
+ UI.message("All Xcode managed provisioning profiles were ignored on this, to include them use the `--download_xcode_profiles` flag")
23
+ end
18
24
  end
19
25
 
20
26
  def download_profile(profile)
@@ -29,9 +29,9 @@ module Sigh
29
29
  return File.expand_path(output)
30
30
  end
31
31
 
32
- def self.download_all
32
+ def self.download_all(download_xcode_profiles: false)
33
33
  require 'sigh/download_all'
34
- DownloadAll.new.download_all
34
+ DownloadAll.new.download_all(download_xcode_profiles: download_xcode_profiles)
35
35
  end
36
36
 
37
37
  def self.install_profile(profile)
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: 2.49.0.beta.20170726010003
4
+ version: 2.49.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
@@ -1398,24 +1398,24 @@ metadata:
1398
1398
  post_install_message:
1399
1399
  rdoc_options: []
1400
1400
  require_paths:
1401
- - spaceship/lib
1402
- - scan/lib
1403
- - sigh/lib
1404
- - snapshot/lib
1405
- - screengrab/lib
1406
- - fastlane/lib
1407
1401
  - cert/lib
1408
- - pem/lib
1409
- - gym/lib
1410
- - produce/lib
1402
+ - credentials_manager/lib
1411
1403
  - deliver/lib
1412
- - supply/lib
1413
- - match/lib
1404
+ - fastlane/lib
1405
+ - fastlane_core/lib
1414
1406
  - frameit/lib
1415
- - credentials_manager/lib
1407
+ - gym/lib
1408
+ - match/lib
1409
+ - pem/lib
1416
1410
  - pilot/lib
1417
1411
  - precheck/lib
1418
- - fastlane_core/lib
1412
+ - produce/lib
1413
+ - scan/lib
1414
+ - screengrab/lib
1415
+ - sigh/lib
1416
+ - snapshot/lib
1417
+ - spaceship/lib
1418
+ - supply/lib
1419
1419
  required_ruby_version: !ruby/object:Gem::Requirement
1420
1420
  requirements:
1421
1421
  - - ">="
@@ -1423,14 +1423,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
1423
1423
  version: 2.0.0
1424
1424
  required_rubygems_version: !ruby/object:Gem::Requirement
1425
1425
  requirements:
1426
- - - ">"
1426
+ - - ">="
1427
1427
  - !ruby/object:Gem::Version
1428
- version: 1.3.1
1428
+ version: '0'
1429
1429
  requirements: []
1430
1430
  rubyforge_project:
1431
- rubygems_version: 2.4.5.1
1431
+ rubygems_version: 2.6.8
1432
1432
  signing_key:
1433
1433
  specification_version: 4
1434
1434
  summary: The easiest way to automate beta deployments and releases for your iOS and
1435
1435
  Android apps
1436
1436
  test_files: []
1437
+ has_rdoc: