fastlane 1.21.0 → 1.22.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +21 -22
- data/lib/fastlane/actions/bundle_install.rb +14 -3
- data/lib/fastlane/actions/get_info_plist_value.rb +60 -0
- data/lib/fastlane/actions/gym.rb +1 -1
- data/lib/fastlane/actions/set_info_plist_value.rb +61 -0
- data/lib/fastlane/version.rb +1 -1
- metadata +26 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3b371a243c7eae82d8928efe3bea6048e2bbe4cf
|
4
|
+
data.tar.gz: fa37ffd24ef06b8e43f8aed3fdda332abc06ebd8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 28eb77c6a561331d21ef65fd7c6f612dd24b672f941f168f227eb0d9515fd8b23376b9248055d01f5d79492e2fedf1d83ab7e053a20c505edc71f30c5d9089f0
|
7
|
+
data.tar.gz: 8cbe27bcded9f352f76a8387d87c9ac855047cd2dc12f7da6d1a27cfe5870114af38b4ba99bed0eace57f4b9c1f8740fe635c0d02f591a188b5d9d45add4ea2b
|
data/README.md
CHANGED
@@ -61,7 +61,6 @@ lane :appstore do
|
|
61
61
|
snapshot
|
62
62
|
sigh
|
63
63
|
deliver
|
64
|
-
frameit
|
65
64
|
sh "./customScript.sh"
|
66
65
|
|
67
66
|
slack
|
@@ -74,27 +73,27 @@ To launch the `appstore` lane, just run:
|
|
74
73
|
fastlane appstore
|
75
74
|
```
|
76
75
|
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
76
|
+
| fastlane
|
77
|
+
--------------------------|------------------------------------------------------------
|
78
|
+
:sparkles: | Connect all iOS build tools into one workflow (both `fastlane` tools and third party tools)
|
79
|
+
:monorail: | Define different `deployment lanes` for App Store deployment, beta builds or testing
|
80
|
+
:ship: | Deploy from any computer, including a CI-server
|
81
|
+
:wrench: | Extend and customise the functionality
|
82
|
+
:thought_balloon: | Never remember any difficult commands, just `fastlane`
|
83
|
+
:tophat: | Easy setup assistant to get started in a few minutes
|
84
|
+
:email: | Automatically pass on information from one build step to another (e.g. path to the `ipa` file)
|
85
|
+
:page_with_curl: | Store **everything** in git. Never again lookup the build commands in the `Jenkins` configs
|
86
|
+
:rocket: | Saves you **hours** for every app udpate you release
|
87
|
+
:pencil2: | Very flexible configuration using a fully customisable `Fastfile`
|
88
|
+
:mountain_cableway: | Implement a fully working Continuous Delivery process
|
89
|
+
:ghost: | [Jenkins Integration](https://github.com/KrauseFx/fastlane/blob/master/docs/Jenkins.md): Show the output directly in the Jenkins test results
|
90
|
+
:book: | Automatically generate a markdown documentation of your lane config
|
91
|
+
:hatching_chick: | Over 90 built-in integrations available
|
92
|
+
:computer: | Support for both iOS and Mac OS apps
|
93
|
+
:octocat: | Full git and mercurial support
|
94
|
+
|
95
|
+
|
96
|
+
###### Take a look at the [fastlane website](https://fastlane.tools) for more information about why and when to use `fastlane`.
|
98
97
|
|
99
98
|
##### Like this tool? [Be the first to know about updates and new fastlane tools](https://tinyletter.com/krausefx).
|
100
99
|
|
@@ -4,7 +4,7 @@ module Fastlane
|
|
4
4
|
# rubocop:disable Metrics/CyclomaticComplexity
|
5
5
|
# rubocop:disable Metrics/PerceivedComplexity
|
6
6
|
def self.run(params)
|
7
|
-
if
|
7
|
+
if gemfile_exists?(params)
|
8
8
|
cmd = ['bundle install']
|
9
9
|
|
10
10
|
cmd << "--binstubs #{params[:binstubs]}" if params[:binstubs]
|
@@ -34,8 +34,19 @@ module Fastlane
|
|
34
34
|
# rubocop:enable Metrics/CyclomaticComplexity
|
35
35
|
# rubocop:enable Metrics/PerceivedComplexity
|
36
36
|
|
37
|
+
def self.gemfile_exists?(params)
|
38
|
+
possible_gemfiles = ['Gemfile', 'gemfile']
|
39
|
+
possible_gemfiles.insert(0, params[:gemfile]) if params[:gemfile]
|
40
|
+
possible_gemfiles.each do |gemfile|
|
41
|
+
gemfile = File.absolute_path(gemfile)
|
42
|
+
return true if File.exist? gemfile
|
43
|
+
Helper.log.info "Gemfile not found at: '#{gemfile}'"
|
44
|
+
end
|
45
|
+
return false
|
46
|
+
end
|
47
|
+
|
37
48
|
def self.description
|
38
|
-
'This action runs `bundle install` if
|
49
|
+
'This action runs `bundle install` (if available)'
|
39
50
|
end
|
40
51
|
|
41
52
|
def self.is_supported?(platform)
|
@@ -43,7 +54,7 @@ module Fastlane
|
|
43
54
|
end
|
44
55
|
|
45
56
|
def self.author
|
46
|
-
["birmacher"]
|
57
|
+
["birmacher", "koglinjg"]
|
47
58
|
end
|
48
59
|
|
49
60
|
def self.available_options
|
@@ -0,0 +1,60 @@
|
|
1
|
+
module Fastlane
|
2
|
+
module Actions
|
3
|
+
module SharedValues
|
4
|
+
GET_INFO_PLIST_VALUE_CUSTOM_VALUE = :GET_INFO_PLIST_VALUE_CUSTOM_VALUE
|
5
|
+
end
|
6
|
+
|
7
|
+
class GetInfoPlistValueAction < Action
|
8
|
+
def self.run(params)
|
9
|
+
require "plist"
|
10
|
+
|
11
|
+
begin
|
12
|
+
path = File.expand_path(params[:path])
|
13
|
+
plist = Plist.parse_xml(path)
|
14
|
+
|
15
|
+
value = plist[params[:key]]
|
16
|
+
Actions.lane_context[SharedValues::GET_INFO_PLIST_VALUE_CUSTOM_VALUE] = value
|
17
|
+
|
18
|
+
return value
|
19
|
+
rescue => ex
|
20
|
+
Helper.log.error ex
|
21
|
+
Helper.log.error "Unable to find plist file at '#{path}'".red
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.description
|
26
|
+
"Returns value from Info.plist of your project as native Ruby data structures"
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.available_options
|
30
|
+
[
|
31
|
+
FastlaneCore::ConfigItem.new(key: :key,
|
32
|
+
env_name: "FL_GET_INFO_PLIST_PARAM_NAME",
|
33
|
+
description: "Name of parameter",
|
34
|
+
optional: false),
|
35
|
+
FastlaneCore::ConfigItem.new(key: :path,
|
36
|
+
env_name: "FL_GET_INFO_PLIST_PATH",
|
37
|
+
description: "Path to plist file you want to read",
|
38
|
+
optional: false,
|
39
|
+
verify_block: proc do |value|
|
40
|
+
raise "Couldn't find plist file at path '#{value}'".red unless File.exist?(value)
|
41
|
+
end)
|
42
|
+
]
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.output
|
46
|
+
[
|
47
|
+
['GET_INFO_PLIST_VALUE_CUSTOM_VALUE', 'The value of the last plist file that was parsed']
|
48
|
+
]
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.authors
|
52
|
+
["kohtenko"]
|
53
|
+
end
|
54
|
+
|
55
|
+
def self.is_supported?(platform)
|
56
|
+
[:ios, :mac].include? platform
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
data/lib/fastlane/actions/gym.rb
CHANGED
@@ -0,0 +1,61 @@
|
|
1
|
+
module Fastlane
|
2
|
+
module Actions
|
3
|
+
module SharedValues
|
4
|
+
end
|
5
|
+
|
6
|
+
class SetInfoPlistValueAction < Action
|
7
|
+
def self.run(params)
|
8
|
+
require "plist"
|
9
|
+
|
10
|
+
begin
|
11
|
+
path = File.expand_path(params[:path])
|
12
|
+
plist = Plist.parse_xml(path)
|
13
|
+
plist[params[:key]] = params[:value]
|
14
|
+
new_plist = plist.to_plist
|
15
|
+
File.write(path, new_plist)
|
16
|
+
|
17
|
+
return params[:value]
|
18
|
+
rescue => ex
|
19
|
+
Helper.log.error ex
|
20
|
+
Helper.log.error "Unable to set value to plist file at '#{path}'".red
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.description
|
25
|
+
"Sets value to Info.plist of your project as native Ruby data structures"
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.available_options
|
29
|
+
[
|
30
|
+
FastlaneCore::ConfigItem.new(key: :key,
|
31
|
+
env_name: "FL_SET_INFO_PLIST_PARAM_NAME",
|
32
|
+
description: "Name of key in plist",
|
33
|
+
optional: false),
|
34
|
+
FastlaneCore::ConfigItem.new(key: :value,
|
35
|
+
env_name: "FL_SET_INFO_PLIST_PARAM_VALUE",
|
36
|
+
description: "Value to setup",
|
37
|
+
optional: false),
|
38
|
+
FastlaneCore::ConfigItem.new(key: :path,
|
39
|
+
env_name: "FL_SET_INFO_PLIST_PATH",
|
40
|
+
description: "Path to plist file you want to update",
|
41
|
+
optional: false,
|
42
|
+
verify_block: proc do |value|
|
43
|
+
raise "Couldn't find plist file at path '#{value}'".red unless File.exist?(value)
|
44
|
+
end)
|
45
|
+
]
|
46
|
+
end
|
47
|
+
|
48
|
+
def self.output
|
49
|
+
[]
|
50
|
+
end
|
51
|
+
|
52
|
+
def self.authors
|
53
|
+
["kohtenko"]
|
54
|
+
end
|
55
|
+
|
56
|
+
def self.is_supported?(platform)
|
57
|
+
[:ios, :mac].include? platform
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
data/lib/fastlane/version.rb
CHANGED
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.
|
4
|
+
version: 1.22.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-
|
11
|
+
date: 2015-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -84,16 +84,16 @@ dependencies:
|
|
84
84
|
name: xcpretty
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: 0.1.11
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 0.1.11
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: terminal-notifier
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,6 +150,20 @@ dependencies:
|
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: 1.8.0
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: plist
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: 3.1.0
|
160
|
+
type: :runtime
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: 3.1.0
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
168
|
name: fastlane_core
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -216,7 +230,7 @@ dependencies:
|
|
216
230
|
requirements:
|
217
231
|
- - ">="
|
218
232
|
- !ruby/object:Gem::Version
|
219
|
-
version: 0.13.
|
233
|
+
version: 0.13.2
|
220
234
|
- - "<"
|
221
235
|
- !ruby/object:Gem::Version
|
222
236
|
version: 1.0.0
|
@@ -226,7 +240,7 @@ dependencies:
|
|
226
240
|
requirements:
|
227
241
|
- - ">="
|
228
242
|
- !ruby/object:Gem::Version
|
229
|
-
version: 0.13.
|
243
|
+
version: 0.13.2
|
230
244
|
- - "<"
|
231
245
|
- !ruby/object:Gem::Version
|
232
246
|
version: 1.0.0
|
@@ -356,7 +370,7 @@ dependencies:
|
|
356
370
|
requirements:
|
357
371
|
- - ">="
|
358
372
|
- !ruby/object:Gem::Version
|
359
|
-
version: 0.4.
|
373
|
+
version: 0.4.5
|
360
374
|
- - "<"
|
361
375
|
- !ruby/object:Gem::Version
|
362
376
|
version: 1.0.0
|
@@ -366,7 +380,7 @@ dependencies:
|
|
366
380
|
requirements:
|
367
381
|
- - ">="
|
368
382
|
- !ruby/object:Gem::Version
|
369
|
-
version: 0.4.
|
383
|
+
version: 0.4.5
|
370
384
|
- - "<"
|
371
385
|
- !ruby/object:Gem::Version
|
372
386
|
version: 1.0.0
|
@@ -550,6 +564,7 @@ files:
|
|
550
564
|
- lib/fastlane/actions/gcovr.rb
|
551
565
|
- lib/fastlane/actions/get_build_number.rb
|
552
566
|
- lib/fastlane/actions/get_github_release.rb
|
567
|
+
- lib/fastlane/actions/get_info_plist_value.rb
|
553
568
|
- lib/fastlane/actions/get_version_number.rb
|
554
569
|
- lib/fastlane/actions/git_branch.rb
|
555
570
|
- lib/fastlane/actions/git_pull.rb
|
@@ -592,6 +607,7 @@ files:
|
|
592
607
|
- lib/fastlane/actions/set_build_number_repository.rb
|
593
608
|
- lib/fastlane/actions/set_changelog.rb
|
594
609
|
- lib/fastlane/actions/set_github_release.rb
|
610
|
+
- lib/fastlane/actions/set_info_plist_value.rb
|
595
611
|
- lib/fastlane/actions/sigh.rb
|
596
612
|
- lib/fastlane/actions/slack.rb
|
597
613
|
- lib/fastlane/actions/snapshot.rb
|