pem 0.2.3 → 0.3.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: 15172a7853a4ce1f52abd5c16f18bbc6ea5de072
4
- data.tar.gz: a7d6bdd8ec40eafc0040db4944bc76737548bfb8
3
+ metadata.gz: 8fc19714bc242012832215934e264482b7975d74
4
+ data.tar.gz: 400fe9cf403ec11b531ae781398d91452e2e4a5c
5
5
  SHA512:
6
- metadata.gz: fe57a4744f64c10597b4cc3cf661aae7f6c68b3d111e74bd35b60763064975a87bc20725d0ab4faa27a2a7454ee62f3011efcae5d91d55178618964b0011b124
7
- data.tar.gz: 143f0012b48148f1117ca663b7a06c75d161d3c4bd1361640f56210831578a7c512750cb1750547ab84a8fa8391ed7c55b5f2066965f9381aabde8dedfcf0029
6
+ metadata.gz: 6c027708274cd3614282aff3451340fccf8bcea5e2f785b4f0f9e62597d7d0f2ca3e153743672907eec56184259656b471e023c315ea47d3eb188febcb9d6156
7
+ data.tar.gz: ec63a4e73973e37c7da00d698d3894e576c194a5781da3b7ac77730fce4a39bf62cf5b33ce3aeb84f1c37dc973a75a502c6adf907818e8a0f83487e8d1198412
data/README.md CHANGED
@@ -1,9 +1,16 @@
1
+ <h3 align="center">
2
+ <a href="https://github.com/KrauseFx/fastlane">
3
+ <img src="assets/fastlane.png" width="150" />
4
+ <br />
5
+ fastlane
6
+ </a>
7
+ </h3>
1
8
  <p align="center">
2
- <a href="https://github.com/KrauseFx/deliver">Deliver</a> &bull;
3
- <a href="https://github.com/KrauseFx/snapshot">Snapshot</a> &bull;
4
- <a href="https://github.com/KrauseFx/frameit">FrameIt</a> &bull;
5
- <b>PEM</b> &bull;
6
- <a href="https://github.com/KrauseFx/sigh">Sigh</a>
9
+ <a href="https://github.com/KrauseFx/deliver">deliver</a> &bull;
10
+ <a href="https://github.com/KrauseFx/snapshot">snapshot</a> &bull;
11
+ <a href="https://github.com/KrauseFx/frameit">frameit</a> &bull;
12
+ <b>PEM</b> &bull;
13
+ <a href="https://github.com/KrauseFx/sigh">sigh</a>
7
14
  </p>
8
15
  -------
9
16
 
@@ -11,7 +18,7 @@
11
18
  <img src="assets/pem.png">
12
19
  </p>
13
20
 
14
- Pem - Maintain your push certificates
21
+ PEM - Maintain your push certificates
15
22
  ============
16
23
 
17
24
  [![Twitter: @KauseFx](https://img.shields.io/badge/contact-@KrauseFx-blue.svg?style=flat)](https://twitter.com/KrauseFx)
@@ -80,7 +87,7 @@ This does the following:
80
87
 
81
88
  You can pass parameters like this:
82
89
 
83
- pem -a at.felixkrause.app -u username
90
+ pem -a com.krausefx.app -u username
84
91
 
85
92
  If you want to generate a development certificate instead:
86
93
 
@@ -105,12 +112,14 @@ There are 2 actions involved:
105
112
  ```PEM``` uses the password manager from [```Deliver```](https://github.com/KrauseFx/deliver#can-i-trust-deliver). Take a look the [Deliver README](https://github.com/KrauseFx/deliver#can-i-trust-deliver) for more information.
106
113
 
107
114
  # Tips
108
- ## Other helpful tools
109
- Check out other tools in this collection to speed up your deployment process:
110
- - [```deliver```](https://github.com/KrauseFx/deliver): Deploy screenshots, app metadata and app updates to the App Store using just one command
111
- - [```snapshot```](https://github.com/KrauseFx/snapshot): Create hundreds of screenshots of your iPhone app... while doing something else
112
- - [```FrameIt```](https://github.com/KrauseFx/frameit): Want a device frame around your screenshot? Do it in an instant!
113
- - [```sigh```](https://github.com/KrauseFx/sigh): Because you would rather spend your time building stuff than fighting provisioning
115
+
116
+ ## [`fastlane`](http://fastlane.tools) Toolchain
117
+
118
+ - [`fastlane`](http://fastlane.tools): Connect all deployment tools into one streamlined workflow
119
+ - [`deliver`](https://github.com/KrauseFx/deliver): Upload screenshots, metadata and your app to the App Store using a single command
120
+ - [`snapshot`](https://github.com/KrauseFx/snapshot): Automate taking localized screenshots of your iOS app on every device
121
+ - [`frameit`](https://github.com/KrauseFx/frameit): Quickly put your screenshots into the right device frames
122
+ - [`sigh`](https://github.com/KrauseFx/sigh): Because you would rather spend your time building stuff than fighting provisioning
114
123
 
115
124
  ## Use the 'Provisioning Quicklook plugin'
116
125
  Download and install the [Provisioning Plugin](https://github.com/chockenberry/Provisioning).
data/bin/pem CHANGED
@@ -4,16 +4,17 @@ $:.push File.expand_path("../../lib", __FILE__)
4
4
 
5
5
  require 'pem'
6
6
  require 'commander/import'
7
- require 'deliver/password_manager'
7
+ require 'credentials_manager/password_manager'
8
+ require 'credentials_manager/appfile_config'
8
9
 
9
10
  HighLine.track_eof = false
10
11
 
11
12
 
12
13
  # Commander
13
14
  program :version, PEM::VERSION
14
- program :description, 'CLI for \'PEM\' - Automate maintaining of push notification profiles.'
15
- program :help, 'Author', 'Felix Krause <krausefx@gmail.com>'
16
- program :help, 'Website', 'http://felixkrause.at'
15
+ program :description, 'CLI for \'PEM\' - Automatically generate and renew your push notification profiles'
16
+ program :help, 'Author', 'Felix Krause <pem@krausefx.com>'
17
+ program :help, 'Website', 'http://fastlane.tools'
17
18
  program :help, 'GitHub', 'https://github.com/krausefx/PEM'
18
19
  program :help_formatter, :compact
19
20
 
@@ -46,15 +47,17 @@ end
46
47
  default_command :renew
47
48
 
48
49
  def username(options)
49
- user = nil
50
- user = options.username if options.username
51
- user = ENV["PEM_USERNAME"] if ENV["PEM_USERNAME"]
50
+ user = options.username
51
+ user ||= ENV["PEM_USERNAME"]
52
+ user ||= CredentialsManager::AppfileConfig.try_fetch_value(:apple_id)
52
53
 
53
- Deliver::PasswordManager.shared_manager(user) if user
54
+ CredentialsManager::PasswordManager.shared_manager(user) if user
54
55
  end
55
56
 
56
57
  def app_identifier(options)
57
- return options.identifier if options.identifier
58
- return ENV["PEM_APP_IDENTIFIER"] if ENV["PEM_APP_IDENTIFIER"]
59
- return ask("App Identifier (Bundle ID, e.g. at.felixkrause.app): ")
58
+ value = options.identifier
59
+ value ||= ENV["PEM_APP_IDENTIFIER"]
60
+ value ||= CredentialsManager::AppfileConfig.try_fetch_value(:app_identifier)
61
+ value ||= ask("App Identifier (Bundle ID, e.g. com.krausefx.app): ")
62
+ return value
60
63
  end
@@ -1,4 +1,4 @@
1
- require 'deliver/password_manager'
1
+ require 'credentials_manager/password_manager'
2
2
  require 'open-uri'
3
3
  require 'openssl'
4
4
 
@@ -52,7 +52,7 @@ module PEM
52
52
 
53
53
  # Loggs in a user with the given login data on the Dev Center Frontend.
54
54
  # You don't need to pass a username and password. It will
55
- # Automatically be fetched using the {Deliver::PasswordManager}.
55
+ # Automatically be fetched using the {CredentialsManager::PasswordManager}.
56
56
  # This method will also automatically be called when triggering other
57
57
  # actions like {#open_app_page}
58
58
  # @param user (String) (optional) The username/email address
@@ -65,8 +65,8 @@ module PEM
65
65
  begin
66
66
  Helper.log.info "Login into iOS Developer Center"
67
67
 
68
- user ||= Deliver::PasswordManager.shared_manager.username
69
- password ||= Deliver::PasswordManager.shared_manager.password
68
+ user ||= CredentialsManager::PasswordManager.shared_manager.username
69
+ password ||= CredentialsManager::PasswordManager.shared_manager.password
70
70
 
71
71
  result = visit DEVELOPER_CENTER_URL
72
72
  raise "Could not open Developer Center" unless result['status'] == 'success'
@@ -109,7 +109,7 @@ module PEM
109
109
 
110
110
  all("#saveTeamSelection_saveTeamSelection").first.click
111
111
  end
112
- rescue Exception => ex
112
+ rescue => ex
113
113
  Helper.log.debug ex
114
114
  raise DeveloperCenterLoginError.new("Error loggin in user #{user}. User is on multiple teams and we were unable to correctly retrieve them.")
115
115
  end
@@ -117,7 +117,7 @@ module PEM
117
117
  begin
118
118
 
119
119
  wait_for_elements('#aprerelease')
120
- rescue Exception => ex
120
+ rescue => ex
121
121
  Helper.log.debug ex
122
122
  raise DeveloperCenterLoginError.new("Error logging in user #{user} with the given password. Make sure you entered them correctly.")
123
123
  end
@@ -125,7 +125,7 @@ module PEM
125
125
  Helper.log.info "Login successful"
126
126
 
127
127
  true
128
- rescue Exception => ex
128
+ rescue => ex
129
129
  error_occured(ex)
130
130
  end
131
131
  end
@@ -170,7 +170,7 @@ module PEM
170
170
  else
171
171
  raise DeveloperCenterGeneralError.new("Could not find app with identifier '#{app_identifier}' on apps page.")
172
172
  end
173
- rescue Exception => ex
173
+ rescue => ex
174
174
  error_occured(ex)
175
175
  end
176
176
  end
@@ -25,7 +25,7 @@ module PEM
25
25
  if latest and Gem::Version.new(latest) > Gem::Version.new(current_version)
26
26
  return true
27
27
  end
28
- rescue Exception => ex
28
+ rescue => ex
29
29
  Helper.log.error("Could not check if 'PEM' is up to date.")
30
30
  end
31
31
  return false
data/lib/pem/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module PEM
2
- VERSION = "0.2.3"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.3.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-01-06 00:00:00.000000000 Z
11
+ date: 2015-01-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -67,7 +67,7 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: 4.2.0
69
69
  - !ruby/object:Gem::Dependency
70
- name: deliver
70
+ name: credentials_manager
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - '>='
@@ -206,8 +206,7 @@ dependencies:
206
206
  - - '>='
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0'
209
- description: Tired of creating and maintaining your push certification profiles? PEM
210
- helps you creating and maintaining your iOS push notification certificates.
209
+ description: Automatically generate and renew your push notification profiles
211
210
  email:
212
211
  - pem@krausefx.com
213
212
  executables:
@@ -226,7 +225,7 @@ files:
226
225
  - lib/pem/signing_request.rb
227
226
  - lib/pem/update_checker.rb
228
227
  - lib/pem/version.rb
229
- homepage: http://krausefx.com
228
+ homepage: http://fastlane.tools
230
229
  licenses:
231
230
  - MIT
232
231
  metadata: {}
@@ -250,7 +249,6 @@ rubyforge_project:
250
249
  rubygems_version: 2.2.2
251
250
  signing_key:
252
251
  specification_version: 4
253
- summary: Tired of creating and maintaining your push certification profiles? PEM does
254
- all that for you.
252
+ summary: Automatically generate and renew your push notification profiles
255
253
  test_files: []
256
254
  has_rdoc: