fastlane 2.6.0 → 2.7.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: 077c46f59f353134e4211ee252c92882a510b55c
4
- data.tar.gz: 5cb94ef40a8470ae61fa22e069ea06242e8047af
3
+ metadata.gz: 807ab696886b26b22e27a6c0d5650b22bfc0cbd0
4
+ data.tar.gz: c4795c30d5084f137482dc494386c358e95d2ec0
5
5
  SHA512:
6
- metadata.gz: 6f8bc8bb4fef49caa02096fabb87146c606296cd6b5f58019a0431a3529eb1539640be800c399dcaa231565ccaf9bb988161c2e23f84dff10f6f00816d9aee19
7
- data.tar.gz: c605fb60e551e0840e83a084a25790cb38eb6916cb902d7fbfbf917e810d3258c9dac2555d25047d5a833782b1d2985d8a7c259a454e0d9a8a8205f432216a86
6
+ metadata.gz: f34da0506145ec8a74198c557f9759b4cab7331ff4f4fcdb411e499d58f726ae3264a7f7cce3ce6880a663e8e754e8fd4cfddbf1b30934412fcad096990f9ba2
7
+ data.tar.gz: 9e40712f3b21d2353609963c834c0943e294a1cfe06fd0237546151e8338e10b4ea87e2be83884ce554a1d2f3d2cf07a5fc5820c94e75b9fd8f94d7a492c4f5e
@@ -25,7 +25,7 @@ module Cert
25
25
  FastlaneCore::CommanderGenerator.new.generate(Cert::Options.available_options)
26
26
 
27
27
  command :create do |c|
28
- c.syntax = 'cert create'
28
+ c.syntax = 'fastlane cert create'
29
29
  c.description = 'Create new iOS code signing certificates'
30
30
 
31
31
  c.action do |args, options|
@@ -35,7 +35,7 @@ module Cert
35
35
  end
36
36
 
37
37
  command :revoke_expired do |c|
38
- c.syntax = 'cert revoke_expired'
38
+ c.syntax = 'fastlane cert revoke_expired'
39
39
  c.description = 'Revoke expired iOS code signing certificates'
40
40
 
41
41
  c.action do |args, options|
@@ -12,7 +12,7 @@ module CredentialsManager
12
12
 
13
13
  # Command to add entry to Keychain
14
14
  command :add do |c|
15
- c.syntax = 'fastlane-credentials add'
15
+ c.syntax = 'fastlane fastlane-credentials add'
16
16
  c.description = 'Adds a fastlane credential to the keychain.'
17
17
 
18
18
  c.option '--username username', String, 'Username to add.'
@@ -30,7 +30,7 @@ module CredentialsManager
30
30
 
31
31
  # Command to remove credential from Keychain
32
32
  command :remove do |c|
33
- c.syntax = 'fastlane-credentials remove'
33
+ c.syntax = 'fastlane fastlane-credentials remove'
34
34
  c.description = 'Removes a fastlane credential from the keychain.'
35
35
 
36
36
  c.option '--username username', String, 'Username to remove.'
@@ -44,7 +44,7 @@ module Deliver
44
44
  always_trace!
45
45
 
46
46
  command :run do |c|
47
- c.syntax = 'deliver'
47
+ c.syntax = 'fastlane deliver'
48
48
  c.description = 'Upload metadata and binary to iTunes Connect'
49
49
  c.action do |args, options|
50
50
  options = FastlaneCore::Configuration.create(deliverfile_options, options.__hash__)
@@ -63,7 +63,7 @@ module Deliver
63
63
  end
64
64
  end
65
65
  command :submit_build do |c|
66
- c.syntax = 'deliver submit_build'
66
+ c.syntax = 'fastlane deliver submit_build'
67
67
  c.description = 'Submit a specific build-nr for review, use latest for the latest build'
68
68
  c.action do |args, options|
69
69
  options = FastlaneCore::Configuration.create(deliverfile_options, options.__hash__)
@@ -74,7 +74,7 @@ module Deliver
74
74
  end
75
75
  end
