summaryrefslogtreecommitdiffstats
path: root/snap/hooks
diff options
context:
space:
mode:
authorOndrej Kubik <ondrej.kubik@canonical.com>2017-06-26 17:04:27 +0000
committerOndrej Kubik <ondrej.kubik@canonical.com>2017-06-27 13:22:52 +0000
commita538c149768ee565ea1b0db3ef8e3bb2a7759da0 (patch)
tree6f3afd2ad16ab2d8bca3467f1f7c71ae95402185 /snap/hooks
parent60495e4765363b95e8e1859406d80c5588062e14 (diff)
downloadwekan-a538c149768ee565ea1b0db3ef8e3bb2a7759da0.tar.gz
wekan-a538c149768ee565ea1b0db3ef8e3bb2a7759da0.tar.bz2
wekan-a538c149768ee565ea1b0db3ef8e3bb2a7759da0.zip
Adding snapcraft build support from source
Signed-off-by: Ondrej Kubik <ondrej.kubik@canonical.com>
Diffstat (limited to 'snap/hooks')
-rwxr-xr-xsnap/hooks/configure32
1 files changed, 32 insertions, 0 deletions
diff --git a/snap/hooks/configure b/snap/hooks/configure
new file mode 100755
index 00000000..1e2b0ec7
--- /dev/null
+++ b/snap/hooks/configure
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+# read wekan config
+. $SNAP/bin/config
+
+# create run dir, we're going to use it for unix socket
+mkdir -p $SNAP_DATA/share
+mkdir -p $SNAP_DATA/shared
+
+# settings were altered by user, safest way to get them applied is to restart service
+
+# TODO: remove this workaround once it's not needed
+# for the moment we can't read settings outside of the hook,
+# so store all settings in helpper script which is then picked by main wrapper
+echo -e "#!/bin/sh\n" > $SETTINGS_FILE
+for key in ${keys[@]}
+do
+ # snappy is picky about key syntax, using mapping
+ MAP_KEY="KEY_$key"
+ if value=$(snapctl get ${!MAP_KEY}); then
+ echo "export $key='$value'" >> $SETTINGS_FILE
+ elif [ -d "${!key}" ]; then
+ # store back value from SETTINGS_FILE
+ echo "export $key='${!key}'" >> $SETTINGS_FILE
+ fi
+done
+
+# set file executable
+chmod 755 $SETTINGS_FILE
+# we can't use snapctl to restart service, may be one day ....
+
+echo "Setting has been updated, restart service."