fastlane 1.13.1 → 1.14.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: 2e5b1616a83e160ef6bda549420b065608e01a00
4
- data.tar.gz: d0671779b4e0f594c588d6f0115dc3ec150cae80
3
+ metadata.gz: c87bbcf201fb11443eedd9d73437b944f674917b
4
+ data.tar.gz: bdc4b534d0d3f5c98214678ecf6f7ccd3ebf42b2
5
5
  SHA512:
6
- metadata.gz: ef927e134a7cd3f1e8fd3d8893b80108a1f8815a04efe33b9701878d2e73eee3e227f323fb44926281d2bdbd3ef3dabf758ac1c58dd875ab84018a753c75e8ec
7
- data.tar.gz: 7fda81bd26822855735e1560af1ae9c4384089ae236c7e4c3a70f9f798484df00ecf499ccc2510812971fdb5ea3e3de2a7b87e6cc485b2b84c1b2166c133dff5
6
+ metadata.gz: cd520940eca1463919bce6ee5f43b09deaf38f8e1a880203b460a35f75bc7c54f3c4dddabc323db11dc0c0181784268262236a5042879859b36c3c2a1d79c625
7
+ data.tar.gz: ff74ca81e2bd27cbf9927a2346028090a0c9bcefd9079b2d4000c8c4f936382cb0107c0cbb3731ca33c685a3328990638dc636c032c4afffa42e724d4635cd23
@@ -69,6 +69,10 @@ module Fastlane
69
69
  Actions.sh("git add #{git_add_paths.map(&:shellescape).join(' ')}")
70
70
 
71
71
  begin
72
+ build_number = lane_context[SharedValues::BUILD_NUMBER]
73
+
74
+ params[:message] ||= (build_number ? "Version Bump to #{build_number}" : "Version Bump")
75
+
72
76
  Actions.sh("git commit -m '#{params[:message]}'")
73
77
 
74
78
  Helper.log.info "Committed \"#{params[:message]}\" 💾.".green