76
76
  command :init do |c|
77
- c.syntax = 'deliver init'
77
+ c.syntax = 'fastlane deliver init'
78
78
  c.description = 'Create the initial `deliver` configuration based on an existing app'
79
79
  c.action do |args, options|
80
80
  if File.exist?("Deliverfile") or File.exist?("fastlane/Deliverfile")
@@ -90,7 +90,7 @@ module Deliver
90
90
  end
91
91
 
92
92
  command :generate_summary do |c|
93
- c.syntax = 'deliver generate_summary'
93
+ c.syntax = 'fastlane deliver generate_summary'
94
94
  c.description = 'Generate HTML Summary without uploading/downloading anything'
95
95
  c.action do |args, options|
96
96
  options = FastlaneCore::Configuration.create(deliverfile_options, options.__hash__)
@@ -103,7 +103,7 @@ module Deliver
103
103
  end
104
104
 
105
105
  command :download_screenshots do |c|
106
- c.syntax = 'deliver download_screenshots'
106
+ c.syntax = 'fastlane deliver download_screenshots'
107
107
  c.description = "Downloads all existing screenshots from iTunes Connect and stores them in the screenshots folder"
108
108
 
109
109
  c.action do |args, options|
@@ -117,7 +117,7 @@ module Deliver
117
117
  end
118
118
 
119
119
  command :download_metadata do |c|
120
- c.syntax = 'deliver download_metadata'
120
+ c.syntax = 'fastlane deliver download_metadata'
121
121
  c.description = "Downloads existing metadata and stores it locally. This overwrites the local files."
122
122
 
123
123
  c.action do |args, options|
@@ -55,7 +55,7 @@ module Fastlane
55
55
  # If we didn't build, then we return now, as it makes no sense to search for apk's in a non-`assemble` scenario
56
56
  return result unless task.start_with?('assemble')
57
57
 
58
- apk_search_path = File.join(project_dir, '*', 'build', 'outputs', 'apk', '*.apk')
58
+ apk_search_path = File.join(project_dir, '**', 'build', 'outputs', 'apk', '*.apk')
59
59
 
60
60
  # Our apk is now built, but there might actually be multiple ones that were built if a flavor was not specified in a multi-flavor project (e.g. `assembleRelease`), however we're not interested in unaligned apk's...
61
61
  new_apks = Dir[apk_search_path].reject { |path| path =~ /^.*-unaligned.apk$/i }
@@ -217,7 +217,12 @@ module Fastlane
217
217
  env_name: "FL_HOCKEY_BYPASS_CDN",
218
218
  description: "Flag to bypass Hockey CDN when it uploads successfully but reports error",
219
219
  is_string: false,
220
- default_value: false)
220
+ default_value: false),
221
+ FastlaneCore::ConfigItem.new(key: :dsa_signature,
222
+ env_name: "FL_HOCKEY_DSA_SIGNATURE",
223
+ description: "DSA signature for sparkle updates for macOS",
224
+ is_string: true,
225
+ optional: true)
221
226
  ]
222
227
  end
223
228
 
@@ -7,7 +7,9 @@ module Fastlane
7
7
  params[:output_path] ||= "#{params[:path]}.zip"
8
8
 
9
9
  Dir.chdir(File.expand_path("..", params[:path])) do # required to properly zip
10
- Actions.sh "zip -r #{params[:output_path].shellescape} #{File.basename(params[:path]).shellescape}"
10
+ zip_options = params[:verbose] ? "r" : "rq"
11
+
12
+ Actions.sh "zip -#{zip_options} #{params[:output_path].shellescape} #{File.basename(params[:path]).shellescape}"
11
13
  end
12
14
 
13
15
  UI.success "Successfully generated zip file at path '#{File.expand_path(params[:output_path])}'"
@@ -36,6 +38,11 @@ module Fastlane
36
38
  FastlaneCore::ConfigItem.new(key: :output_path,
37
39
  env_name: "FL_ZIP_OUTPUT_NAME",
38
40
  description: "The name of the resulting zip file",
41
+ optional: true),
42
+ FastlaneCore::ConfigItem.new(key: :verbose,
43
+ env_name: "FL_ZIP_VERBOSE",
44
+ description: "Enable verbose output of zipped file",
45
+ default_value: true,
39
46
  optional: true)
