fastlane 1.15.0 → 1.16.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: c980a477b659d8d6117c8de3009035284dcc1e38
4
- data.tar.gz: 2aa626bbd632c0e49094b8b3ffa79acbcf053db9
3
+ metadata.gz: 64d13313e93649ee90caa553d9e61ae6759c22db
4
+ data.tar.gz: 2cfbb113190bb42dd7f401f651652243a0b909a4
5
5
  SHA512:
6
- metadata.gz: 7d393d36508309b50c28f18ec62ca7b542be5adb0f3d9d0f1131610f034f40d45422ee756b1921a3a63a30ffff8813f192437b389cfaa13384f82081802bea15
7
- data.tar.gz: 20a859c58f3788fcbdb20f398bf50daf2564f4f806cc294c7d096870472fa56797aee7de4bf8d5a251b44e5c94cfee3ee3a6b23c14dd2581a4891b2cef5ccd82
6
+ metadata.gz: 09dcc32c05045d06865f2fc569fd6611ec21cf8b9640acdf665a54706ca610ea84fd0e2818b3e5fa29a460d373dee3f49c008957aa738de0ce92f3c1f71638d5
7
+ data.tar.gz: e2d19739f74a77f5cbfe5688a634ab04fd0908803650dae3d8234f20416b6dc6a54b0e1901bb7cf3b6b1f33a069ed88c101ce552ad2d0100ae355a4513d3a0b4
data/README.md CHANGED
@@ -12,7 +12,8 @@
12
12
  <a href="https://github.com/KrauseFx/codes">codes</a> &bull;
13
13
  <a href="https://github.com/fastlane/spaceship">spaceship</a> &bull;
14
14
  <a href="https://github.com/fastlane/pilot">pilot</a> &bull;
15
- <a href="https://github.com/fastlane/boarding">boarding</a>
15
+ <a href="https://github.com/fastlane/boarding">boarding</a> &bull;
16
+ <a href="https://github.com/fastlane/gym">gym</a>
16
17
  </p>
17
18
  -------
18
19
 
