pem 0.3.8 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/pem +6 -1
- data/lib/pem.rb +0 -1
- data/lib/pem/cert_manager.rb +29 -23
- data/lib/pem/developer_center.rb +2 -6
- data/lib/pem/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 53a49d82dfa51942bda7945a2abe14519aa1628d
|
4
|
+
data.tar.gz: 18add6dbe91bfb711a6277001f2317e7b40b023b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d79b9265d80ad370c50339a890e3aeafbac1ee3a7a7cdf94ab053a48739bb5d7863f423ed8b15d5d77759fd5e8bd4a9f8d89a4d2e258e5762060db51e0151f9f
|
7
|
+
data.tar.gz: 4699b6fa184d3e69bd472e41aa3ee29fc8fbdd82e24c60fcdc3655473004e037ae034a8dd68d926899a97e6f404f4e397f33073da7d1c0c9e83d39fe48cab5fa
|
data/bin/pem
CHANGED
data/lib/pem.rb
CHANGED
data/lib/pem/cert_manager.rb
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
module PEM
|
2
2
|
class CertManager
|
3
|
+
|
4
|
+
attr_accessor :rsa_file, :cert_file, :pem_file, :certificate_type, :passphrase
|
5
|
+
|
3
6
|
# Download the cert, do all kinds of Keychain related things
|
4
7
|
def run
|
5
8
|
# Keychain (security) documentation: https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/security.1.html
|
@@ -9,36 +12,39 @@ module PEM
|
|
9
12
|
|
10
13
|
dev = PEM::DeveloperCenter.new
|
11
14
|
|
12
|
-
cert_file = dev.fetch_cer_file
|
13
|
-
rsa_file = File.join(TMP_FOLDER, 'private_key.key')
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
certificate_type = (PEM.config[:development] ? 'development' : 'production')
|
15
|
+
self.cert_file = dev.fetch_cer_file
|
16
|
+
self.rsa_file = File.join(TMP_FOLDER, 'private_key.key')
|
17
|
+
self.certificate_type = (PEM.config[:development] ? 'development' : 'production')
|
18
|
+
self.pem_file = File.join(TMP_FOLDER, "#{certificate_type}_#{PEM.config[:app_identifier]}.pem")
|
19
|
+
self.passphrase = ''
|
18
20
|
|
19
|
-
|
20
|
-
pem_file = File.join(TMP_FOLDER, "#{certificate_type}_#{PEM.config[:app_identifier]}.pem")
|
21
|
-
command("openssl x509 -inform der -in '#{cert_file}' -out #{pem_temp}")
|
22
|
-
content = File.read(pem_temp) + File.read(rsa_file)
|
23
|
-
File.write(pem_file, content)
|
21
|
+
File.write(pem_file, pem_certificate)
|
24
22
|
|
25
23
|
# Generate p12 file as well
|
26
24
|
if PEM.config[:generate_p12]
|
27
|
-
output = "#{certificate_type}.p12"
|
28
|
-
|
25
|
+
output = "#{certificate_type}_#{PEM.config[:app_identifier]}.p12"
|
26
|
+
File.write(output, p12_certificate.to_der)
|
29
27
|
puts output.green
|
30
28
|
end
|
31
|
-
|
29
|
+
|
32
30
|
return pem_file, rsa_file
|
33
31
|
end
|
34
32
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
33
|
+
def private_key
|
34
|
+
OpenSSL::PKey::RSA.new(File.read(rsa_file))
|
35
|
+
end
|
36
|
+
|
37
|
+
def x509_certificate
|
38
|
+
OpenSSL::X509::Certificate.new(File.read(cert_file))
|
39
|
+
end
|
40
|
+
|
41
|
+
def p12_certificate
|
42
|
+
OpenSSL::PKCS12.create(passphrase, certificate_type, private_key, x509_certificate)
|
43
|
+
end
|
44
|
+
|
45
|
+
def pem_certificate
|
46
|
+
x509_certificate.to_pem + private_key.to_pem
|
47
|
+
end
|
43
48
|
end
|
44
|
-
end
|
49
|
+
end
|
50
|
+
|
data/lib/pem/developer_center.rb
CHANGED
@@ -99,13 +99,9 @@ module PEM
|
|
99
99
|
url = [host, url].join('')
|
100
100
|
Helper.log.info "Downloading URL: '#{url}'"
|
101
101
|
|
102
|
-
|
102
|
+
cookie_string = page.driver.cookies.collect { |key, cookie| "#{cookie.name}=#{cookie.value}" }.join(";")
|
103
103
|
|
104
|
-
|
105
|
-
cookieString << "#{cookie.name}=#{cookie.value};" # append all known cookies
|
106
|
-
end
|
107
|
-
|
108
|
-
data = open(url, {'Cookie' => cookieString}).read
|
104
|
+
data = open(url, {'Cookie' => cookie_string}).read
|
109
105
|
|
110
106
|
raise "Something went wrong when downloading the certificate" unless data
|
111
107
|
|
data/lib/pem/version.rb
CHANGED
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.
|
4
|
+
version: 0.4.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-
|
11
|
+
date: 2015-04-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fastlane_core
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.5.1
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.5.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|