40
47
  ]
41
48
  end
@@ -46,6 +53,11 @@ module Fastlane
46
53
  'zip(
47
54
  path: "MyApp.app",
48
55
  output_path: "Latest.app.zip"
56
+ )',
57
+ 'zip(
58
+ path: "MyApp.app",
59
+ output_path: "Latest.app.zip"
60
+ verbose: false
49
61
  )'
50
62
  ]
51
63
  end
@@ -1,4 +1,4 @@
1
1
  module Fastlane
2
- VERSION = '2.6.0'.freeze
2
+ VERSION = '2.7.0'.freeze
3
3
  DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
4
4
  end
@@ -41,6 +41,8 @@ module FastlaneCore
41
41
 
42
42
  # A directory that's being used to user-wide fastlane configs
43
43
  # This directory is also used for the bundled fastlane
44
+ # Since we don't want to access FastlaneCore from spaceship
45
+ # this method is duplicated in spaceship/client.rb
44
46
  def self.fastlane_user_dir
45
47
  path = File.expand_path(File.join("~", ".fastlane"))
46
48
  FileUtils.mkdir_p(path) unless File.directory?(path)
@@ -7,7 +7,7 @@ module FastlaneCore
7
7
 
8
8
  attr_accessor :package_path
9
9
 
10
- def generate(app_id: nil, pkg_path: nil, package_path: nil)
10
+ def generate(app_id: nil, pkg_path: nil, package_path: nil, platform: "osx")
11
11
  self.package_path = File.join(package_path, "#{app_id}.itmsp")
12
12
  FileUtils.rm_rf(self.package_path) if File.directory?(self.package_path)
13
13
  FileUtils.mkdir_p self.package_path
@@ -19,7 +19,7 @@ module FastlaneCore
19
19
  ipa_path: File.basename(pkg_path), # this is only the base name as the ipa is inside the package
20
20
  md5: Digest::MD5.hexdigest(File.read(pkg_path)),
21
21
  archive_type: 'product-archive',
22
- platform: 'osx'
22
+ platform: platform
23
23
  }
24
24
 
25
25
  xml_path = File.join(FastlaneCore::ROOT, 'lib/assets/XMLTemplate.xml.erb')
@@ -32,7 +32,7 @@ module Gym
32
32
  global_option("--verbose") { $verbose = true }
33
33
 
34
34
  command :build do |c|
35
- c.syntax = "gym"
35
+ c.syntax = "fastlane gym"
36
36
  c.description = "Just builds your app"
37
37
  c.action do |_args, options|
