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

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: 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: