aboutsummaryrefslogtreecommitdiff
path: root/bin/keyringer
diff options
context:
space:
mode:
Diffstat (limited to 'bin/keyringer')
-rwxr-xr-xbin/keyringer32
1 files changed, 24 insertions, 8 deletions
diff --git a/bin/keyringer b/bin/keyringer
index d6ab3d4..098719b 100755
--- a/bin/keyringer
+++ b/bin/keyringer
@@ -1,19 +1,33 @@
#!/usr/bin/env ruby
-
+#
+# Keyringer key 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/>.
+#
# TODO
# - a lot of things
-def usage
- puts "Usage:
-#{File.basename($0)} TODO! "
- exit 1
-end
-
$:.unshift File.dirname(__FILE__) + '/../lib'
require 'keyringer'
+
begin
+ Keyringer::Parser.new
+ puts "Performing action #{$action.capitalize}"
begin
- action = Keyringer.const_get(ARGV[1].capitalize)
+ action = Keyringer::Actions.const_get($action.capitalize)
rescue NameError
wrapper = Keyringer::BashWrapper.new
wrapper.execute
@@ -28,6 +42,8 @@ rescue SystemExit => e
exit e.status
rescue Exception => e
puts "Fatal error: #{e.inspect}"
+ puts e.backtrace.join("\n")
+
exit 1
end