38
38
  config = FastlaneCore::Configuration.create(Gym::Options.available_options,
@@ -42,7 +42,7 @@ module Gym
42
42
  end
43
43
 
44
44
  command :init do |c|
45
- c.syntax = "gym init"
45
+ c.syntax = "fastlane gym init"
46
46
  c.description = "Creates a new Gymfile for you"
47
47
  c.action do |_args, options|
48
48
  containing = (File.directory?("fastlane") ? 'fastlane' : '.')
@@ -1,6 +1,8 @@
1
1
  module Match
2
+ # These functions should only be used while in (UI.) interactive mode
2
3
  class ChangePassword
3
4
  def self.update(params: nil, from: nil, to: nil)
5
+ ensure_ui_interactive
4
6
  to ||= ChangePassword.ask_password(message: "New passphrase for Git Repo: ", confirm: false)
5
7
  from ||= ChangePassword.ask_password(message: "Old passphrase for Git Repo: ", confirm: true)
6
8
  GitHelper.clear_changes
@@ -13,6 +15,7 @@ module Match
13
15
  end
14
16
 
15
17
  def self.ask_password(message: "Passphrase for Git Repo: ", confirm: true)
18
+ ensure_ui_interactive
16
19
  loop do
17
20
  password = UI.password(message)
18
21
  if confirm
@@ -26,5 +29,11 @@ module Match
26
29
  UI.error("Passhprases differ. Try again")
27
30
  end
28
31
  end
32
+
33
+ def self.ensure_ui_interactive
34
+ raise "This code should only run in interactive mode" unless UI.interactive?
35
+ end
36
+
37
+ private_class_method :ensure_ui_interactive
29
38
  end
30
39
  end
@@ -26,7 +26,7 @@ module Match
26
26
  FastlaneCore::CommanderGenerator.new.generate(Match::Options.available_options)
27
27
 
28
28
  command :run do |c|
29
- c.syntax = 'match'
29
+ c.syntax = 'fastlane match'
30
30
  c.description = Match::DESCRIPTION
31
31
 
32
32
  c.action do |args, options|
@@ -42,7 +42,7 @@ module Match
42
42
 
43
43
  Match.environments.each do |type|
44
44
  command type do |c|
45
- c.syntax = "match #{type}"
45
+ c.syntax = "fastlane match #{type}"
46
46
  c.description = "Run match for a #{type} provisioning profile"
47
47
 
48
48
  c.action do |args, options|
@@ -55,7 +55,7 @@ module Match
55
55
  end
56
56
 
57
57
  command :init do |c|
58
- c.syntax = 'match init'
58
+ c.syntax = 'fastlane match init'
59
59
  c.description = 'Create the Matchfile for you'
60
60
  c.action do |args, options|
61
61
  containing = (File.directory?("fastlane") ? 'fastlane' : '.')
@@ -71,7 +71,7 @@ module Match
71
71
  end
72
72
 
73
73
  command :change_password do |c|
74
- c.syntax = 'match change_password'
74
+ c.syntax = 'fastlane match change_password'
75
75
  c.description = 'Re-encrypt all files with a different password'
76
76
  c.action do |args, options|
77
77
  params = FastlaneCore::Configuration.create(Match::Options.available_options, options.__hash__)
@@ -83,7 +83,7 @@ module Match
83
83
  end
84
84
 
85
85
  command :decrypt do |c|
86
- c.syntax = "match decrypt"
86
+ c.syntax = "fastlane match decrypt"
87
87
  c.description = "Decrypts the repository and keeps it on the filesystem"
88
88
  c.action do |args, options|
89
89
  params = FastlaneCore::Configuration.create(Match::Options.available_options, options.__hash__)
@@ -94,7 +94,7 @@ module Match
94
94
  end
95
95
  command "nuke" do |c|
96
96
  # We have this empty command here, since otherwise the normal `match` command will be executed
97
- c.syntax = "match nuke"
97
+ c.syntax = "fastlane match nuke"
98
98
  c.description = "Delete all certificates and provisioning profiles from the Apple Dev Portal"
99
99
  c.action do |args, options|
100
100
  FastlaneCore::UI.user_error!("Please run `match nuke [type], allowed values: distribution and development. For the 'adhoc' type, please use 'distribution' instead.")
@@ -103,7 +103,7 @@ module Match
103
103
 
104
104
  ["development", "distribution"].each do |type|
105
105
  command "nuke #{type}" do |c|
106
- c.syntax = "match nuke #{type}"
106
+ c.syntax = "fastlane match nuke #{type}"
107
107
  c.description = "Delete all certificates and provisioning profiles from the Apple Dev Portal of the type #{type}"
108
108
  c.action do |args, options|
109
109
  params = FastlaneCore::Configuration.create(Match::Options.available_options, options.__hash__)
@@ -15,11 +15,15 @@ module Match
15
15
  end
16
16
 
17
17
  unless password
18
- UI.important "Enter the passphrase that should be used to encrypt/decrypt your certificates"
19
- UI.important "This passphrase is specific per repository and will be stored in your local keychain"
20
- UI.important "Make sure to remember the password, as you'll need it when you run match on a different machine"
21
- password = ChangePassword.ask_password(confirm: true)
22
- store_password(git_url, password)
18
+ if !UI.interactive?
19
+ UI.error "No password found neither in environment nor in local keychain. Bailing out as in non interactive mode."
20
+ else
21
+ UI.important "Enter the passphrase that should be used to encrypt/decrypt your certificates"
22
+ UI.important "This passphrase is specific per repository and will be stored in your local keychain"
23
+ UI.important "Make sure to remember the password, as you'll need it when you run match on a different machine"
24
+ password = ChangePassword.ask_password(confirm: true)
25
+ store_password(git_url, password)
26
+ end
23
27
  end
24
28
 
25
29
  return password
@@ -25,7 +25,7 @@ module PEM
25
25
  FastlaneCore::CommanderGenerator.new.generate(PEM::Options.available_options)
26
26
 
27
27
  command :renew do |c|
28
- c.syntax = 'pem renew'
28
+ c.syntax = 'fastlane pem renew'
29
29
  c.description = 'Renews the certificate (in case it expired) and shows the path to the generated pem file'
30
30
 
31
31
  c.action do |args, options|
@@ -50,7 +50,7 @@ module Pilot
50
50
  global_option("--verbose") { $verbose = true }
51
51
 
52
52
  command :upload do |c|
53
- c.syntax = "pilot upload"
53
+ c.syntax = "fastlane pilot upload"
54
54
  c.description = "Uploads a new binary to Apple TestFlight"
55
55
  c.action do |args, options|
56
56
  config = FastlaneCore::Configuration.create(Pilot::Options.available_options, convert_options(options))
@@ -59,7 +59,7 @@ module Pilot
59
59
  end
60
60
 
61
61
  command :distribute do |c|
62
- c.syntax = "pilot distribute"
62
+ c.syntax = "fastlane pilot distribute"
63
63
  c.description = "Distribute a previously uploaded binary to Apple TestFlight"
64
64
  c.action do |args, options|
65
65
  config = FastlaneCore::Configuration.create(Pilot::Options.available_options, convert_options(options))
@@ -69,7 +69,7 @@ module Pilot
69
69
  end
70
70
 
71
71
  command :builds do |c|
72
- c.syntax = "pilot builds"
72
+ c.syntax = "fastlane pilot builds"
73
73
  c.description = "Lists all builds for given application"
74
74
  c.action do |args, options|
75
75
  config = FastlaneCore::Configuration.create(Pilot::Options.available_options, convert_options(options))
@@ -78,7 +78,7 @@ module Pilot
78
78
  end
79
79
 
80
80
  command :add do |c|
81
- c.syntax = "pilot add"
81
+ c.syntax = "fastlane pilot add"
82
82
  c.description = "Adds new external tester(s) to a specific app (if given). This will also add an existing tester to an app."
83
83
  c.action do |args, options|
84
84
  handle_multiple('add_tester', args, options)
@@ -86,7 +86,7 @@ module Pilot
86
86
  end
87
87
 
88
88
  command :list do |c|
89
- c.syntax = "pilot list"
89
+ c.syntax = "fastlane pilot list"
90
90
  c.description = "Lists all registered testers, both internal and external"
91
91
  c.action do |args, options|
92
92
  config = FastlaneCore::Configuration.create(Pilot::Options.available_options, convert_options(options))
@@ -95,7 +95,7 @@ module Pilot
95
95
  end
96
96
 
97
97
  command :find do |c|
98
- c.syntax = "pilot find"
98
+ c.syntax = "fastlane pilot find"
99
99
  c.description = "Find tester(s) (internal or external) by their email address"
100
100
  c.action do |args, options|
101
101
  handle_multiple('find_tester', args, options)
@@ -103,7 +103,7 @@ module Pilot
103
103
  end
104
104
 
105
105
  command :remove do |c|
106
- c.syntax = "pilot remove"
106
+ c.syntax = "fastlane pilot remove"
107
107
  c.description = "Remove external tester(s) by their email address"
108
108
  c.action do |args, options|
109
109
  handle_multiple('remove_tester', args, options)
@@ -111,7 +111,7 @@ module Pilot
111
111
  end
112
112
 
113
113
  command :export do |c|
114
- c.syntax = "pilot export"
114
+ c.syntax = "fastlane pilot export"
115
115
  c.description = "Exports all external testers to a CSV file"
116
116
  c.action do |args, options|
117
117
  config = FastlaneCore::Configuration.create(Pilot::Options.available_options, convert_options(options))
@@ -120,7 +120,7 @@ module Pilot
120
120
  end
121
121
 
122
122
  command :import do |c|
123
- c.syntax = "pilot import"
123
+ c.syntax = "fastlane pilot import"
124
124
  c.description = "Create external testers from a CSV file"
125
125
  c.action do |args, options|
126
126
  config = FastlaneCore::Configuration.create(Pilot::Options.available_options, convert_options(options))
@@ -25,7 +25,7 @@ module Produce
25
25
  FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options)
