|
@@ -46,7 +46,9 @@ _get_dst() {
|
46
|
46
|
#
|
47
|
47
|
local grp=$1
|
48
|
48
|
local src=$2
|
49
|
|
- echo "$(_get_root "$grp")/$(ini 1value "files:$grp:$src")"
|
|
49
|
+ local dst=$3
|
|
50
|
+ test -n "$dst" || dst=${src##*/}
|
|
51
|
+ echo "$(_get_root "$grp")/$dst"
|
50
|
52
|
}
|
51
|
53
|
|
52
|
54
|
_get_root() {
|
|
@@ -83,14 +85,16 @@ install() {
|
83
|
85
|
# Install product
|
84
|
86
|
#
|
85
|
87
|
local dst group mode src
|
86
|
|
- ini values "lists:group" \
|
|
88
|
+ ini lskeys "files" \
|
|
89
|
+ | sort \
|
|
90
|
+ | uniq \
|
87
|
91
|
| while read group;
|
88
|
92
|
do
|
89
|
93
|
mode=$(ini 1value "modes:$group")
|
90
|
|
- ini lskeys "files:$group" \
|
91
|
|
- | while read src;
|
|
94
|
+ ini values "files:$group" \
|
|
95
|
+ | while read src dst;
|
92
|
96
|
do
|
93
|
|
- dst=$(_get_dst "$group" "$src")
|
|
97
|
+ dst=$(_get_dst "$group" "$src" "$dst")
|
94
|
98
|
_deploy_item "$src" "$dst" "$mode"
|
95
|
99
|
done
|
96
|
100
|
done
|
|
@@ -103,13 +107,15 @@ uninstall() {
|
103
|
107
|
# Uninstall product
|
104
|
108
|
#
|
105
|
109
|
local dst group src
|
106
|
|
- ini values "lists:group" \
|
|
110
|
+ ini lskeys "files" \
|
|
111
|
+ | sort \
|
|
112
|
+ | uniq \
|
107
|
113
|
| while read group;
|
108
|
114
|
do
|
109
|
|
- ini lskeys "files:$group" \
|
110
|
|
- | while read src;
|
|
115
|
+ ini values "files:$group" \
|
|
116
|
+ | while read src dst;
|
111
|
117
|
do
|
112
|
|
- dst=$(_get_dst "$group" "$src")
|
|
118
|
+ dst=$(_get_dst "$group" "$src" "$dst")
|
113
|
119
|
_maybe rm -vrf "$dst"
|
114
|
120
|
done
|
115
|
121
|
done
|