fastlane 1.90.0 → 1.91.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
  SHA1:
3
- metadata.gz: 8641fae7b2c42130def7ea0c062c43e18d9431e4
4
- data.tar.gz: 6549fa570b5193cfdc0d792b96157dd7e25e4f14
3
+ metadata.gz: f1d4a4bff3477ad2e6df2b81a2ddcdfd577d7b4f
4
+ data.tar.gz: 75f1a9db251bbd7662503824567d4386a81bf7f6
5
5
  SHA512:
6
- metadata.gz: 52c36be3502ed5d8e3c9a9e24f43b81ed7b00df6c064c6e83292a5a22843c2bc2a0a324c9b1dceae7badf48602c4cdf6586d1d51643d4a9c3f8a4c903d9c1fc9
7
- data.tar.gz: 0917e2ce54a1436831ee23e9c3993a95d6d99af6f240ad08a3b5baa6f11c8faba25aa7367c00a8004ae1f063ca77e3f6e0dfac2d4051ecfceea8998601ee8fc9
6
+ metadata.gz: 012b1ca9c1e9f7c9734db2beb69b4e6379b88efd676a6278a1a129388c7f06b837939fb75f2af592b267721f416ee84bc7b62f50fc8e506c32a7b7d1c87f5362
7
+ data.tar.gz: 600f5e8c1ca9f9309eda91fef62f47a2d9dbe66d10555eab8f99f9764067d1e5c76ef4bbaa52b145fdde4b69d992c86cbd733cbdd7f9c56e2d5f5784aacb93de
@@ -1,26 +1,38 @@
1
+ require 'fileutils'
2
+ require 'shellwords'
3
+
1
4
  module Fastlane
2
5
  module Actions
3
6
  class CopyArtifactsAction < Action
4
7
  def self.run(params)
5
8
  # we want to make sure that our target folder exist already
6
- target_folder_command = 'mkdir -p ' + params[:target_path]
7
- Actions.sh(target_folder_command)
9
+ FileUtils.mkdir_p(params[:target_path])
10
+
11
+ # Ensure that artifacts is an array
12
+ artifacts_to_search = [params[:artifacts]].flatten
8
13
 
9
- # construct the main command that will do the copying/moving for us
10
- base_command = params[:keep_original] ? 'cp' : 'mv'
11
- options = []
12
- options << '-f'
13
- options << '-R' if params[:keep_original] # we only want the -R flag for the cp command, which we get when the user asks to keep the original
14
- options << params[:artifacts].map { |e| e.tr(' ', '\ ') }
15
- options << params[:target_path]
14
+ # If any of the paths include "*", we assume that we are referring to the Unix entries
15
+ # e.g /tmp/fastlane/* refers to all the files in /tmp/fastlane
16
+ # We use Dir.glob to expand all those paths, this would create an array of arrays though, so flatten
17
+ # Lastly, we shell escape everything in case they contain incompatible symbols (e.g. spaces)
18
+ artifacts = artifacts_to_search.map { |f| f.include?("*") ? Dir.glob(f) : f }.flatten.map(&:shellescape)
16
19
 
17
- command = ([base_command] + options).join(' ')
20
+ UI.verbose("Copying artifacts #{artifacts.join(', ')} to #{params[:target_path]}")
21
+ UI.verbose(params[:keep_original] ? "Keeping original files" : "Not keeping original files")
18
22
 
19
- # if we don't want to fail on missing files, then we need to swallow the error from our command, by ORing with the nil command, guaranteeing a 0 status code
20
- command += ' || :' unless params[:fail_on_missing]
23
+ if params[:fail_on_missing]
24
+ missing = artifacts.select { |a| !File.exist?(a) }
25
+ UI.user_error! "Not all files were present in copy artifacts. Missing #{missing.join(', ')}" unless missing.empty?
26
+ else
27
+ # If we don't fail on non-existant files, don't try to copy non-existant files
28
+ artifacts.reject! { |artifact| !File.exist?(artifact) }
29
+ end
21
30
 
22
- # call our command
23
- Actions.sh(command)
31
+ if params[:keep_original]
32
+ FileUtils.cp_r(artifacts, params[:target_path], remove_destination: true)
33
+ else
34
+ FileUtils.mv(artifacts, params[:target_path], force: true)
35
+ end
24
36
 
25
37
  UI.success('Build artifacts successfully copied!')
26
38
  end