26
26
 
27
27
  command :create do |c|
28
- c.syntax = 'produce create'
28
+ c.syntax = 'fastlane produce create'
29
29
  c.description = 'Creates a new app on iTunes Connect and the Apple Developer Portal'
30
30
 
31
31
  c.action do |args, options|
@@ -36,7 +36,7 @@ module Produce
36
36
  end
37
37
 
38
38
  command :enable_services do |c|
39
- c.syntax = 'produce enable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
39
+ c.syntax = 'fastlane produce enable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
40
40
  c.description = 'Enable specific Application Services for a specific app on the Apple Developer Portal'
41
41
  c.example 'Enable HealthKit, HomeKit and Passbook', 'produce enable_services -a com.example.app --healthkit --homekit --passbook'
42
42
 
@@ -67,7 +67,7 @@ module Produce
67
67
  end
68
68
 
69
69
  command :disable_services do |c|
70
- c.syntax = 'produce disable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
70
+ c.syntax = 'fastlane produce disable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
71
71
  c.description = 'Disable specific Application Services for a specific app on the Apple Developer Portal'
72
72
  c.example 'Disable HealthKit', 'produce disable_services -a com.example.app --healthkit'
73
73
 
@@ -98,7 +98,7 @@ module Produce
98
98
  end
99
99
 