@@ -86,7 +90,7 @@ module Fastlane
86
90
  FastlaneCore::ConfigItem.new(key: :message,
87
91
  env_name: "FL_COMMIT_BUMP_MESSAGE",
88
92
  description: "The commit message when committing the version bump",
89
- default_value: "Version Bump"),
93
+ optional: true),
90
94
  FastlaneCore::ConfigItem.new(key: :xcodeproj,
91
95
  env_name: "FL_BUILD_NUMBER_PROJECT",
92
96
  description: "The path to your project file (Not the workspace). If you have only one, this is optional",
@@ -1,4 +1,4 @@
1
- # TODO: Workaround, since crashlytics.rb from shenzhen includes the code for commander.
1
+ # Workaround, since crashlytics.rb from shenzhen includes the code for commander.
2
2
  def command(_param)
3
3
  end
4
4
 
@@ -1,4 +1,4 @@
1
- # TODO: Workaround, since deploygate.rb from shenzhen includes the code for commander
1
+ # Workaround, since deploygate.rb from shenzhen includes the code for commander
2
2
  def command(_param)
3
3
  end
4
4
 
@@ -0,0 +1,82 @@
1
+ module Fastlane
2
+ module Actions
3
+ class EnsureNoDebugCodeAction < Action
4
+ def self.run(params)
5
+ command = "grep -R '#{params[:text]}' '#{File.absolute_path(params[:path])}'"
6
+ return command if Helper.is_test?
7
+
8
+ Helper.log.info command.yellow
9
+ results = `#{command}` # we don't use `sh` as the return code of grep is wrong for some reason
10
+
11
+ # Example Output
12
+ # ./fastlane.gemspec: spec.add_development_dependency 'my_word'
13
+ # ./Gemfile.lock: my_word (0.10.1)
14
+
15
+ found = []
16
+ results.split("\n").each do |current_raw|
17
+ current = current_raw.strip
18
+ if params[:extension]
19
+ if current.include?".#{params[:extension]}:"
20
+ found << current
21
+ end
22
+ else
23
+ found << current
24
+ end
25
+ end
26
+
27
+ raise "Found debug code '#{params[:text]}': \n\n#{found.join("\n")}" if found.count > 0
28
+ Helper.log.info "No debug code found in code base 🐛"
29
+ end
30
+
31
+ #####################################################
32
+ # @!group Documentation
33
+ #####################################################
34
+
35
+ def self.description
36
+ "Ensures the given text is nowhere in the code base"
37
+ end
38
+
39
+ def self.details
40
+ [
41
+ "Makes sure the given text is nowhere in the code base. This can be used",
42
+ "to check if there is any debug code still in your code base or if you have",
43
+ "things like // TO DO or similar"
44
+ ].join("\n")
45
+ end
46
+
47
+ def self.available_options
48
+ [
49
+ FastlaneCore::ConfigItem.new(key: :text,
50
+ env_name: "FL_ENSURE_NO_DEBUG_CODE_TEXT",
51
+ description: "The text that must not be in the code base"),
52
+ FastlaneCore::ConfigItem.new(key: :path,
53
+ env_name: "FL_ENSURE_NO_DEBUG_CODE_PATH",
54
+ description: "The directory containing all the source files",
55
+ default_value: ".",
56
+ verify_block: Proc.new do |value|
57
+ raise "Couldn't find the folder at '#{File.absolute_path(value)}'".red unless File.directory?(value)
58
+ end),
59
+ FastlaneCore::ConfigItem.new(key: :extension,
60
+ env_name: "FL_ENSURE_NO_DEBUG_CODE_EXTENSION",
61
+ description: "The extension that should be searched for",
62
+ optional: true,
63
+ verify_block: Proc.new do |value|
64
+ value.gsub!(".", "") if value.include?"."
65
+ end),
66
+ ]
67
+ end
68
+
69
+ def self.output
70
+ []
71
+ end
72
+
73
+ def self.authors
74
+ ["KrauseFx"]
75
+ end
76
+
77
+ def self.is_supported?(platform)
78
+ true
79
+ end
80
+ end
81
+ end
82
+ end
@@ -22,7 +22,7 @@ module Fastlane
22
22
  end
23
23
 
24
24
  def self.author
25
- "lmirosevic"
25
+ "KrauseFx"
26
26
  end
27
27
 
28
28
  def self.is_supported?(platform)
@@ -1,4 +1,4 @@
1
- # TODO: Workaround, since hockeyapp.rb from shenzhen includes the code for commander
1
+ # Workaround, since hockeyapp.rb from shenzhen includes the code for commander
2
2
  def command(_param)
3
3
  end
4
4
 
@@ -2,19 +2,63 @@ module Fastlane
2
2
  module Actions
3
3
  class CarthageAction < Action
4
4
  def self.run(params)
5
- Actions.sh('carthage bootstrap')
5
+
6
+ cmd = ["carthage bootstrap"]
7
+
8
+ cmd << "--use-ssh" if params[:use_ssh]
9
+ cmd << "--use-submodules" if params[:use_submodules]
10
+ cmd << "--no-use-binaries" if params[:use_binaries] == false
11
+ cmd << "--platform #{params[:platform]}" if params[:platform]
12
+
13
+ Actions.sh(cmd.join(' '))
6
14
  end
7
15
 
8
16
  def self.description
9
17
  "Runs `carthage bootstrap` for your project"
10
18
  end
11
19
 
12
- def self.author
13
- "bassrock"
20
+ def self.available_options
21
+ [
22
+ FastlaneCore::ConfigItem.new(key: :use_ssh,
23
+ env_name: "FL_CARTHAGE_USE_SSH",
24
+ description: "Use SSH for downloading GitHub repositories",
25
+ is_string: false,
26
+ optional: true,
27
+ verify_block: Proc.new do |value|
28
+ raise "Please pass a valid value for use_ssh. Use one of the following: true, false" unless value.is_a?(TrueClass) || value.is_a?(FalseClass)
29
+ end),
30
+ FastlaneCore::ConfigItem.new(key: :use_submodules,
31
+ env_name: "FL_CARTHAGE_USE_SUBMODULES",
32
+ description: "Add dependencies as Git submodules",
33
+ is_string: false,
34
+ optional: true,
35
+ verify_block: Proc.new do |value|
36
+ raise "Please pass a valid value for use_submodules. Use one of the following: true, false" unless value.is_a?(TrueClass) || value.is_a?(FalseClass)
37
+ end),
38
+ FastlaneCore::ConfigItem.new(key: :use_binaries,
39
+ env_name: "FL_CARTHAGE_USE_BINARIES",
40
+ description: "Check out dependency repositories even when prebuilt frameworks exist",
41
+ is_string: false,
42
+ optional: true,
43
+ verify_block: Proc.new do |value|
44
+ raise "Please pass a valid value for use_binaries. Use one of the following: true, false" unless value.is_a?(TrueClass) || value.is_a?(FalseClass)
45
+ end),
46
+ FastlaneCore::ConfigItem.new(key: :platform,
47
+ env_name: "FL_CARTHAGE_PLATFORM",
48
+ description: "Define which platform to build for",
49
+ optional: true,
50
+ verify_block: Proc.new do |value|
51
+ raise "Please pass a valid platform. Use one of the following: all, iOS, Mac, watchOS" unless ["all", "iOS", "Mac", "watchOS"].include?value
52
+ end),
53
+ ]
14
54
  end
15
55
 
16
56
  def self.is_supported?(platform)
17
- platform == :ios
57
+ [:ios, :mac].include?platform
58
+ end
59
+
60
+ def self.authors
61
+ ["bassrock", "petester42"]
18
62
  end
19
63
  end
20
64
  end
@@ -120,8 +120,14 @@ module Fastlane
120
120
 
121
121
  #grabs module
122
122
  eth = Fastlane::ErbTemplateHelper
123
+
123
124
  # Creates plist from template
124
- plist_render = eth.render(eth.load("s3_plist_template"),{
125
+ if plist_template_path && File.exists?(plist_template_path)
126
+ plist_template = eth.load_from_path(plist_template_path)
127
+ else
128
+ plist_template = eth.load("s3_plist_template")
129
+ end
130
+ plist_render = eth.render(plist_template,{
125
131
  url: ipa_url,
126
132
  bundle_id: bundle_id,
127
133
  bundle_version: bundle_version,
@@ -129,16 +135,25 @@ module Fastlane
129
135
  })
130
136
 
131
137
  # Creates html from template
132
- html_render = eth.render(eth.load("s3_html_template"),{
138
+ if html_template_path && File.exists?(html_template_path)
139
+ html_template = eth.load_from_path(html_template_path)
140
+ else
141
+ html_template = eth.load("s3_html_template")
142
+ end
143
+ html_render = eth.render(html_template,{
133
144
  url: plist_url,
134
145
  bundle_id: bundle_id,
135
146
  bundle_version: bundle_version,
136
147
  title: title
137
148
  })
138
149
 
139
-
140
150
  # Creates version from template
141
- version_render = eth.render(eth.load("s3_version_template"),{
151
+ if version_template_path && File.exists?(version_template_path)
152
+ version_template = eth.load_from_path(version_template_path)
153
+ else
154
+ version_template = eth.load("s3_version_template")
155
+ end
156
+ version_render = eth.render(version_template,{
142
157
  url: plist_url,
143
158
  full_version: full_version
144
159
  })
@@ -48,7 +48,7 @@ module Fastlane
48
48
  else
49
49
  Helper.log.info "Creating the new version: #{version_number}"
50
50
  app.create_version!(version_number)
51
- app = Spaceship::Application.find(params[:app_identifier]) # TODO: replace with .reload method once available
51
+ app = Spaceship::Application.find(params[:app_identifier]) # Replace with .reload method once available
52
52
  v = app.edit_version
53
53
  end
54
54
 
@@ -81,7 +81,7 @@ module Fastlane
81
81
  output = parse_options(action.output, false) if action.output
82
82
  if output and output.count > 0
83
83
  puts Terminal::Table.new(
84
- title: filter.green,
84
+ title: [filter, "| Output Variables"].join(" ").green,
85
85
  headings: ['Key', 'Description'],
86
86
  rows: output
87
87
  )
@@ -3,8 +3,14 @@ module Fastlane
3
3
  require "erb"
4
4
  def self.load(template_name)
5
5
  path = "#{Helper.gem_path('fastlane')}/lib/assets/#{template_name}.erb"
6
- raise "Could not find Template at path '#{path}'".red unless File.exist?(path)
7
- File.read(path)
6
+ load_from_path(path)
7
+ end
8
+
9
+ def self.load_from_path(template_filepath)
10
+ unless File.exist?(template_filepath)
11
+ raise "Could not find Template at path '#{template_filepath}'".red
12
+ end
13
+ File.read(template_filepath)
8
14
  end
9
15
 
10
16
  def self.render(template,template_vars_hash)
@@ -1,3 +1,3 @@
1
1
  module Fastlane
2
- VERSION = '1.13.1'
2
+ VERSION = '1.14.0'
3
3
  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.13.1
4
+ version: 1.14.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: 2015-07-27 00:00:00.000000000 Z
11
+ date: 2015-08-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -184,70 +184,70 @@ dependencies:
184
184
  requirements:
185
185
  - - ">="
186
186
  - !ruby/object:Gem::Version
187
- version: 0.2.0
187
+ version: 0.3.4
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
192
  - - ">="
193
193
  - !ruby/object:Gem::Version
194
- version: 0.2.0
194
+ version: 0.3.4
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: deliver
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
199
  - - ">="
200
200
  - !ruby/object:Gem::Version
201
- version: 0.12.1
201
+ version: 0.13.0
202
202
  type: :runtime
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - ">="
207
207
  - !ruby/object:Gem::Version
208
- version: 0.12.1
208
+ version: 0.13.0
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: snapshot
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - ">="
214
214
  - !ruby/object:Gem::Version
215
- version: 0.9.0
215
+ version: 0.9.2
216
216
  type: :runtime
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
220
  - - ">="
221
221
  - !ruby/object:Gem::Version
222
- version: 0.9.0
222
+ version: 0.9.2
223
223
  - !ruby/object:Gem::Dependency
224
224
  name: frameit
225
225
  requirement: !ruby/object:Gem::Requirement
226
226
  requirements:
227
227
  - - ">="
228
228
  - !ruby/object:Gem::Version
229
- version: 2.0.1
229
+ version: 2.1.0
230
230
  type: :runtime
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - ">="
235
235
  - !ruby/object:Gem::Version
236
- version: 2.0.1
236
+ version: 2.1.0
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: pem
239
239
  requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
241
  - - ">="
242
242
  - !ruby/object:Gem::Version
243
- version: 0.6.3
243
+ version: 0.6.4
244
244
  type: :runtime
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
248
  - - ">="
249
249
  - !ruby/object:Gem::Version
250
- version: 0.6.3
250
+ version: 0.6.4
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: cert
253
253
  requirement: !ruby/object:Gem::Requirement
@@ -268,28 +268,28 @@ dependencies:
268
268
  requirements:
269
269
  - - ">="
270
270
  - !ruby/object:Gem::Version
271
- version: 0.10.0
271
+ version: 0.10.3
272
272
  type: :runtime
273
273
  prerelease: false
274
274
  version_requirements: !ruby/object:Gem::Requirement
275
275
  requirements:
276
276
  - - ">="
277
277
  - !ruby/object:Gem::Version
278
- version: 0.10.0
278
+ version: 0.10.3
279
279
  - !ruby/object:Gem::Dependency
280
280
  name: produce
281
281
  requirement: !ruby/object:Gem::Requirement
282
282
  requirements:
283
283
  - - ">="
284
284
  - !ruby/object:Gem::Version
285
- version: 0.4.1
285
+ version: 0.5.1
286
286
  type: :runtime
287
287
  prerelease: false
288
288
  version_requirements: !ruby/object:Gem::Requirement
289
289
  requirements:
290
290
  - - ">="
291
291
  - !ruby/object:Gem::Version
292
- version: 0.4.1
292
+ version: 0.5.1
293
293
  - !ruby/object:Gem::Dependency
294
294
  name: bundler
295
295
  requirement: !ruby/object:Gem::Requirement
@@ -442,6 +442,7 @@ files:
442
442
  - lib/fastlane/actions/dsym_zip.rb
443
443
  - lib/fastlane/actions/ensure_git_branch.rb
444
444
  - lib/fastlane/actions/ensure_git_status_clean.rb
445
+ - lib/fastlane/actions/ensure_no_debug_code.rb
445
446
  - lib/fastlane/actions/fastlane_version.rb
446
447
  - lib/fastlane/actions/frameit.rb
447
448
  - lib/fastlane/actions/gcovr.rb
@@ -536,7 +537,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
536
537
  version: '0'
537
538
  requirements: []
538
539
  rubyforge_project:
539
- rubygems_version: 2.4.6
540
+ rubygems_version: 2.4.8
540
541
  signing_key:
541
542
  specification_version: 4
542
543
  summary: Connect all iOS deployment tools into one streamlined workflow