fastlane-plugin-bugsnag 2.1.0 → 2.2.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
  SHA256:
3
- metadata.gz: cb02bbcd07f8414b53af7ca55a5f34f5ac8179277956fcb3844a51df3c0e876d
4
- data.tar.gz: 730aba51c05865a47636d8238771dbbe877b06d31ea47b7027ef0b790857edfc
3
+ metadata.gz: 57b215435ee483ac067b8476b40366d4040791e56311709e1e73533f356a0658
4
+ data.tar.gz: 27f72d72fff57102bc787434b2b06dc5272b7001877d4993e99122fd15a1c5d7
5
5
  SHA512:
6
- metadata.gz: 78559861f0166bbd2289efb4680737fcc7f72a40c7f0453ddeea8579caa30f599733f21d3d69dd51029b8ffe876d52a12119ab6e67969d54b7fd42f296976323
7
- data.tar.gz: 9b98fddce9e3f8cc31ca6d5ac077f29f8e5d464a1026ce67dca80bc70024efb06b9e3e90d3e2242e002721e4b47184c6983086d9c692ac490012b70cb2007d79
6
+ metadata.gz: 7ca750f77a93d83b0d786eff7e99a843551bdd4a59ee0585dfe83f2239c777381b33188810844ca1a227cc7e3fd489f90712cf470ab2ad19bc0c05a515caf757
7
+ data.tar.gz: a819e53c15fa5cfa35da10d4021535b91b5b52eddc56b0a22bb86f8c77ac0c21e2abc46b83d3d5ccad33cf0864ec2bc71aab97a50777058c2177e717a12968ee
@@ -17,9 +17,12 @@ module Fastlane
17
17
  # If verbose flag is enabled (`--verbose`), display the plugin action debug info
18
18
  # Store the verbose flag for use in the upload arguments.
19
19
  verbose = UI.verbose("Uploading dSYMs to Bugsnag with the following parameters:")
20
+ rjust = 30 # set justification width for keys for the list of parameters to output
20
21
  params.values.each do |param|
21
- UI.verbose(" #{param[0].to_s.rjust(18)}: #{param[1]}")
22
+ UI.verbose(" #{param[0].to_s.rjust(rjust)}: #{param[1]}")
22
23
  end
24
+ UI.verbose(" #{"SharedValues::DSYM_PATHS".to_s.rjust(rjust)}: #{gym_dsyms? ? Actions.lane_context[SharedValues::DSYM_PATHS] : "not set"}")
25
+ UI.verbose(" #{"SharedValues::DSYM_OUTPUT_PATH".to_s.rjust(rjust)}: #{download_dsym_dsyms? ? Actions.lane_context[SharedValues::DSYM_OUTPUT_PATH] : "not set"}")
23
26
 
24
27
  parse_dsym_paths(params[:dsym_path]).each do |dsym_path|
25
28
  if dsym_path.end_with?(".zip") or File.directory?(dsym_path)
@@ -41,7 +44,7 @@ module Fastlane
41
44
  end
42
45
 
43
46
  def self.authors
44
- ["kattrali"]
47
+ ["kattrali", "xander-jones"]
45
48
  end
46
49
 
47
50
  def self.return_value
@@ -92,8 +95,8 @@ module Fastlane
92
95
  FastlaneCore::ConfigItem.new(key: :dsym_path,
93
96
  type: Array,
94
97
  env_name: "BUGSNAG_DSYM_PATH",
95
- description: "Path to the DSYM directory, file, or zip to upload",
96
- default_value: default_dsym_path,
98
+ description: "Path to the dSYM directory, file, or zip to upload",
99
+ default_value: default_dsym_paths,
97
100
  optional: true,
98
101
  verify_block: validate_dsym_path),
99
102
  FastlaneCore::ConfigItem.new(key: :upload_url,
@@ -167,19 +170,44 @@ module Fastlane
167
170
  args
168
171
  end
169
172
 
173
+ # returns an array of unique dSYM-containing directory paths to upload
170
174
  def self.parse_dsym_paths dsym_path
171
- dsym_paths = dsym_path.is_a?(Array) ? dsym_path : [dsym_path]
172
- dsym_paths.compact.map do |path|
175
+ dsym_path.compact.map do |path|
173
176
  path.end_with?(".dSYM") ? File.dirname(path) : path
174
177
  end.uniq
175
178
  end
176
179
 
177
- def self.default_dsym_path
178
- path = Dir["./**/*.dSYM.zip"] + Dir["./**/*.dSYM"]
179
- dsym_paths = Actions.lane_context[SharedValues::DSYM_PATHS] if defined? SharedValues::DSYM_PATHS
180
- dsyms_output_path = Actions.lane_context[SharedValues::DSYM_OUTPUT_PATH] if defined? SharedValues::DSYM_OUTPUT_PATH
181
- default_value = dsyms_output_path || dsym_paths || path
182
- parse_dsym_paths(default_value)
180
+ # if input is an Array, return that array, else coerce the input into an array
181
+ def self.coerce_array dsym_path
182
+ dsym_path.is_a?(Array) ? dsym_path : [dsym_path]
183
+ end
184
+
185
+ # returns true if `gym` created some dSYMs for us to upload
186
+ # https://docs.fastlane.tools/actions/gym/#lane-variables
187
+ def self.gym_dsyms?
188
+ if defined?(SharedValues::DSYM_PATHS)
189
+ if Actions.lane_context[SharedValues::DSYM_PATHS]
190
+ true
191
+ end
192
+ end
193
+ end
194
+
195
+ # returns true if `download_dsyms` created some dSYMs for us to upload
196
+ # https://docs.fastlane.tools/actions/download_dsyms/#lane-variables
197
+ def self.download_dsym_dsyms?
198
+ if defined?(SharedValues::DSYM_OUTPUT_PATH)
199
+ if Actions.lane_context[SharedValues::DSYM_OUTPUT_PATH]
200
+ true
201
+ end
202
+ end
203
+ end
204
+
205
+ def self.default_dsym_paths
206
+ vendor_regex = %r{\.\/vendor.*}
207
+ paths = Dir["./**/*.dSYM.zip"].reject{|f| f[vendor_regex] } + Dir["./**/*.dSYM"].reject{|f| f[vendor_regex] } # scrape the sub directories for zips and dSYMs
208
+ paths += coerce_array(Actions.lane_context[SharedValues::DSYM_PATHS]) if gym_dsyms? # set by `download_dsyms` Fastlane action
209
+ paths += coerce_array(Actions.lane_context[SharedValues::DSYM_OUTPUT_PATH]) if download_dsym_dsyms? # set by `gym` Fastlane action
210
+ parse_dsym_paths(paths.uniq)
183
211
  end
184
212
  end
185
213
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module Bugsnag
3
- VERSION = "2.1.0"
3
+ VERSION = "2.2.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-bugsnag
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Delisa Mason
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-13 00:00:00.000000000 Z
11
+ date: 2021-09-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xml-simple