fastlane-plugin-bugsnag 2.1.0 → 2.2.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
  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