fastlane 2.118.0.beta.20190302200102 → 2.118.0.beta.20190303200015

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: 665abde066746cd1770ef575005fa6c5b6eba988
4
- data.tar.gz: ad3a810300e5c166cebd0b73e8e266a1e8f6f78e
3
+ metadata.gz: 2d1b799e1027ecb9a7c84922a1b5a73de470cc3d
4
+ data.tar.gz: 6012942fdc8fc7bab6b073225aa492808145796f
5
5
  SHA512:
6
- metadata.gz: 7f26d4836cc2869feee26e5a9ade65c2506d6a6654355d3b5b10266717e6ef7f29d2442592fe98619666dbe51d426fbe8bfecf8ac02b8a05d3a1f6bf1a51bd74
7
- data.tar.gz: e6e89ce2084105532924276c8a54f9c9f8616c6a3c0a1d03cb18a3dd9f37f44411553aa4c8b33d1b38b7a9c4d1d9f8c0b839e383098b1723de44d93b3481254e
6
+ metadata.gz: dfa686c56e9ed17d85b80a4021e749e8f10d99b257d7acba8cc31230e5fb63105cf67051b15fe4f37929c6f0ebf97c19ebdb88b7c7c5cfa16cf46e96b5d2a585
7
+ data.tar.gz: 67c0bf3b3f678ace7e68758acbaa87b81579afab56a3894572b5e230aea9418226d59cd9c72bcd95093d186de9aa6b848f336c32fe5272918058385ac7c8bace
@@ -78,11 +78,25 @@ To gradually roll out a new build use
78
78
  fastlane supply --apk path/app.apk --track rollout --rollout 0.5
