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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a3688edd276635af01ff6dbde0e3ec6786ab5536
4
- data.tar.gz: ad234477739a849996fff29f8a193095fae7eea3
3
+ metadata.gz: 3b371a243c7eae82d8928efe3bea6048e2bbe4cf
4
+ data.tar.gz: fa37ffd24ef06b8e43f8aed3fdda332abc06ebd8
5
5
  SHA512:
6
- metadata.gz: 99d5d48ba2a9107b87dcfcd571b3ec0a4580976685c0a45ecbed9039fde34840aaa90e13590e2fa0f619576088f350995f1f440d40b116fee916bde2bbad31d7
7
- data.tar.gz: e0941d32fdbf8236d06098f8672fb073260e85adad502adc52a8a505260cfc38795d3e712700c3e01b5f65cc75c17f8283a54d2e8771d373d2e45138cab25ee7
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
- `fastlane` can do a lot for you to automate tedious and time-consuming tasks:
78
-
79
- - Connect all build related iOS tools into one workflow (both `fastlane` tools and third party tools)
80
- - Define different `deployment lanes` for App Store deployment, beta builds or testing.
81
- - Deploy from any computer.
82
- - Write your [own actions](https://github.com/KrauseFx/fastlane/blob/master/docs#extensions) (extensions) to extend the functionality of `fastlane`.
83
- - Store data like the `Bundle Identifier` or your `Apple ID` once and use it across all tools.
84
- - Never remember any difficult commands, just `fastlane`.
85
- - Easy setup, which helps you getting up and running quickly.
86
- - [Shared context](https://github.com/KrauseFx/fastlane/blob/master/docs/Advanced.md#lane-context), which is used to let the different deployment steps communicate with each other.
87
- - Store **everything** in git. Never again lookup the used build commands in the ```Jenkins``` configs.
88
- - Saves you **hours** of preparing app submission, uploading screenshots and deploying the app for each update.
89
- - Very flexible configuration using a fully customizable `Fastfile`.
90
- - Once up and running, you have a fully working **Continuous Delivery** process. Just trigger ```fastlane``` and you're good to go.
91
- - [Jenkins Integration](https://github.com/KrauseFx/fastlane/blob/master/docs/Jenkins.md): Show the output directly in the Jenkins test results.
92
- - Automatically generate a markdown documentation of your lanes based on your `Fastfile`.
93
- - Over 60 built-in integrations available.
94
- - Support for both iOS and Mac OS apps
95
- - Full git and mercurial support
96
-
97
- ##### Take a look at the [fastlane website](https://fastlane.tools) for more information about why and when to use `fastlane`.
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 File.exist?('Gemfile')
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 it founds the Gemfile'
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
@@ -45,7 +45,7 @@ module Fastlane
45
45
  end
46
46
 
47
47
  def self.is_supported?(platform)
48
- platform == :ios
48
+ [:ios, :mac].include? platform
49
49
  end
50
50
  end
51
51
  end
@@ -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
@@ -1,3 +1,3 @@
1
1
  module Fastlane
2
- VERSION = '1.21.0'
2
+ VERSION = '1.22.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.21.0
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-25 00:00:00.000000000 Z
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: '0.1'
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: '0.1'
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.1
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.1
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.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.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