@@ -1,6 +1,6 @@
1
1
  module Fastlane
2
2
  module Actions
3
- # Adds a git tag to the current commit
3
+ # Push local changes to the remote branch
4
4
  class PushToGitRemoteAction < Action
5
5
  def self.run(params)
6
6
  local_branch = params[:local_branch]
@@ -5,27 +5,34 @@ module Fastlane
5
5
  end
6
6
 
7
7
  class SlatherAction < Action
8
-
8
+ # https://github.com/SlatherOrg/slather/blob/cbc5099cd25beb43fd978b7a3e5428f02230122d/lib/slather/command/coverage_command.rb#L24
9
9
  ARGS_MAP = {
10
- build_directory: "--build-directory",
11
- input_format: "--input-format",
12
- scheme: "--scheme",
13
- buildkite: "--buildkite",
14
- jenkins: "--jenkins",
15
- travis: "--travis",
16
- circleci: "--circleci",
17
- coveralls: "--coveralls",
18
- simple_output: "--simple-output",
19
- gutter_json: "--gutter-json",
20
- cobertura_xml: "--cobertura-xml",
21
- html: "--html",
22
- show: "--show",
23
- source_directory: "--source-directory",
24
- output_directory: "--output-directory",
25
- binary_basename: "--binary-basename",
26
- binary_file: "--binary-file",
27
- ignore: "--ignore",
28
- workspace: "--workspace"
10
+ travis: '--travis',
11
+ circleci: '--circleci',
12
+ jenkins: '--jenkins',
13
+ buildkite: '--buildkite',
14
+ teamcity: '--teamcity',
15
+
16
+ coveralls: '--coveralls',
17
+ simple_output: '--simple-output',
18
+ gutter_json: '--gutter-json',
19
+ cobertura_xml: '--cobertura-xml',
20
+ html: '--html',
21
+ show: '--show',
22
+
23
+ build_directory: '--build-directory',
24
+ source_directory: '--source-directory',
25
+ output_directory: '--output-directory',
26
+ ignore: '--ignore',
27
+ verbose: '--verbose',
28
+
29
+ input_format: '--input-format',
30
+ scheme: '--scheme',
31
+ workspace: '--workspace',
32
+ binary_file: '--binary-file',
33
+ binary_basename: '--binary-basename',
34
+ source_files: '--source-files',
35
+ decimals: '--decimals'
29
36
  }.freeze
30
37
 
31
38
  def self.run(params)
@@ -127,6 +134,11 @@ Slather is available at https://github.com/SlatherOrg/slather
127
134
  description: "Tell slather that it is running on Buildkite",
128
135
  is_string: false,
129
136
  optional: true),
137
+ FastlaneCore::ConfigItem.new(key: :teamcity,
138
+ env_name: "FL_SLATHER_TEAMCITY_ENABLED", # The name of the environment variable
139
+ description: "Tell slather that it is running on TeamCity",
140
+ is_string: false,
141
+ optional: true),
130
142
  FastlaneCore::ConfigItem.new(key: :jenkins,
131
143
  env_name: "FL_SLATHER_JENKINS_ENABLED", # The name of the environment variable
132
144
  description: "Tell slather that it is running on Jenkins",
@@ -185,6 +197,11 @@ Slather is available at https://github.com/SlatherOrg/slather
185
197
  description: "Tell slather to ignore files matching a path or any path from an array of paths",
186
198
  is_string: false,
187
199
  optional: true),
200
+ FastlaneCore::ConfigItem.new(key: :verbose,
201
+ env_name: "FL_SLATHER_VERBOSE",
202
+ description: "Tell slather to enable verbose mode",
203
+ is_string: false,
204
+ optional: true),
188
205
  FastlaneCore::ConfigItem.new(key: :use_bundle_exec,
189
206
  env_name: "FL_SLATHER_USE_BUNDLE_EXEC",
190
207
  description: "Use bundle exec to execute slather. Make sure it is in the Gemfile",
@@ -197,7 +214,17 @@ Slather is available at https://github.com/SlatherOrg/slather
197
214
  FastlaneCore::ConfigItem.new(key: :binary_file,
198
215
  env_name: "FL_SLATHER_BINARY_FILE",
199
216
  description: "Binary file name to be used for code coverage",
200
- default_value: false)
217
+ default_value: false),
218
+ FastlaneCore::ConfigItem.new(key: :source_files,
219
+ env_name: "FL_SLATHER_SOURCE_FILES",
220
+ description: "A Dir.glob compatible pattern used to limit the lookup to specific source files. Ignored in gcov mode",
221
+ default_value: false,
222
+ optional: true),
223
+ FastlaneCore::ConfigItem.new(key: :decimals,
224
+ env_name: "FL_SLATHER_DECIMALS",
225
+ description: "The amount of decimals to use for % coverage reporting",
226
+ default_value: false,
227
+ optional: true)
201
228
  ]
