keylime 0.0.3 → 0.1.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: a81357c7a678f11061991964b11c12e7bdfdd144
4
- data.tar.gz: 72d703f5749bba76f214e23b1670a7d4dc960043
3
+ metadata.gz: a50d84f7194d60ee59f2653314f78b2e03b4e961
4
+ data.tar.gz: 311fe4218068e5e64703e0afc90829d704def173
5
5
  SHA512:
6
- metadata.gz: d2142d8176bd0e05218118caa4e3ecf2b4101ecacfb50250f23c93ce69df9264fb1ae138fc76b64df9f3c64bbd914b6e51fb54cb602aafe8c6cff5a9d0062df2
7
- data.tar.gz: f3645e6405ec6c4854db623d5bdc26eb685da4275f769e917a4ac5ea79e406d5be1d4281a4dd0f30a654a5ac526e0494138f9727f334f9d18e575678a2f848b4
6
+ metadata.gz: 54ac17b13a3842ca56097b4cbe84437d764809a3f64f7b6f4752209bfaa31251e6543054b634035f6879ed4aa9ca1f89a31d24ae836b229ccefa26f1a8233271
7
+ data.tar.gz: b5d9aad7a118e10c2beb6a3253679f0128cd6a5e14b5b2f6eaa9cc8f2aa7d00fccdc5d159a9e9a5c5853fe8dc276b30af4d0613d3b7f6aa07e000b31c81cfc56
data/.circle-ruby ADDED
@@ -0,0 +1,3 @@
1
+ 2.4.1
2
+ 2.3.4
3
+ 2.2.7
data/.rubocop.yml CHANGED
@@ -1,2 +1,4 @@
1
1
  Encoding:
2
2
  Enabled: false
3
+ Metrics/BlockLength:
4
+ Enabled: false
data/README.md CHANGED
@@ -3,7 +3,7 @@ keylime
3
3
 
