pilot 1.5.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f1e44d1482a75b5b6cc38fb79309233ffc34d106
4
- data.tar.gz: 14bf3e03b9932767897baec443526151ba3cec9d
3
+ metadata.gz: 18283847aff493f6044d42842561aa9ae00ebe56
4
+ data.tar.gz: 4558ba124b83e4049817bb45b54721044b9e4489
5
5
  SHA512:
6
- metadata.gz: b15ccfb0bf04e29a61634a8c66a951e229cf6d7f4fb16dac26fc2c8d986c729f8b0069383406fadaef5cbf7e50d49230a673d87d5d400b4769a71711f269fad7
7
- data.tar.gz: ef9c501eb0a54a5c36b2e1726d554291d872261c05f8027a667f1854ab03edb740a3b1b98afdf9fa9fc08a35e1a34631b9d3d727bf824353bb808a719715b652
6
+ metadata.gz: 47dc64e15d07b0a51d8d59bb0cfe18a5e82df52f9c56bee926f68f325db662227b250d4012605d0fa4ac2a18b0aceecd01c4053dc98482e534c8dcad2253d49d
7
+ data.tar.gz: f2c8b129cf17012e61b31488ce3e382fd644b7f3775ff715982ef168e9b443c3aeb20a509d62f051dbc812f3130990c3e90317dae837bfe2657abc35bb0a5f1f
data/README.md CHANGED
@@ -57,7 +57,7 @@ Get in contact with the developer on Twitter: [@FastlaneTools](https://twitter.c
57
57
 
58
58
  -------
59
59
 
60
- <h5 align="center"><code>pilot</code> is part of <a href="https://fastlane.tools">fastlane</a>: connect all deployment tools into one streamlined workflow.</h5>
60
+ <h5 align="center"><code>pilot</code> is part of <a href="https://fastlane.tools">fastlane</a>: The easiest way to automate building and releasing your iOS and Android apps.</h5>
61
61
 
62
62
  # Installation
63
63
 
@@ -229,7 +229,7 @@ pilot import -c ~/Desktop/testers.csv
229
229
 
230
230
  ## [`fastlane`](https://fastlane.tools) Toolchain
231
231
 
232
- - [`fastlane`](https://fastlane.tools): Connect all deployment tools into one streamlined workflow
232
+ - [`fastlane`](https://fastlane.tools): The easiest way to automate building and releasing your iOS and Android apps
233
233
  - [`deliver`](https://github.com/fastlane/fastlane/tree/master/deliver): Upload screenshots, metadata and your app to the App Store
234
234
  - [`snapshot`](https://github.com/fastlane/fastlane/tree/master/snapshot): Automate taking localized screenshots of your iOS app on every device
235
235
  - [`frameit`](https://github.com/fastlane/fastlane/tree/master/frameit): Quickly put your screenshots into the right device frames
@@ -1,5 +1,6 @@
1
1
  require "fastlane_core"
2
2
  require "pilot/tester_util"
3
+ require 'terminal-table'
3
4
 
4
5
  module Pilot
5
6
  class TesterManager < Manager
@@ -78,36 +79,71 @@ module Pilot
78
79
 
79
80
  def list_testers(options)
80
81
  start(options)
81
- require 'terminal-table'
82
82
 
83
83
  app_filter = (config[:apple_id] || config[:app_identifier])
84
84
  if app_filter
85
- app = Spaceship::Application.find(app_filter)
86
- UI.user_error!("Couldn't find app with '#{app_filter}'") unless app
87
- int_testers = Spaceship::Tunes::Tester::Internal.all_by_app(app.apple_id)
88
- ext_testers = Spaceship::Tunes::Tester::External.all_by_app(app.apple_id)
85
+ list_testers_by_app(app_filter)
89
86
  else
90
- int_testers = Spaceship::Tunes::Tester::Internal.all
91
- ext_testers = Spaceship::Tunes::Tester::External.all
87
+ list_testers_global
92
88
  end
89
+ end
90
+
91
+ # private
92
+
93
+ def list_testers_by_app(app_filter)
94
+ app = Spaceship::Application.find(app_filter)
95
+ UI.user_error!("Couldn't find app with '#{app_filter}'") unless app
93
96
 
94
- list(int_testers, "Internal Testers")
95
- puts "" # new line
96
- list(ext_testers, "External Testers")
97
+ int_testers = Spaceship::Tunes::Tester::Internal.all_by_app(app.apple_id)
98
+ ext_testers = Spaceship::Tunes::Tester::External.all_by_app(app.apple_id)
99
+
100
+ list_by_app(int_testers, "Internal Testers")
101
+ puts ""
102
+ list_by_app(ext_testers, "External Testers")
97
103
  end
98
104
 
99
- private
105
+ def list_testers_global
106
+ int_testers = Spaceship::Tunes::Tester::Internal.all
107
+ ext_testers = Spaceship::Tunes::Tester::External.all
100
108
 
101
- def list(all_testers, title)
102
- rows = []
103
- all_testers.each do |tester|
104
- rows << [tester.first_name, tester.last_name, tester.email, tester.devices.count, tester.full_version, tester.pretty_install_date]
109
+ list_global(int_testers, "Internal Testers")
110
+ puts ""
111
+ list_global(ext_testers, "External Testers")
112
+ end
113
+
114
+ def list_global(all_testers, title)
115
+ headers = ["First", "Last", "Email", "Devices", "Latest Version", "Latest Install Date"]
116
+ list(all_testers, title, headers) do |tester|
117
+ [
118
+ tester.first_name,
119
+ tester.last_name,
120
+ tester.email,
121
+ tester.devices.count,
122
+ tester.full_version,
123
+ tester.pretty_install_date
124
+ ]
125
+ end
126
+ end
127
+
128
+ def list_by_app(all_testers, title)
129
+ headers = ["First", "Last", "Email"]
130
+ list(all_testers, title, headers) do |tester|
131
+ [
132
+ tester.first_name,
133
+ tester.last_name,
134
+ tester.email
135
+ # Testers returned by the query made in the context of an app do not contain
136
+ # the devices, version, or install date information
137
+ ]
105
138
  end
139
+ end
106
140
 
141
+ # Requires a block that accepts a tester and returns an array of tester column values
142
+ def list(all_testers, title, headings)
107
143
  puts Terminal::Table.new(
108
144
  title: title.green,
109
- headings: ["First", "Last", "Email", "Devices", "Latest Version", "Latest Install Date"],
110
- rows: rows
145
+ headings: headings,
146
+ rows: all_testers.map { |tester| yield tester }
111
147
  )
112
148
  end
113
149
 
@@ -1,4 +1,4 @@
1
1
  module Pilot
2
- VERSION = "1.5.0"
2
+ VERSION = "1.5.1"
3
3
  DESCRIPTION = "The best way to manage your TestFlight testers and builds from your terminal"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pilot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-04 00:00:00.000000000 Z
11
+ date: 2016-05-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fastlane_core