202
229
  end
203
230
 
@@ -144,6 +144,22 @@ module Fastlane
144
144
  end
145
145
  end
146
146
 
147
+ command :enable_crash_reporting do |c|
148
+ c.syntax = 'fastlane enable_crash_reporting'
149
+ c.description = "Deprecated: fastlane doesn't use a crash reporter any more"
150
+ c.action do |args, options|
151
+ show_crashreporter_note
152
+ end
153
+ end
154
+
155
+ command :disable_crash_reporting do |c|
156
+ c.syntax = 'fastlane disable_crash_reporting'
157
+ c.description = "Deprecated: fastlane doesn't use a crash reporter any more"
158
+ c.action do |args, options|
159
+ show_crashreporter_note
160
+ end
161
+ end
162
+
147
163
  command :enable_auto_complete do |c|
148
164
  c.syntax = 'fastlane enable_auto_complete'
149
165
  c.description = 'Enable tab auto completion'
@@ -171,6 +187,12 @@ module Fastlane
171
187
  return false
172
188
  end
173
189
 
190
+ def show_crashreporter_note
191
+ UI.important("fastlane doesn't use a crash reporter any more")
192
+ UI.important("Instead please submit an issue on GitHub: https://github.com/fastlane/fastlane/issues")
193
+ UI.important("This command will be removed in one of the next releases")
194
+ end
195
+
174
196
  # rubocop:enable Metrics/AbcSize
175
197
  # rubocop:enable Metrics/MethodLength
176
198
  end
@@ -1,4 +1,4 @@
1
1
  module Fastlane
2
- VERSION = '1.90.0'.freeze
2
+ VERSION = '1.91.0'.freeze
3
3
  DESCRIPTION = "The easiest way to automate building and releasing your iOS and Android apps"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.90.0
4
+ version: 1.91.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-23 00:00:00.000000000 Z
11
+ date: 2016-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: krausefx-shenzhen
@@ -162,7 +162,7 @@ dependencies:
162
162
  requirements:
163
163
  - - ">="
164
164
  - !ruby/object:Gem::Version
165
- version: 0.44.0
165
+ version: 0.44.2
166
166
  - - "<"
167
167
  - !ruby/object:Gem::Version
168
168
  version: 1.0.0
@@ -172,7 +172,7 @@ dependencies:
172
172
  requirements:
173
173
  - - ">="
174
174
  - !ruby/object:Gem::Version
175
- version: 0.44.0
175
+ version: 0.44.2
176
176
  - - "<"
177
177
  - !ruby/object:Gem::Version
178
178
  version: 1.0.0
@@ -382,7 +382,7 @@ dependencies:
382
382
  requirements:
383
383
  - - ">="
384
384
  - !ruby/object:Gem::Version
385
- version: 1.6.0
385
+ version: 1.7.0
386
386
  - - "<"
387
387
  - !ruby/object:Gem::Version
388
388
  version: 2.0.0
@@ -392,7 +392,7 @@ dependencies:
392
392
  requirements:
393
393
  - - ">="
394
394
  - !ruby/object:Gem::Version
395
- version: 1.6.0
395
+ version: 1.7.0
396
396
  - - "<"
397
397
  - !ruby/object:Gem::Version
398
398
  version: 2.0.0
@@ -422,7 +422,7 @@ dependencies:
422
422
  requirements:
423
423
  - - ">="
424
424
  - !ruby/object:Gem::Version
425
- version: 0.7.0
425
+ version: 0.7.1
426
426
  - - "<"
427
427
  - !ruby/object:Gem::Version
428
428
  version: 1.0.0
@@ -432,7 +432,7 @@ dependencies:
432
432
  requirements:
433
433
  - - ">="
434
434
  - !ruby/object:Gem::Version
435
- version: 0.7.0
435
+ version: 0.7.1
436
436
  - - "<"
437
437
  - !ruby/object:Gem::Version
438
438
  version: 1.0.0