Skip to content

Commit

Permalink
Added a stop command using the existing stop script to the snap package
Browse files Browse the repository at this point in the history
  • Loading branch information
luccioman committed Feb 4, 2019
1 parent 5e9a083 commit 7a30bce
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 13 deletions.
12 changes: 12 additions & 0 deletions addon/snap/exportYacyDataPath.sh
Original file line number Original file line Diff line number Diff line change
@@ -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
13 changes: 3 additions & 10 deletions addon/snap/snapPasswd.sh
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -2,15 +2,8 @@


# Wrapper script for Snap package specific instructions before calling the bin/passwd.sh script # 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 cd "`dirname $0`"
DATA_VERSIONED="$(snapctl get data.versioned)"
if [ "$DATA_VERSIONED" = "false" ]; then . ./exportYacyDataPath.sh
# 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


sh "$SNAP/yacy/bin/passwd.sh" sh "$SNAP/yacy/bin/passwd.sh"
9 changes: 9 additions & 0 deletions addon/snap/snapStopYACY.sh
Original file line number Original file line Diff line number Diff line change
@@ -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"
5 changes: 5 additions & 0 deletions snap/snapcraft.yaml
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -33,6 +33,11 @@ apps:
# Interfaces authorizations requirements # Interfaces authorizations requirements
# network - to allow requesting the ConfigAccounts_p HTTP API when the server is running # network - to allow requesting the ConfigAccounts_p HTTP API when the server is running
plugs: [network] 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: parts:
yacy-search: yacy-search:
Expand Down
20 changes: 17 additions & 3 deletions stopYACY.sh
Original file line number Original file line Diff line number Diff line change
@@ -1,15 +1,29 @@
#!/usr/bin/env sh #!/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` 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 "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 $? exit $?


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

0 comments on commit 7a30bce

Please sign in to comment.