blob: 9c03000993398245b8f4ada786c3e97d5ecad7ba (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
#!/bin/bash
#
# Common functions.
#
# Load a parameter from config
function keyringer_config {
if [ -z "$CONFIG" ]; then
echo "Your have to set CONFIG variable in the code"
exit 1
elif [ -e "$CONFIG" ]; then
grep -e "^$1=" $CONFIG | tail -n 1 | cut -d = -f 2 | sed -e 's/"//g' -e "s/'//g" | sed -e 's/ *#.*$//'
else
echo "Config file not found: $CONFIG"
exit 1
fi
}
# Return the list of recipients
function keyringer_recipients {
grep -v '^#' $1 | grep -v '^$' | awk '{ print "-r " $2 }' | xargs
}
# Check if keyringer has a given action
function keyringer_has_action {
if [ -z "$ACTIONS" ]; then
echo "Your have to set ACTIONS variable in the code"
exit 1
fi
if [ -e "$ACTIONS/$1" ]; then
true
else
false
fi
}
# Execute an action
function keyringer_exec {
# Setup
action="$1"
basedir="$2"
shift 2
# Dispatch
if keyringer_has_action $action; then
$ACTIONS/$action $basedir $*
fi
}
# Return a filename with correct extension
function keyringer_filename {
echo `dirname $1`/`basename $1 .gpg`.gpg
}
# Check if a folder is inside a git repository
function keyringer_is_git {
if [ -z "$1" ]; then
false
elif [ ! -d "$1" ]; then
false
elif [ -d "$1/.git" ]; then
true
else
cwd="`pwd`"
cd $1 && git="`git status &> /dev/null`" && cd $cwd
if [ "$git" != "128" ]; then
true
else
false
fi
fi
}
|