aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/backend.rb2
-rw-r--r--lib/backend/git.rb32
-rw-r--r--lib/keyringer/actions/decrypt.rb6
-rw-r--r--lib/keyringer/actions/init.rb5
4 files changed, 42 insertions, 3 deletions
diff --git a/lib/backend.rb b/lib/backend.rb
index 953ca8d..6275bcb 100644
--- a/lib/backend.rb
+++ b/lib/backend.rb
@@ -21,9 +21,11 @@
# gems
require 'rubygems'
require 'parseconfig'
+require 'git'
# internal requires
$:.unshift File.dirname(__FILE__)
+require 'backend/git'
require 'backend/crypt'
require 'backend/recipients_store'
require 'backend/parse_config'
diff --git a/lib/backend/git.rb b/lib/backend/git.rb
new file mode 100644
index 0000000..177657b
--- /dev/null
+++ b/lib/backend/git.rb
@@ -0,0 +1,32 @@
+#!/usr/bin/env ruby
+#
+# Keyringer secret management system.
+#
+# Copyright (C) 2011 Keyringer Development Team.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+module Backend
+ class Git
+ def open(path)
+ begin
+ @git = ::Git.open(path)
+ rescue Exception => e
+ puts "Cannot open #{path}"
+ false
+ end
+ end
+ end
+end
diff --git a/lib/keyringer/actions/decrypt.rb b/lib/keyringer/actions/decrypt.rb
index f76dcc9..33f01c2 100644
--- a/lib/keyringer/actions/decrypt.rb
+++ b/lib/keyringer/actions/decrypt.rb
@@ -22,10 +22,10 @@ module Keyringer
module Actions
class Decrypt
def execute
- filename = $args[0]
+ path = Keyring::UserConfig.instance.path
+ filename = path + '/keys/' + $args[0] + '.asc'
crypt = Keyring::Crypt.new
- output = crypt.decrypt(filename)
- return output
+ crypt.decrypt(filename)
end
end
end
diff --git a/lib/keyringer/actions/init.rb b/lib/keyringer/actions/init.rb
index 1aa6de1..d48abbf 100644
--- a/lib/keyringer/actions/init.rb
+++ b/lib/keyringer/actions/init.rb
@@ -22,6 +22,11 @@ module Keyringer
module Actions
class Init
def initialize
+ path = Keyring::UserConfig.instance.path
+ Backend::Git.new
+ end
+
+ def execute
end
end
end