100
100
  command :group do |c|
101
- c.syntax = 'produce group'
101
+ c.syntax = 'fastlane produce group'
102
102
  c.description = 'Ensure that a specific App Group exists'
103
103
  c.example 'Create group', 'produce group -g group.example.app -n "Example App Group"'
104
104
 
@@ -115,7 +115,7 @@ module Produce
115
115
  end
116
116
 
117
117
  command :associate_group do |c|
118
- c.syntax = 'produce associate_group -a APP_IDENTIFIER GROUP_IDENTIFIER1, GROUP_IDENTIFIER2, ...'
118
+ c.syntax = 'fastlane produce associate_group -a APP_IDENTIFIER GROUP_IDENTIFIER1, GROUP_IDENTIFIER2, ...'
119
119
  c.description = 'Associate with a group, which is create if needed or simply located otherwise'
120
120
  c.example 'Associate with group', 'produce associate-group -a com.example.app group.example.com'
121
121
 
@@ -31,7 +31,7 @@ module Scan
31
31
  global_option("--verbose") { $verbose = true }
32
32
 
33
33
  command :tests do |c|
34
- c.syntax = "scan"
34
+ c.syntax = "fastlane scan"
35
35
  c.description = Scan::DESCRIPTION
36
36
  c.action do |_args, options|