4
4
  [![Gem Version](https://img.shields.io/gem/v/keylime.svg)](https://rubygems.org/gems/keylime)
5
5
  [![Dependency Status](https://img.shields.io/gemnasium/akerl/keylime.svg)](https://gemnasium.com/akerl/keylime)
6
- [![Build Status](https://img.shields.io/circleci/project/akerl/keylime.svg)](https://circleci.com/gh/akerl/keylime)
6
+ [![Build Status](https://img.shields.io/circleci/project/akerl/keylime/master.svg)](https://circleci.com/gh/akerl/keylime)
7
7
  [![Coverage Status](https://img.shields.io/codecov/c/github/akerl/keylime.svg)](https://codecov.io/github/akerl/keylime)
8
8
  [![Code Quality](https://img.shields.io/codacy/b84e51f348094a33b2982bfb73adc645.svg)](https://www.codacy.com/app/akerl/keylime)
9
9
  [![MIT Licensed](https://img.shields.io/badge/license-MIT-green.svg)](https://tldrlegal.com/license/mit-license)
data/circle.yml CHANGED
@@ -1,12 +1,7 @@
1
1
  dependencies:
2
2
  override:
3
- - 'rvm-exec 1.9.3-p551 bundle install'
4
- - 'rvm-exec 2.0.0-p645 bundle install'
5
- - 'rvm-exec 2.1.6 bundle install'
6
- - 'rvm-exec 2.2.2 bundle install'
3
+ - 'for i in $(cat .circle-ruby) ; do rvm-exec $i gem update --system --no-doc || exit 1 ; done'
4
+ - 'for i in $(cat .circle-ruby) ; do rvm-exec $i bundle install || exit 1 ; done'
7
5
  test:
8
6
  override:
9
- - 'rvm-exec 1.9.3-p551 bundle exec rake'
10
- - 'rvm-exec 2.0.0-p645 bundle exec rake'
11
- - 'rvm-exec 2.1.6 bundle exec rake'
12
- - 'rvm-exec 2.2.2 bundle exec rake'
7
+ - 'for i in $(cat .circle-ruby) ; do rvm-exec $i bundle exec rake || exit 1 ; done'
data/keylime.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'keylime'
3
- s.version = '0.0.3'
3
+ s.version = '0.1.0'
4
4
  s.date = Time.now.strftime('%Y-%m-%d')
5
5
 
6
6
  s.summary = 'Simple wrapper for using Mac Keychain'
@@ -16,9 +16,9 @@ Gem::Specification.new do |s|
16
16
  s.add_dependency 'ruby-keychain', '~> 0.3.0'
17
17
  s.add_dependency 'userinput', '~> 1.0.0'
18
18
 
19
- s.add_development_dependency 'rubocop', '~> 0.39.0'
20
- s.add_development_dependency 'rake', '~> 11.1.0'
19
+ s.add_development_dependency 'rubocop', '~> 0.49.0'
20
+ s.add_development_dependency 'rake', '~> 12.0.0'
21
21
  s.add_development_dependency 'codecov', '~> 0.1.1'
22
- s.add_development_dependency 'rspec', '~> 3.4.0'
23
- s.add_development_dependency 'fuubar', '~> 2.0.0'
22
+ s.add_development_dependency 'rspec', '~> 3.6.0'
23
+ s.add_development_dependency 'fuubar', '~> 2.2.0'
24
24
  end
@@ -1,17 +1,22 @@
1
- require 'keychain'
2
1
  require 'userinput'
3
2
 
4
3
  module Keylime
4
+ ENABLED = begin
5
+ require 'keychain'
6
+ true
7
+ rescue LoadError
8
+ raise if RUBY_PLATFORM =~ /darwin/
9
+ false
10
+ end
11
+
5
12
  ##
6
13
  # Easy wrapper around getting and setting secrets
7
14
  class Credential
8
15
  def initialize(params = {})
9
16
  @options = params
10
- @enabled = RUBY_PLATFORM =~ /darwin/ || ENV['CI']
11
17
  end
12
18
 
13
19
  def get
14
- return unless @enabled
15
20
  keychain_segment.where(@options).first
16
21
  end
17
22
 
@@ -41,11 +46,10 @@ module Keylime
41
46
  end
42
47
 
43
48
  def keychain
44
- @keychain ||= if @options[:keychain]
45
- Keychain.open(@options[:keychain])
46
- else
47
- Keychain
48
- end
49
+ return @keychain if @keychain
50
+ @keychain = StubKeychain.new unless Keylime::ENABLED
51
+ @keychain ||= Keychain.open(@options[:keychain]) if @options[:keychain]
52
+ @keychain ||= Keychain
49
53
  end
50
54
 
51
55
  def key_type
@@ -56,4 +60,24 @@ module Keylime
56
60
  @keychain_segment ||= keychain.send(key_type)
57
61
  end
58
62
  end
63
+
64
+ ##
65
+ # Stub keychain for if keylime is running on a non-Mac
66
+ class StubKeychain
67
+ def segment
68
+ StubKeychainSegment.new
69
+ end
70
+ alias internet_passwords segment
71
+ alias generic_passwords segment
72
+ end
73
+
74
+ ##
75
+ # Stub segment for if keylime is running on a non-Mac
76
+ class StubKeychainSegment
77
+ def where
78
+ []
79
+ end
80
+
81
+ def create() end
82
+ end
59
83
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: keylime
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Les Aker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-29 00:00:00.000000000 Z
11
+ date: 2017-06-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby-keychain
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.39.0
47
+ version: 0.49.0
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.39.0
54
+ version: 0.49.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 11.1.0
61
+ version: 12.0.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 11.1.0
68
+ version: 12.0.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: codecov
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -86,34 +86,35 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 3.4.0
89
+ version: 3.6.0
90
90
  type: :development
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: 3.4.0
96
+ version: 3.6.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: fuubar
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 2.0.0
103
+ version: 2.2.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 2.0.0
110
+ version: 2.2.0
111
111
  description: Simple wrapper for using Mac Keychain
112
112
  email: me@lesaker.org
113
113
  executables: []
114
114
  extensions: []
115
115
  extra_rdoc_files: []
116
116
  files:
117
+ - ".circle-ruby"
117
118
  - ".gitignore"
118
119
  - ".prospectus"
119
120
  - ".rspec"
@@ -150,7 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
151
  version: '0'
151
152
  requirements: []
152
153
  rubyforge_project:
153
- rubygems_version: 2.5.1
154
+ rubygems_version: 2.6.11
154
155
  signing_key:
155
156
  specification_version: 4
156
157
  summary: Simple wrapper for using Mac Keychain