Skip to content
Permalink
Browse files

Added a stop command using the existing stop script to the snap package

  • Loading branch information...
luccioman committed Feb 4, 2019
1 parent 5e9a083 commit 7a30bce2176a7f040df3247ee770a5f75e6aecc8
Showing with 46 additions and 13 deletions.
  1. +12 −0 addon/snap/exportYacyDataPath.sh
  2. +3 −10 addon/snap/snapPasswd.sh
  3. +9 −0 addon/snap/snapStopYACY.sh
  4. +5 −0 snap/snapcraft.yaml
  5. +17 −3 stopYACY.sh
@@ -0,0 +1,12 @@
#!/usr/bin/env sh
# Check the snap configuration to properly fill the YACY_DATA_PATH environment variable

DATA_VERSIONED="$(snapctl get data.versioned)"
if [ "$DATA_VERSIONED" = "false" ]; then
# YaCy data is in the Snap common (non versioned) user data
YACY_DATA_PATH="$SNAP_USER_COMMON/DATA"
else
# Defaults : YaCy data is in the Snap versioned user data
YACY_DATA_PATH="$SNAP_USER_DATA/DATA"
fi
export YACY_DATA_PATH
@@ -2,15 +2,8 @@

# Wrapper script for Snap package specific instructions before calling the bin/passwd.sh script

# Check the snap configuration to properly fill the YACY_DATA_PATH environment variable
DATA_VERSIONED="$(snapctl get data.versioned)"
if [ "$DATA_VERSIONED" = "false" ]; then
# YaCy data is in the Snap common (non versioned) user data
YACY_DATA_PATH="$SNAP_USER_COMMON/DATA"
else
# Defaults : YaCy data is in the Snap versioned user data
YACY_DATA_PATH="$SNAP_USER_DATA/DATA"
fi
export YACY_DATA_PATH
cd "`dirname $0`"

. ./exportYacyDataPath.sh

sh "$SNAP/yacy/bin/passwd.sh"
@@ -0,0 +1,9 @@
#!/usr/bin/env sh

# Wrapper script for Snap package specific instructions before calling the stopYACY.sh script

cd "`dirname $0`"

. ./exportYacyDataPath.sh

sh "$SNAP/yacy/stopYACY.sh"
@@ -33,6 +33,11 @@ apps:
# Interfaces authorizations requirements
# network - to allow requesting the ConfigAccounts_p HTTP API when the server is running
plugs: [network]
stop: # stop the YaCy server
command: sh "$SNAP/yacy/addon/snap/snapStopYACY.sh"
# Interfaces authorizations requirements
# network - to allow requesting the Steering.html API
plugs: [network]

parts:
yacy-search:
@@ -1,15 +1,29 @@
#!/usr/bin/env sh
# Shutdown a running YaCy server through API call
#
# $YACY_DATA_PATH : path to the YaCy DATA folder to use. When not set, the relative ./DATA path is used as a default.

cd `dirname $0`

(bin/protectedPostApiCall.sh "Steering.html" "shutdown=true" > /dev/null && \
if [ -z "$YACY_DATA_PATH" ]; then
YACY_DATA_PATH="DATA"
fi

if [ ! -d "$YACY_DATA_PATH" ]; then
echo "Invalid YaCy DATA folder path : $YACY_DATA_PATH"
echo "Please fill the YACY_DATA_PATH environment variable with a valid YaCy DATA folder path."
exit 2
fi

(bin/protectedPostApiCall.sh "Steering.html" "shutdown=true" && \
echo "Please wait until the YaCy daemon process terminates [wget]" && \
echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser DATA/LOG/yacy00.log'") || \
echo "You can monitor this with 'tail -f $YACY_DATA_PATH/LOG/yacy00.log' and 'fuser $YACY_DATA_PATH/LOG/yacy00.log'") || \
exit $?

# wait until the yacy.running file disappears which means that YaCy has terminated
# If you don't want to wait, just run this concurrently
while [ -f "DATA/yacy.running" ]
while [ -f "$YACY_DATA_PATH/yacy.running" ]
do
echo "WAITING"
sleep 1
done

0 comments on commit 7a30bce

Please sign in to comment.
You can’t perform that action at this time.