37
37
  config = FastlaneCore::Configuration.create(Scan::Options.available_options,
@@ -41,7 +41,7 @@ module Scan
41
41
  end
42
42
 
43
43
  command :init do |c|
44
- c.syntax = "scan init"
44
+ c.syntax = "fastlane scan init"
45
45
  c.description = "Creates a new Scanfile for you"
46
46
  c.action do |_args, options|
47
47
  containing = (Helper.fastlane_enabled? ? 'fastlane' : '.')
@@ -27,7 +27,7 @@ module Screengrab
27
27
  FastlaneCore::CommanderGenerator.new.generate(Screengrab::Options.available_options)
28
28
 
29
29
  command :run do |c|
30
- c.syntax = 'screengrab'
30
+ c.syntax = 'fastlane screengrab'
31
31
  c.description = 'Take new screenshots based on the screengrabfile.'
32
32
 
33
33
  c.action do |args, options|
@@ -43,7 +43,7 @@ module Screengrab
43
43
  end
44
44
 
45
45
  command :init do |c|
46
- c.syntax = 'screengrab init'
46
+ c.syntax = 'fastlane screengrab init'
47
47
  c.description = "Creates a new Screengrabfile in the current directory"
48
48
 
49
49
  c.action do |args, options|
@@ -25,7 +25,7 @@ module Sigh
25
25
  FastlaneCore::CommanderGenerator.new.generate(Sigh::Options.available_options)
26
26
 
27
27
  command :renew do |c|
28
- c.syntax = 'sigh renew'
28
+ c.syntax = 'fastlane sigh renew'
29
29
  c.description = 'Renews the certificate (in case it expired) and outputs the path to the generated file'
30
30
 
31
31
  c.action do |args, options|
@@ -57,7 +57,7 @@ module Sigh
57
57
  end
58
58
 
59
59
  command :download_all do |c|
60
- c.syntax = 'sigh download_all'
60
+ c.syntax = 'fastlane sigh download_all'
61
61
  c.description = 'Downloads all valid provisioning profiles'
62
62
 
63
63
  c.action do |args, options|
@@ -67,7 +67,7 @@ module Sigh
67
67
  end
68
68
 
69
69
  command :repair do |c|
70
- c.syntax = 'sigh repair'
70
+ c.syntax = 'fastlane sigh repair'
71
71
  c.description = 'Repairs all expired or invalid provisioning profiles'
72
72
 
73
73
  c.action do |args, options|
@@ -78,7 +78,7 @@ module Sigh
78
78
  end
79
79
 
80
80
  command :resign do |c|
81
- c.syntax = 'sigh resign'
81
+ c.syntax = 'fastlane sigh resign'
82
82
  c.description = 'Resigns an existing ipa file with the given provisioning profile'
83
83
  c.option '-i', '--signing_identity STRING', String, 'The signing identity to use. Must match the one defined in the provisioning profile.'
84
84
  c.option '-x', '--version_number STRING', String, 'Version number to force binary and all nested binaries to use. Changes both CFBundleShortVersionString and CFBundleIdentifier.'
@@ -100,7 +100,7 @@ module Sigh
100
100
  end
101
101
 
102
102
  command :manage do |c|
103
- c.syntax = 'sigh manage'
103
+ c.syntax = 'fastlane sigh manage'
104
104
  c.description = 'Manage installed provisioning profiles on your system.'
105
105
 
106
106
  c.option '-f', '--force', 'Force remove all expired provisioning profiles. Required on CI.'
@@ -27,7 +27,7 @@ module Snapshot
27
27
  FastlaneCore::CommanderGenerator.new.generate(Snapshot::Options.available_options)
28
28
 
29
29
  command :run do |c|
30
- c.syntax = 'snapshot'
30
+ c.syntax = 'fastlane snapshot'
31
31
  c.description = 'Take new screenshots based on the Snapfile.'
32
32
 
33
33
  c.action do |args, options|
@@ -39,7 +39,7 @@ module Snapshot
39
39
  end
40
40
 
41
41
  command :init do |c|
42
- c.syntax = 'snapshot init'
42
+ c.syntax = 'fastlane snapshot init'
43
43
  c.description = "Creates a new Snapfile in the current directory"
44
44
 
45
45
  c.action do |args, options|
@@ -50,7 +50,7 @@ module Snapshot
50
50
  end
51
51
 
52
52
  command :update do |c|
53
- c.syntax = 'snapshot update'
53
+ c.syntax = 'fastlane snapshot update'
54
54
  c.description = "Updates your SnapshotHelper.swift to the latest version"
55
55
 
56
56
  c.action do |args, options|
@@ -60,7 +60,7 @@ module Snapshot
60
60
  end
61
61
 
62
62
  command :reset_simulators do |c|
63
- c.syntax = 'snapshot reset_simulators'
63
+ c.syntax = 'fastlane snapshot reset_simulators'
64
64
  c.description = "This will remove all your existing simulators and re-create new ones"
65
65
  c.option '-i', '--ios String', String, 'The comma separated list of iOS Versions you want to use'
66
66
  c.option '--force', 'Disables confirmation prompts'
@@ -75,7 +75,7 @@ module Snapshot
75
75
  end
76
76
 
77
77
  command :clear_derived_data do |c|
78
- c.syntax = 'snapshot clear_derived_data -f path'
78
+ c.syntax = 'fastlane snapshot clear_derived_data -f path'
79
79
  c.description = "Clear the directory where build products and other derived data will go"
80
80
 
81
81
  c.action do |args, options|
@@ -166,13 +166,20 @@ module Spaceship
166
166
  return File.read(path)
167
167
  end
168
168
 
169
+ # This is a duplicate method of fastlane_core/fastlane_core.rb#fastlane_user_dir
170
+ def fastlane_user_dir
171
+ path = File.expand_path(File.join("~", ".fastlane"))
172
+ FileUtils.mkdir_p(path) unless File.directory?(path)
173
+ return path
174
+ end
175
+
169
176
  # Returns preferred path for storing cookie
170
177
  # for two step verification.
171
178
  def persistent_cookie_path
172
179
  if ENV["SPACESHIP_COOKIE_PATH"]
173
180
  path = File.expand_path(File.join(ENV["SPACESHIP_COOKIE_PATH"], "spaceship", self.user, "cookie"))
174
181
  else
175
- [File.join(FastlaneCore.fastlane_user_dir, "spaceship"), "~/.spaceship", "/var/tmp/spaceship", "#{Dir.tmpdir}/spaceship"].each do |dir|
182
+ [File.join(self.fastlane_user_dir, "spaceship"), "~/.spaceship", "/var/tmp/spaceship", "#{Dir.tmpdir}/spaceship"].each do |dir|
176
183
  dir_parts = File.split(dir)
177
184
  if directory_accessible?(File.expand_path(dir_parts.first))
178
185
  path = File.expand_path(File.join(dir, self.user, "cookie"))
@@ -24,7 +24,7 @@ module Spaceship
24
24
  global_option('-u', '--user USERNAME', 'Specify the Apple ID you want to log in with')
25
25
 
26
26
  command :playground do |c|
27
- c.syntax = 'spaceship playground'
27
+ c.syntax = 'fastlane spaceship playground'
28
28
  c.description = 'Run an interactive shell that connects you to Apple web services'
29
29
 
30
30
  c.action do |args, options|
@@ -33,7 +33,7 @@ module Spaceship
33
33
  end
34
34
 
35
35
  command :spaceauth do |c|
36
- c.syntax = 'spaceship spaceauth'
36
+ c.syntax = 'fastlane spaceship spaceauth'
37
37
  c.description = 'Authentication helper for spaceship/fastlane to work with Apple 2-Step/2FA'
38
38
 
39
39
  c.action do |args, options|
@@ -28,7 +28,7 @@ module Supply
28
28
  global_option('--verbose') { $verbose = true }
29
29
 
30
30
  command :run do |c|
31
- c.syntax = 'supply'
31
+ c.syntax = 'fastlane supply'
32
32
  c.description = 'Run a deploy process'
33
33
  c.action do |args, options|
34
34
  Supply.config = FastlaneCore::Configuration.create(Supply::Options.available_options, options.__hash__)
@@ -39,7 +39,7 @@ module Supply
39
39
  end
40
40
 
41
41
  command :init do |c|
42
- c.syntax = 'supply init'
42
+ c.syntax = 'fastlane supply init'
43
43
  c.description = 'Sets up supply for you'
44
44
  c.action do |args, options|
45
45
  require 'supply/setup'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.0
4
+ version: 2.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2017-01-08 00:00:00.000000000 Z
17
+ date: 2017-01-09 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: slack-notifier