summaryrefslogtreecommitdiff
path: root/lib/keyringer/actions/encrypt
diff options
context:
space:
mode:
Diffstat (limited to 'lib/keyringer/actions/encrypt')
-rwxr-xr-xlib/keyringer/actions/encrypt18
1 files changed, 17 insertions, 1 deletions
diff --git a/lib/keyringer/actions/encrypt b/lib/keyringer/actions/encrypt
index 11db62c..1256374 100755
--- a/lib/keyringer/actions/encrypt
+++ b/lib/keyringer/actions/encrypt
@@ -95,9 +95,14 @@ if [ "$UNENCRYPTED_FILE" != "-" ] && [ -d "$UNENCRYPTED_FILE" ]; then
# Time to go recursive
BASEPATH="`basename $FILE .asc`"
FILEPATH="`dirname "$UNENCRYPTED_FILE"`"
+
+ if [ "$FILEPATH" == "." ]; then
+ FILEPATH="$(cd `dirname "$UNENCRYPTED_FILE"` &> /dev/null & pwd)"
+ fi
+
find $UNENCRYPTED_FILE | while read file; do
if [ ! -d "$file" ]; then
- dir="`dirname "$file" | sed -e "s|^$FILEPATH|$BASEPATH|g"`"
+ dir="`dirname "$file" | sed -e "s|^$UNENCRYPTED_FILE|$BASEPATH|" -e "s|^$FILEPATH|$BASEPATH|"`"
keyringer_get_new_file `basename "$file"`
keyringer_encrypt "$dir/$FILE" $file
fi
@@ -124,5 +129,16 @@ if [ -d "$BASEDIR/.git" ]; then
keyringer_exec git "$BASEDIR" add "keys/$FILE"
fi
+# Optional commit depending on the value of this setting
+if [ "$COMMIT_AFTER_ENCRYPT" == "yes" ]; then
+ FILE="`echo $FILE | sed -e 's|/./||'`"
+ echo Changes for keys/$FILE | keyringer_exec git "$BASEDIR" commit -F -
+fi
+
+# Optional push depending on the value of this setting
+if [ "$PUSH_AFTER_ENCRYPT" == "yes" ]; then
+ keyringer_exec git "$BASEDIR" push
+fi
+
# Done
exit "$?"