kbsecret 0.0.5 → 0.0.6

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: 14ff1ea30d05bfb741dbd26c342e59469fb621f9
4
- data.tar.gz: 886a9e0d89d256e232ec5d20cbb4a53bccb2e358
3
+ metadata.gz: e96b2bfdcb0a05cae3d0af2eb9801f4444c8b4b6
4
+ data.tar.gz: 5323428293f3587844078763eeac1678b6e833d8
5
5
  SHA512:
6
- metadata.gz: 3cce5f4d1f5a605a5e079704387f887f30469b3107e1002efc72ff705184148c6fe242604570a083bd4f20c119b8719f36b92451816315511c1880e3941ca2a9
7
- data.tar.gz: ac239cf8b83d4e8a4012e4de40da5a52449a9bc178fb3ed8ee759ac204a769933cf0adefcdc82d18340559c853c835f7f47e050569b006934575072ad3909ba8
6
+ metadata.gz: 4e92fcc675e2de10bdbcfaed6940e6d000eaeef17157b939fe62f536ea988e2e4eda0721976bc9ea452d2dbd9454ba1a548a5154d71e2a380a1571a12f101c6b
7
+ data.tar.gz: b9073b8a258e450c4200c1ed0f909c33af364a5e75e4e05543cdd0c3480346ce2c5e3ee5c7dbe6dfb45e0b93d36819b3afb11ee999cc0e372f81779b4da7f34f
data/bin/kbsecret-list CHANGED
@@ -12,6 +12,7 @@ opts = Slop.parse suppress_errors: true do |o|
12
12
  EOS
13
13
 
14
14
  o.string "-s", "--session", "the session name", default: :default
15
+ o.string "-t", "--type", "the type of secrets to list", default: :all
15
16
  o.bool "-a", "--show-all", "show everything in each secret (i.e. metadata)"
16
17
 
17
18
  o.on "-h", "--help" do
@@ -28,7 +29,13 @@ end
28
29
 
29
30
  session = KBSecret::Session.new label: sess_name
30
31
 
31
- session.records.each do |record|
32
+ if opts[:type] != :all
33
+ records = session.records.select { |r| r.type == opts[:type] }
34
+ else
35
+ records = session.records
36
+ end
37
+
38
+ records.each do |record|
32
39
  line = "#{record.label}\n"
33
40
  line << <<~EOS if opts.show_all?
34
41
  \tType: #{record.type}
@@ -0,0 +1,43 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "kbsecret"
4
+ require "slop"
5
+
6
+ opts = Slop.parse suppress_errors: true do |o|
7
+ o.banner = <<~EOS
8
+ Edit the raw JSON of a record in $EDITOR.
9
+
10
+ Usage:
11
+ kbsecret raw-edit [--session <name>] <label1...>
12
+
13
+ Examples:
14
+ kbsecret raw-edit gmail
15
+ EOS
16
+
17
+ o.string "-s", "--session", "the session name", default: :default
18
+
19
+ o.on "-h", "--help" do
20
+ puts o
21
+ exit
22
+ end
23
+ end
24
+
25
+ sess_name = opts[:session]
26
+
27
+ unless ENV["EDITOR"]
28
+ abort "Fatal: $EDITOR is not set."
29
+ end
30
+
31
+ unless KBSecret::Config.session? sess_name
32
+ abort "Fatal: Unknown session: '#{sess_name}'."
33
+ end
34
+
35
+ session = KBSecret::Session.new label: sess_name
36
+ label = opts.args.shift
37
+ record = session.records.find { |r| r.label == label}
38
+
39
+ if record
40
+ `#{ENV["EDITOR"]} #{record.path}`
41
+ else
42
+ abort "Fatal: No such record."
43
+ end
data/lib/kbsecret.rb CHANGED
@@ -8,7 +8,7 @@ require_relative "kbsecret/session"
8
8
  # The primary namespace for kbsecret.
9
9
  module KBSecret
10
10
  # kbsecret's current version
11
- VERSION = "0.0.5".freeze
11
+ VERSION = "0.0.6".freeze
12
12
 
13
13
  # fail very early if the user doesn't have keybase and KBFS running
14
14
  raise Keybase::KeybaseNotRunningError unless Keybase.running?
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kbsecret
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - William Woodruff
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-25 00:00:00.000000000 Z
11
+ date: 2017-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: keybase-unofficial
@@ -73,6 +73,7 @@ executables:
73
73
  - kbsecret
74
74
  - kbsecret-rm
75
75
  - kbsecret-login
76
+ - kbsecret-raw-edit
76
77
  - kbsecret-new
77
78
  - kbsecret-env
78
79
  - kbsecret-new-session
@@ -91,6 +92,7 @@ files:
91
92
  - bin/kbsecret-new
92
93
  - bin/kbsecret-new-session
93
94
  - bin/kbsecret-pass
95
+ - bin/kbsecret-raw-edit
94
96
  - bin/kbsecret-rm
95
97
  - bin/kbsecret-sessions
96
98
  - lib/kbsecret.rb