mirror of
https://github.com/wekan/wekan.git
synced 2025-04-23 13:37:09 -04:00
splitting hooks and using snapctl instead of local settings file
Signed-off-by: Ondrej Kubik <ondrej.kubik@canonical.com>
This commit is contained in:
parent
f7fe44fcdf
commit
3665a9131c
4 changed files with 27 additions and 52 deletions
|
@ -3,34 +3,18 @@
|
|||
# read wekan config
|
||||
source $SNAP/bin/config
|
||||
|
||||
# TODO: uncomment following, once snapctl can be called from outside the hooks
|
||||
# for key in ${keys[@]}
|
||||
# do
|
||||
# # snappy is picky about key syntax, using mapping
|
||||
# MAP_KEY="KEY_$key"
|
||||
# SNAPPY_KEY=
|
||||
# if value=$(snapctl get ${!MAP_KEY}); then
|
||||
# echo "$key='$value'"
|
||||
# export $key=$value
|
||||
# else
|
||||
# # use default value
|
||||
# default_value="DEFAULT_$key"
|
||||
# echo "using default value: $key='${!default_value}'"
|
||||
# export $key=${!default_value}
|
||||
# fi
|
||||
# done
|
||||
|
||||
# TODO: get rid of this workaround once above can be used
|
||||
# loop through all values, and if not defined, use default value
|
||||
for key in ${keys[@]}
|
||||
do
|
||||
if [ "x" == "x${!key}" ]; then
|
||||
# use default value
|
||||
default_value="DEFAULT_$key"
|
||||
echo "using default value: $key='${!default_value}'"
|
||||
export $key=${!default_value}
|
||||
# echo "export $key='${!def_value}'" >> $SETTINGS_FILE
|
||||
else
|
||||
echo "$key='${!key}'"
|
||||
fi
|
||||
default_value="DEFAULT_$key"
|
||||
description="DESCRIPTION_$key"
|
||||
snappy_key="KEY_$key"
|
||||
value=$(snapctl get ${!snappy_key})
|
||||
if [ "x$value" == "x" ]; then
|
||||
echo -e "$key=${!default_value} (default value)"
|
||||
export $key=${!default_value}
|
||||
else
|
||||
echo -e "$key=$value"
|
||||
export $key=$value
|
||||
fi
|
||||
done
|
||||
|
|
28
snap/hooks/configure
vendored
28
snap/hooks/configure
vendored
|
@ -1,32 +1,10 @@
|
|||
#!/bin/bash
|
||||
|
||||
exec >> $SNAP_COMMON/hook.log 2>&1
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') $0: Entering hook"
|
||||
|
||||
# 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."
|
||||
|
|
12
snap/hooks/install
Executable file
12
snap/hooks/install
Executable file
|
@ -0,0 +1,12 @@
|
|||
#!/bin/bash
|
||||
|
||||
exec >> $SNAP_COMMON/hook.log 2>&1
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') $0: Entering hook"
|
||||
|
||||
# coppy caddy file in place
|
||||
[ ! -e $SNAP_COMMON/Caddyfile ] && cp $SNAP/Caddyfile $SNAP_COMMON/Caddyfile
|
||||
|
||||
# create run dir, we're going to use it for unix socket
|
||||
mkdir -p $SNAP_DATA/share
|
||||
mkdir -p $SNAP_DATA/shared
|
||||
|
1
snap/hooks/post-refresh
Symbolic link
1
snap/hooks/post-refresh
Symbolic link
|
@ -0,0 +1 @@
|
|||
install
|
Loading…
Add table
Add a link
Reference in a new issue