@@ -163,6 +164,7 @@ See how [Wikipedia](https://github.com/fastlane/examples#wikipedia-by-wikimedia-
163
164
  - [`spaceship`](https://github.com/fastlane/spaceship): Ruby library to access the Apple Dev Center and iTunes Connect
164
165
  - [`pilot`](https://github.com/fastlane/pilot): The best way to manage your TestFlight testers and builds from your terminal
165
166
  - [`boarding`](https://github.com/fastlane/boarding): The easiest way to invite your TestFlight beta testers
167
+ - [`gym`](https://github.com/fastlane/gym): Building your iOS apps has never been easier
166
168
 
167
169
  ## Statistics
168
170
 
@@ -30,7 +30,7 @@ platform :ios do
30
30
 
31
31
  # increment_build_number
32
32
 
33
- ipa[[SCHEME]] # Build your app - more options available
33
+ gym[[SCHEME]] # Build your app - more options available
34
34
 
35
35
  xctool # run the tests of your app
36
36
  end
@@ -109,7 +109,7 @@ module Fastlane
109
109
  end
110
110
 
111
111
  if exit_status != 0
112
- # this will also append the output to the exception (for the Jenkins reports)
112
+ # this will also append the output to the exception
113
113
  raise "Exit status of command '#{command}' was #{exit_status} instead of 0. \n#{result}"
114
114
  end
115
115
  else
@@ -0,0 +1,133 @@
1
+ module Fastlane
2
+ module Actions
3
+ class BundleInstallAction < Action
4
+ def self.run(params)
5
+ if File.exists?('Gemfile')
6
+ cmd = ['bundle install']
7
+
8
+ cmd << "--binstubs #{params[:binstubs]}" if params[:binstubs]
9
+ cmd << "--clean" if params[:clean]
10
+ cmd << "--full-index" if params[:full_index]
11
+ cmd << "--gemfile #{params[:gemfile]}" if params[:gemfile]
12
+ cmd << "--jobs #{params[:jobs]}" if params[:jobs]
13
+ cmd << "--local" if params[:local]
14
+ cmd << "--deployment" if params[:deployment]
15
+ cmd << "--no-cache" if params[:no_cache]
16
+ cmd << "--no_prune" if params[:no_prune]
17
+ cmd << "--path #{params[:path]}" if params[:path]
18
+ cmd << "--system" if params[:system]
19
+ cmd << "--quiet" if params[:quiet]
20
+ cmd << "--retry #{params[:retry]}" if params[:retry]
21
+ cmd << "--shebang" if params[:shebang]
22
+ cmd << "--standalone #{params[:standalone]}" if params[:standalone]
23
+ cmd << "--trust-policy" if params[:trust_policy]
24
+ cmd << "--without #{params[:without]}" if params[:without]
25
+ cmd << "--with #{params[:with]}" if params[:with]
26
+
27
+ Actions.sh(cmd.join(' '))
28
+ else
29
+ Helper.log.info "No Gemfile found"
30
+ end
31
+ end
32
+
33
+ def self.description
34
+ 'This action runs `bundle install` if it founds the Gemfile'
35
+ end
36
+
37
+ def self.is_supported?(platform)
38
+ true
39
+ end
40
+
41
+ def self.author
42
+ ["birmacher"]
43
+ end
44
+
45
+ def self.available_options
46
+ [
47
+ FastlaneCore::ConfigItem.new(key: :binstubs,
48
+ env_name: "FL_BUNDLE_INSTALL_BINSTUBS",
49
+ description: "Generate bin stubs for bundled gems to ./bin",
50
+ optional: true),
51
+ FastlaneCore::ConfigItem.new(key: :clean,
52
+ env_name: "FL_BUNDLE_INSTALL_CLEAN",
53
+ description: "Run bundle clean automatically after install",
54
+ is_string: false,
55
+ default_value: false),
56
+ FastlaneCore::ConfigItem.new(key: :full_index,
57
+ env_name: "FL_BUNDLE_INSTALL_FULL_INDEX",
58
+ description: "Use the rubygems modern index instead of the API endpoint",
59
+ is_string: false,
60
+ default_value: false),
61
+ FastlaneCore::ConfigItem.new(key: :gemfile,
62
+ env_name: "FL_BUNDLE_INSTALL_GEMFILE",
63
+ description: "Use the specified gemfile instead of Gemfile",
64
+ optional: true),
65
+ FastlaneCore::ConfigItem.new(key: :jobs,
66
+ env_name: "FL_BUNDLE_INSTALL_JOBS",
67
+ description: "Install gems using parallel workers",
68
+ is_string: false,
69
+ optional: true),
70
+ FastlaneCore::ConfigItem.new(key: :local,
71
+ env_name: "FL_BUNDLE_INSTALL_LOCAL",
72
+ description: "Do not attempt to fetch gems remotely and use the gem cache instead",
73
+ is_string: false,
74
+ default_value: false),
75
+ FastlaneCore::ConfigItem.new(key: :deployment,
76
+ env_name: "FL_BUNDLE_INSTALL_DEPLOYMENT",
77
+ description: "Install using defaults tuned for deployment and CI environments",
78
+ is_string: false,
79
+ default_value: false),
80
+ FastlaneCore::ConfigItem.new(key: :no_cache,
81
+ env_name: "FL_BUNDLE_INSTALL_NO_CACHE",
82
+ description: "Don't update the existing gem cache",
83
+ is_string: false,
84
+ default_value: false),
85
+ FastlaneCore::ConfigItem.new(key: :no_prune,
86
+ env_name: "FL_BUNDLE_INSTALL_NO_PRUNE",
87
+ description: "Don't remove stale gems from the cache",
88
+ is_string: false,
89
+ default_value: false),
90
+ FastlaneCore::ConfigItem.new(key: :path,
91
+ env_name: "FL_BUNDLE_INSTALL_PATH",
92
+ description: "Specify a different path than the system default ($BUNDLE_PATH or $GEM_HOME). Bundler will remember this value for future installs on this machine",
93
+ optional: true),
94
+ FastlaneCore::ConfigItem.new(key: :system,
95
+ env_name: "FL_BUNDLE_INSTALL_SYSTEM",
96
+ description: "Install to the system location ($BUNDLE_PATH or $GEM_HOME) even if the bundle was previously installed somewhere else for this application",
97
+ is_string: false,
98
+ default_value: false),
99
+ FastlaneCore::ConfigItem.new(key: :quiet,
100
+ env_name: "FL_BUNDLE_INSTALL_QUIET",
101
+ description: "Only output warnings and errors",
102
+ is_string: false,
103
+ default_value: false),
104
+ FastlaneCore::ConfigItem.new(key: :retry,
105
+ env_name: "FL_BUNDLE_INSTALL_RETRY",
106
+ description: "Retry network and git requests that have failed",
107
+ is_string: false,
108
+ optional: true),
109
+ FastlaneCore::ConfigItem.new(key: :shebang,
110
+ env_name: "FL_BUNDLE_INSTALL_SHEBANG",
111
+ description: "Specify a different shebang executable name than the default (usually 'ruby')",
112
+ optional: true),
113
+ FastlaneCore::ConfigItem.new(key: :standalone,
114
+ env_name: "FL_BUNDLE_INSTALL_STANDALONE",
115
+ description: "Make a bundle that can work without the Bundler runtime",
116
+ optional: true),
117
+ FastlaneCore::ConfigItem.new(key: :trust_policy,
118
+ env_name: "FL_BUNDLE_INSTALL_TRUST_POLICY",
119
+ description: "Sets level of security when dealing with signed gems. Accepts `LowSecurity`, `MediumSecurity` and `HighSecurity` as values",
120
+ optional: true),
121
+ FastlaneCore::ConfigItem.new(key: :without,
122
+ env_name: "FL_BUNDLE_INSTALL_WITHOUT",
123
+ description: "Exclude gems that are part of the specified named group",
124
+ optional: true),
125
+ FastlaneCore::ConfigItem.new(key: :with,
126
+ env_name: "FL_BUNDLE_INSTALL_WITH",
127
+ description: "Include gems that are part of the specified named group",
128
+ optional: true)
129
+ ]
130
+ end
131
+ end
132
+ end
133
+ end
@@ -10,16 +10,21 @@ module Fastlane
10
10
  def self.run(params)
11
11
  archive = params[:archive_path]
12
12
  params[:dsym_path] ||= File.join("#{File.basename(archive, '.*')}.app.dSYM.zip")
13
-
14
- plist = Plist::parse_xml(File.join(archive, 'Info.plist'))
15
- app_name = Helper.test? ? 'MyApp.app' : File.basename(plist['ApplicationProperties']['ApplicationPath'])
16
- dsym_name = "#{app_name}.dSYM"
13
+
17
14
  dsym_folder_path = File.expand_path(File.join(archive, 'dSYMs'))
18
15
  zipped_dsym_path = File.expand_path(params[:dsym_path])
19
16
 
20
17
  Actions.lane_context[SharedValues::DSYM_ZIP_PATH] = zipped_dsym_path
21
18
 
22
- Actions.sh(%Q[cd "#{dsym_folder_path}" && zip -r "#{zipped_dsym_path}" "#{dsym_name}"])
19
+ if params[:all]
20
+ Actions.sh(%Q[cd "#{dsym_folder_path}" && zip -r "#{zipped_dsym_path}" "#{dsym_folder_path}"/*.dSYM])
21
+ else
22
+ plist = Plist::parse_xml(File.join(archive, 'Info.plist'))
23
+ app_name = Helper.test? ? 'MyApp.app' : File.basename(plist['ApplicationProperties']['ApplicationPath'])
24
+ dsym_name = "#{app_name}.dSYM"
25
+ Actions.sh(%Q[cd "#{dsym_folder_path}" && zip -r "#{zipped_dsym_path}" "#{dsym_name}"])
26
+ end
27
+
23
28
  end
24
29
 
25
30
 
@@ -48,7 +53,13 @@ module Fastlane
48
53
  FastlaneCore::ConfigItem.new(key: :dsym_path,
49
54
  description: 'Path for generated dsym. Optional, default is your apps root directory',
50
55
  optional: true,
51
- env_name: 'DSYM_ZIP_DSYM_PATH')
56
+ env_name: 'DSYM_ZIP_DSYM_PATH'),
57
+ FastlaneCore::ConfigItem.new(key: :all,
58
+ description: 'Whether or not all dSYM files are to be included. Optional, default is false in which only your app dSYM is included',
59
+ default_value: false,
60
+ optional: true,
61
+ is_string: false,
62
+ env_name: 'DSYM_ZIP_ALL')
52
63
  ]
53
64
  end
54
65
 
@@ -0,0 +1,46 @@
1
+ module Fastlane
2
+ module Actions
3
+ module SharedValues
4
+ IPA_OUTPUT_PATH = :IPA_OUTPUT_PATH
5
+ DSYM_OUTPUT_PATH = :DSYM_OUTPUT_PATH
6
+ end
7
+
8
+ class GymAction < Action
9
+ def self.run(values)
10
+ require 'gym'
11
+
12
+ begin
13
+ FastlaneCore::UpdateChecker.start_looking_for_update('gym') unless Helper.is_test?
14
+
15
+ values[:provisioning_profile_path] ||= Actions.lane_context[Actions::SharedValues::SIGH_PROFILE_PATH] || ENV["SIGH_PROFILE_PATH"]
16
+ path = File.expand_path(Gym::Manager.new.work(values))
17
+ dsym_path = path.gsub(".ipa", ".app.dSYM.zip")
18
+
19
+ Actions.lane_context[SharedValues::IPA_OUTPUT_PATH] = path # absolute path
20
+ Actions.lane_context[SharedValues::DSYM_OUTPUT_PATH] = dsym_path if File.exist?(dsym_path)
21
+
22
+ return path
23
+ ensure
24
+ FastlaneCore::UpdateChecker.show_update_status('gym', Gym::VERSION)
25
+ end
26
+ end
27
+
28
+ def self.description
29
+ "Easily build and sign your app using `gym`"
30
+ end
31
+
32
+ def self.author
33
+ "KrauseFx"
34
+ end
35
+
36
+ def self.available_options
37
+ require 'gym'
38
+ Gym::Options.available_options
39
+ end
40
+
41
+ def self.is_supported?(platform)
42
+ platform == :ios
43
+ end
44
+ end
45
+ end
46
+ end
@@ -2,8 +2,10 @@ module Fastlane
2
2
  module Actions
3
3
  class CocoapodsAction < Action
4
4
  def self.run(params)
5
+ cmd = []
5
6
 
6
- cmd = ['pod install']
7
+ cmd << ['bundle exec'] if File.exists?('Gemfile')
8
+ cmd << ['pod install']
7
9
 
8
10
  cmd << '--no-clean' unless params[:clean]
9
11
  cmd << '--no-integrate' unless params[:integrate]
@@ -53,7 +55,7 @@ module Fastlane
53
55
  end
54
56
 
55
57
  def self.authors
56
- ["KrauseFx", "tadpol"]
58
+ ["KrauseFx", "tadpol", "birmacher"]
57
59
  end
58
60
  end
59
61
  end
@@ -1,10 +1,5 @@
1
1
  module Fastlane
2
2
  module Actions
3
- module SharedValues
4
- IPA_OUTPUT_PATH = :IPA_OUTPUT_PATH
5
- DSYM_OUTPUT_PATH = :DSYM_OUTPUT_PATH
6
- end
7
-
8
3
  ARGS_MAP = {
9
4
  workspace: '-w',
10
5
  project: '-p',
@@ -171,6 +171,8 @@ module Fastlane
171
171
  end
172
172
 
173
173
  raise "Could not find Fastfile at path '#{path}'".red unless File.exists?(path)
174
+
175
+ collector.did_launch_action(:import)
174
176
  parse(File.read(path))
175
177
 
176
178
  # Check if we can also import local actions which are in the same directory as the Fastfile
@@ -184,6 +186,7 @@ module Fastlane
184
186
  raise "Please pass a path to the `import_from_git` action".red if url.to_s.length == 0
185
187
 
186
188
  Actions.execute_action('import_from_git') do
189
+ collector.did_launch_action(:import_from_git)
187
190
 
188
191
  # Checkout the repo
189
192
  repo_name = url.split("/").last
@@ -1,3 +1,3 @@
1
1
  module Fastlane
2
- VERSION = '1.15.0'
2
+ VERSION = '1.16.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.15.0
4
+ version: 1.16.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-08-07 00:00:00.000000000 Z
11
+ date: 2015-08-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -168,30 +168,30 @@ dependencies:
168
168
  name: fastlane_core
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - ">="
171
+ - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 0.12.0
173
+ version: 0.13.0
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - ">="
178
+ - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 0.12.0
180
+ version: 0.13.0
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: spaceship
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ">="
185
+ - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: 0.3.4
187
+ version: 0.4.0
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.3.4
194
+ version: 0.4.0
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: deliver
197
197
  requirement: !ruby/object:Gem::Requirement
@@ -240,14 +240,14 @@ dependencies:
240
240
  requirements:
241
241
  - - ">="
242
242
  - !ruby/object:Gem::Version
243
- version: 0.6.4
243
+ version: 0.7.1
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.4
250
+ version: 0.7.1
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: cert
253
253
  requirement: !ruby/object:Gem::Requirement
@@ -282,14 +282,28 @@ dependencies:
282
282
  requirements:
283
283
  - - ">="
284
284
  - !ruby/object:Gem::Version
285
- version: 0.5.1
285
+ version: 0.6.0
286
+ type: :runtime
287
+ prerelease: false
288
+ version_requirements: !ruby/object:Gem::Requirement
289
+ requirements:
290
+ - - ">="
291
+ - !ruby/object:Gem::Version
292
+ version: 0.6.0
293
+ - !ruby/object:Gem::Dependency
294
+ name: gym
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - ">="
298
+ - !ruby/object:Gem::Version
299
+ version: 0.1.0
286
300
  type: :runtime
287
301
  prerelease: false
288
302
  version_requirements: !ruby/object:Gem::Requirement
289
303
  requirements:
290
304
  - - ">="
291
305
  - !ruby/object:Gem::Version
292
- version: 0.5.1
306
+ version: 0.1.0
293
307
  - !ruby/object:Gem::Dependency
294
308
  name: bundler
295
309
  requirement: !ruby/object:Gem::Requirement
@@ -429,6 +443,7 @@ files:
429
443
  - lib/fastlane/actions/appstore.rb
430
444
  - lib/fastlane/actions/backup_file.rb
431
445
  - lib/fastlane/actions/backup_xcarchive.rb
446
+ - lib/fastlane/actions/bundle_install.rb
432
447
  - lib/fastlane/actions/cert.rb
433
448
  - lib/fastlane/actions/chatwork.rb
434
449
  - lib/fastlane/actions/clean_build_artifacts.rb
@@ -449,6 +464,7 @@ files:
449
464
  - lib/fastlane/actions/get_github_release.rb
450
465
  - lib/fastlane/actions/git_branch.rb
451
466
  - lib/fastlane/actions/git_pull.rb
467
+ - lib/fastlane/actions/gym.rb
452
468
  - lib/fastlane/actions/hg_add_tag.rb
453
469
  - lib/fastlane/actions/hg_commit_version_bump.rb
454
470
  - lib/fastlane/actions/hg_ensure_clean_status.rb