79
79
  ```
80
80
 
81
+ ### Expansion files (`.obb`)
82
+
81
83
  Expansion files (obbs) found under the same directory as your APK will also be uploaded together with your APK as long as:
82
84
 
83
85
  - they are identified as type 'main' or 'patch' (by containing 'main' or 'patch' in their file name)
84
86
  - you have at most one of each type
85
87
 
88
+ If you only want to update the APK, but keep the expansion files from the previous version on Google Play use
89
+
90
+ ```no-highlight
91
+ fastlane supply --apk path/app.apk --obb_main_references_version 21 --obb_main_file_size 666154207
92
+ ```
93
+
94
+ or
95
+
96
+ ```no-highlight
97
+ fastlane supply --apk path/app.apk --obb_patch_references_version 21 --obb_patch_file_size 666154207
98
+ ```
99
+
86
100
  ## Uploading an AAB
87
101
 
88
102
  To upload a new [Android application bundle](https://developer.android.com/guide/app-bundle/) to Google Play, simply run
@@ -376,6 +376,13 @@ module Fastlane
376
376
  bundle_version: "1.0.2.145",
377
377
  ipa: "./my.msi",
378
378
  notes: "Changelog"
379
+ )',
380
+ '# You can bypass the CDN if you are uploading to Hockey and receive an SSL error (which can happen on corporate firewalls)
381
+ hockey(
382
+ api_token: "...",
383
+ ipa: "./app.ipa",
384
+ notes: "Changelog",
385
+ bypass_cdn: true
379
386
  )'
380
387
  ]
381
388
  end
@@ -15,6 +15,14 @@ module Fastlane
15
15
 
16
16
  def self.available_options
17
17
  [
18
+ FastlaneCore::ConfigItem.new(key: :certificate_path,
19
+ description: "Path to certificate",
20
+ optional: false),
21
+ FastlaneCore::ConfigItem.new(key: :certificate_password,
22
+ description: "Certificate password",
23
+ sensitive: true,
24
+ default_value: "",
25
+ optional: true),
18
26
  FastlaneCore::ConfigItem.new(key: :keychain_name,
19
27
  env_name: "KEYCHAIN_NAME",
20
28
  description: "Keychain the items should be imported to",
@@ -28,14 +36,6 @@ module Fastlane
28
36
  description: "The password for the keychain. Note that for the login keychain this is your user's password",
29
37
  sensitive: true,
30
38
  optional: true),
31
- FastlaneCore::ConfigItem.new(key: :certificate_path,
32
- description: "Path to certificate",
33
- optional: false),
34
- FastlaneCore::ConfigItem.new(key: :certificate_password,
35
- description: "Certificate password",
36
- sensitive: true,
37
- default_value: "",
38
- optional: true),
39
39
  FastlaneCore::ConfigItem.new(key: :log_output,
40
40
  description: "If output should be logged to the console",
41
41
  type: Boolean,
@@ -53,7 +53,7 @@ module Fastlane
53
53
  end
54
54
 
55
55
  def self.details
56
- "Import certificates into the current default keychain. Use `create_keychain` to create a new keychain."
56
+ "Import certificates (and private keys) into the current default keychain. Use the `create_keychain` action to create a new keychain."
57
57
  end
58
58
 
59
59
  def self.example_code
@@ -62,6 +62,9 @@ module Fastlane
62
62
  'import_certificate(
63
63
  certificate_path: "certs/dist.p12",
64
64
  certificate_password: ENV["CERTIFICATE_PASSWORD"] || "default"
65
+ )',
66
+ 'import_certificate(
67
+ certificate_path: "certs/development.cer"
65
68
  )'
66
69
  ]
67
70
  end
@@ -26,6 +26,9 @@ module Fastlane
26
26
  # optionally add the force component
27
27
  command << '--force-with-lease' if params[:force_with_lease]
28
28
 
29
+ # optionally add the no-verify component
30
+ command << '--no-verify' if params[:no_verify]
31
+
29
32
  # execute our command
30
33
  Actions.sh('pwd')
31
34
  return command.join(' ') if Helper.test?
@@ -68,7 +71,12 @@ module Fastlane
68
71
  FastlaneCore::ConfigItem.new(key: :remote,
69
72
  env_name: "FL_GIT_PUSH_REMOTE",
70
73
  description: "The remote to push to",
71
- default_value: 'origin')
74
+ default_value: 'origin'),
75
+ FastlaneCore::ConfigItem.new(key: :no_verify,
76
+ env_name: "FL_GIT_PUSH_USE_NO_VERIFY",
77
+ description: "Whether or not to use --no-verify",
78
+ type: Boolean,
79
+ default_value: false)
72
80
  ]
73
81
  end
74
82
 
@@ -93,7 +101,8 @@ module Fastlane
93
101
  remote_branch: "develop", # optional, default is set to local_branch
94
102
  force: true, # optional, default: false
95
103
  force_with_lease: true, # optional, default: false
96
- tags: false # optional, default: true
104
+ tags: false, # optional, default: true
105
+ no_verify: true # optional, default: false
97
106
  )'
98
107
  ]
99
108
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.118.0.beta.20190302200102'.freeze
2
+ VERSION = '2.118.0.beta.20190303200015'.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
  RUBOCOP_REQUIREMENT = '0.49.1'.freeze
@@ -103,8 +103,8 @@ module FastlaneCore
103
103
  # returns the Xcodeproj::Workspace or nil if it is a project
104
104
  def workspace
105
105
  return nil unless workspace?
106
+
106
107
  @workspace ||= Xcodeproj::Workspace.new_from_xcworkspace(path)
107
- @workspace.load_schemes(path)
108
108
  @workspace
109
109
  end
110
110
 
@@ -91,9 +91,30 @@ module Gym
91
91
  return destination_sdkroot.include?(sdkroot)
92
92
  end
93
93
 
94
+ def detect_configuration_for_archive
95
+ extract_from_scheme = lambda do
96
+ if self.project.workspace?
97
+ available_schemes = self.project.workspace.schemes.reject { |k, v| v.include?("Pods/Pods.xcodeproj") }
98
+ project_path = available_schemes[Gym.config[:scheme]]
99
+ else
100
+ project_path = self.project.path
101
+ end
102
+
103
+ if project_path
104
+ scheme_path = File.join(project_path, "xcshareddata", "xcschemes", "#{Gym.config[:scheme]}.xcscheme")
105
+ Xcodeproj::XCScheme.new(scheme_path).archive_action.build_configuration if File.exist?(scheme_path)
106
+ end
107
+ end
108
+
109
+ configuration = Gym.config[:configuration]
110
+ configuration ||= extract_from_scheme.call if Gym.config[:scheme]
111
+ configuration ||= self.project.default_build_settings(key: "CONFIGURATION")
112
+ return configuration
113
+ end
114
+
94
115
  def detect_project_profile_mapping
95
116
  provisioning_profile_mapping = {}
96
- specified_configuration = Gym.config[:configuration] || Gym.project.default_build_settings(key: "CONFIGURATION")
117
+ specified_configuration = detect_configuration_for_archive
97
118
 
98
119
  self.project.project_paths.each do |project_path|
99
120
  UI.verbose("Parsing project file '#{project_path}' to find selected provisioning profiles")
@@ -357,6 +357,23 @@ module Supply
357
357
  end
358
358
  end
359
359
 
360
+ def update_obb(apk_version_code, expansion_file_type, references_version, file_size)
361
+ ensure_active_edit!
362
+
363
+ call_google_api do
364
+ client.update_expansion_file(
365
+ current_package_name,
366
+ current_edit.id,
367
+ apk_version_code,
368
+ expansion_file_type,
369
+ Google::Apis::AndroidpublisherV2::ExpansionFile.new(
370
+ references_version: references_version,
371
+ file_size: file_size
372
+ )
373
+ )
374
+ end
375
+ end
376
+
360
377
  #####################################################
361
378
  # @!group Screenshots
362
379
  #####################################################
@@ -238,7 +238,27 @@ module Supply
238
238
  version_codes.each do |version_code|
239
239
  UI.user_error!("Version code '#{version_code}' is not an integer") unless version_code.kind_of?(Integer)
240
240
  end
241
- end)
241
+ end),
242
+ FastlaneCore::ConfigItem.new(key: :obb_main_references_version,
243
+ env_name: "SUPPLY_OBB_MAIN_REFERENCES_VERSION",
244
+ description: "References version of 'main' expansion file",
245
+ optional: true,
246
+ type: Numeric),
247
+ FastlaneCore::ConfigItem.new(key: :obb_main_file_size,
248
+ env_name: "SUPPLY_OBB_MAIN_FILE SIZE",
249
+ description: "Size of 'main' expansion file in bytes",
250
+ optional: true,
251
+ type: Numeric),
252
+ FastlaneCore::ConfigItem.new(key: :obb_patch_references_version,
253
+ env_name: "SUPPLY_OBB_PATCH_REFERENCES_VERSION",
254
+ description: "References version of 'patch' expansion file",
255
+ optional: true,
256
+ type: Numeric),
257
+ FastlaneCore::ConfigItem.new(key: :obb_patch_file_size,
258
+ env_name: "SUPPLY_OBB_PATCH_FILE SIZE",
259
+ description: "Size of 'patch' expansion file in bytes",
260
+ optional: true,
261
+ type: Numeric)
242
262
  ]
243
263
  end
244
264
  # rubocop:enable Metrics/PerceivedComplexity
@@ -184,6 +184,20 @@ module Supply
184
184
  apk_version_code = client.upload_apk(apk_path)
185
185
  UI.user_error!("Could not upload #{apk_path}") unless apk_version_code
186
186
 
187
+ if Supply.config[:obb_main_references_version] && Supply.config[:obb_main_file_size]
188
+ update_obb(apk_version_code,
189
+ 'main',
190
+ Supply.config[:obb_main_references_version],
191
+ Supply.config[:obb_main_file_size])
192
+ end
193
+
194
+ if Supply.config[:obb_patch_references_version] && Supply.config[:obb_patch_file_size]
195
+ update_obb(apk_version_code,
196
+ 'patch',
197
+ Supply.config[:obb_patch_references_version],
198
+ Supply.config[:obb_patch_file_size])
199
+ end
200
+
187
201
  upload_obbs(apk_path, apk_version_code)
188
202
 
189
203
  if metadata_path
@@ -198,6 +212,14 @@ module Supply
198
212
  apk_version_code
199
213
  end
200
214
 
215
+ def update_obb(apk_version_code, expansion_file_type, references_version, file_size)
216
+ UI.message("Updating '#{expansion_file_type}' expansion file from version '#{references_version}'...")
217
+ client.update_obb(apk_version_code,
218
+ expansion_file_type,
219
+ references_version,
220
+ file_size)
221
+ end
222
+
201
223
  def update_track(apk_version_codes)
202
224
  UI.message("Updating track '#{Supply.config[:track]}'...")
203
225
  check_superseded_tracks(apk_version_codes) if Supply.config[:check_superseded_tracks]
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.118.0.beta.20190302200102
4
+ version: 2.118.0.beta.20190303200015
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Dee
@@ -27,7 +27,7 @@ authors:
27
27
  autorequire:
28
28
  bindir: bin
29
29
  cert_chain: []
30
- date: 2019-03-02 00:00:00.000000000 Z
30
+ date: 2019-03-03 00:00:00.000000000 Z
31
31
  dependencies:
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: slack-notifier
@@ -55,7 +55,7 @@ dependencies:
55
55
  requirements:
56
56
  - - ">="
57
57
  - !ruby/object:Gem::Version
58
- version: 1.6.0
58
+ version: 1.8.1
59
59
  - - "<"
60
60
  - !ruby/object:Gem::Version
61
61
  version: 2.0.0
@@ -65,7 +65,7 @@ dependencies:
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: 1.6.0
68
+ version: 1.8.1
69
69
  - - "<"
70
70
  - !ruby/object:Gem::Version
71
71
  version: 2.0.0
@@ -1687,23 +1687,23 @@ metadata:
1687
1687
  post_install_message:
1688
1688
  rdoc_options: []
1689
1689
  require_paths:
1690
- - pem/lib
1691
- - cert/lib
1692
- - fastlane/lib
1693
1690
  - spaceship/lib
1691
+ - fastlane_core/lib
1692
+ - produce/lib
1693
+ - frameit/lib
1694
+ - fastlane/lib
1695
+ - screengrab/lib
1696
+ - pem/lib
1694
1697
  - credentials_manager/lib
1698
+ - cert/lib
1699
+ - pilot/lib
1700
+ - gym/lib
1695
1701
  - sigh/lib
1696
- - fastlane_core/lib
1697
- - supply/lib
1702
+ - snapshot/lib
1698
1703
  - scan/lib
1699
1704
  - match/lib
1700
- - pilot/lib
1701
- - frameit/lib
1702
- - produce/lib
1703
- - gym/lib
1704
- - screengrab/lib
1705
+ - supply/lib
1705
1706
  - precheck/lib
1706
- - snapshot/lib
1707
1707
  - deliver/lib
1708
1708
  required_ruby_version: !ruby/object:Gem::Requirement
1709
1709
  requirements: