pem 0.2.3 → 0.3.0

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: 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: