First commit
This commit is contained in:
34
data/astra/default/enserver
Normal file
34
data/astra/default/enserver
Normal file
@@ -0,0 +1,34 @@
|
||||
# path to enserver main file
|
||||
ENSERVER="/usr/lib/python2.7/dist-packages/enserver/enserver.py"
|
||||
PIDFILE="/var/run/apsh/enserver.pid"
|
||||
# logging options
|
||||
LOGFILE="/var/log/apsh/enserver/enserver.log"
|
||||
# log level {DEBUG,INFO,WARNING,ERROR,CRITICAL}
|
||||
LOGLEVEL="INFO"
|
||||
# DB options
|
||||
DB_HOST="pgsql"
|
||||
DB_PORT="5432"
|
||||
DB_NAME="enserver"
|
||||
DB_USER="db_apsh"
|
||||
DB_PASSWD="12345678"
|
||||
# path to enserver storage
|
||||
STORAGE="/share/store/enserver/storage"
|
||||
# local enserver id
|
||||
SERVERID="enserver_astra"
|
||||
# local ip-address
|
||||
ADDRESS="enserv"
|
||||
# providers options
|
||||
AUTH_PROVIDER="http://apsh@userv:8008/xmlrpc"
|
||||
# subscribes options
|
||||
SUBSCRIBER_USERVER="http://userv:8008/xmlrpc"
|
||||
SUBSCRIBER_CDSERVER="http://cdserv:8080/Transport"
|
||||
# connection options
|
||||
TCP_PORT=7001
|
||||
TCP_TIMEOUT=90
|
||||
DISCONNECT_TIMEOUT="7"
|
||||
CDSERVER_REPLICATION="http://cdserv:8080/Replication"
|
||||
REPLICATION_PROVIDER="$CDSERVER_REPLICATION"
|
||||
|
||||
# required for parent bank - uncomment next line and add to unit file param '--host ${HOST}'
|
||||
# unit file path: /etc/systemd/system/enserver.service
|
||||
#HOST="bnd"
|
||||
8
data/astra/logrotate.d/enserver
Normal file
8
data/astra/logrotate.d/enserver
Normal file
@@ -0,0 +1,8 @@
|
||||
/var/log/apsh/enserver.log {
|
||||
size 10M
|
||||
rotate 10
|
||||
notifempty
|
||||
compress
|
||||
copytruncate
|
||||
delaycompress
|
||||
}
|
||||
22
data/astra/systemd/system/enserver.service
Normal file
22
data/astra/systemd/system/enserver.service
Normal file
@@ -0,0 +1,22 @@
|
||||
# Contents of /etc/systemd/system/enserver.service
|
||||
[Unit]
|
||||
Description=En-Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
CapabilitiesParsec=PARSEC_CAP_PRIV_SOCK
|
||||
AmbientCapabilities=CAP_IPC_LOCK
|
||||
CapabilityBoundingSet=CAP_IPC_LOCK
|
||||
Type=simple
|
||||
User=apsh
|
||||
Group=apsh
|
||||
EnvironmentFile=/etc/default/enserver
|
||||
Restart=always
|
||||
RestartSec=30s
|
||||
PIDFile=/var/run/apsh/enserver.pid
|
||||
WorkingDirectory=/usr/lib/python2.7/dist-packages/enserver/
|
||||
ExecStart=/usr/bin/python ${ENSERVER} --debug --id=${SERVERID} --loglevel ${LOGLEVEL} --logfile ${LOGFILE} --pidfile
|
||||
${PIDFILE} --address ${ADDRESS} --port ${TCP_PORT} --tcp-timeout ${TCP_TIMEOUT} --db-name ${DB_NAME} --db-user ${DB_USER} --db-port ${DB_PORT} --db-host ${DB_HOST} --db-passwd ${DB_PASSWD} --storage ${STORAGE} --auth-provider ${AUTH_PROVIDER} --disconnect_timeout ${DISCONNECT_TIMEOUT} --replication-provider ${REPLICATION_PROVIDER} ${SUBSCRIBER_USERVER} ${SUBSCRIBER_CDSERVER}
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
92
data/zarya/init.d/enserver
Executable file
92
data/zarya/init.d/enserver
Executable file
@@ -0,0 +1,92 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# enserver Start/Stop the EN-Server daemon
|
||||
#
|
||||
# chkconfig: 345 96 10
|
||||
# description: Apsheronsk transport system
|
||||
|
||||
### BEGIN INIT INFO
|
||||
# Provides: enserver
|
||||
# Required-Start: $local_fs $network
|
||||
# Required-Stop: $local_fs $network
|
||||
# Short-Description: enserver daemon
|
||||
# Description: Apsheronsk transport system
|
||||
### END INIT INFO
|
||||
|
||||
# Source function library.
|
||||
. /etc/rc.d/init.d/functions
|
||||
|
||||
#set -e
|
||||
# This is an interactive program, we need the current locale
|
||||
[ -f /etc/profile.d/lang.sh ] && . /etc/profile.d/lang.sh
|
||||
|
||||
if [ -f /etc/sysconfig/enserver ]; then
|
||||
. /etc/sysconfig/enserver
|
||||
fi
|
||||
|
||||
# configuration parameters
|
||||
PYTHON=${PYTHON:-/usr/bin/python2.6}
|
||||
ENSERVER=${ENSERVER:-/usr/lib/python2.6/site-packages/enserver/enserver.py}
|
||||
USER=${USER:-apsh}
|
||||
PIDFILE=${PIDFILE:-/var/run/apsh/enserver.pid}
|
||||
STOP_TIMEOUT=${STOP_TIMEOUT:-10}
|
||||
HTTP_PORT=${HTTP_PORT:-7000}
|
||||
TCP_PORT=${TCP_PORT:-7001}
|
||||
LOGLEVEL=${LOGLEVEL:+--debug}
|
||||
LOGFILE=${LOGFILE:-/var/log/apsh/enserver.log}
|
||||
STORAGE=${STORAGE:-/share/store/enserver}
|
||||
PARENT_HOST=${HOST:+--host=$HOST}
|
||||
ADDRESS=${ADDRESS:-enserv}
|
||||
RETVAL=0
|
||||
|
||||
OPTIONS="$LOGLEVEL --logfile=$LOGFILE --port=$TCP_PORT --pidfile=$PIDFILE --storage=$STORAGE --address=$ADDRESS $PARENT_HOST $OPTIONS"
|
||||
DAEMON="--daemon"
|
||||
|
||||
start() {
|
||||
echo -n $"Starting enserver: "
|
||||
|
||||
LANG="C" ss -pltn | grep ":${HTTP_PORT}[ \t]\+" > /dev/null && P1=0 || P1=1
|
||||
LANG="C" ss -pltn | grep ":${TCP_PORT}[ \t]\+" > /dev/null && P2=0 || P2=1
|
||||
|
||||
if [ $P1 -eq 0 ] || [ $P2 -eq 0 ]; then
|
||||
echo -n $"port already in use"
|
||||
RETVAL=1
|
||||
else
|
||||
daemon --user=${USER} --pidfile=${PIDFILE} $PYTHON $ENSERVER $DAEMON $OPTIONS
|
||||
RETVAL=$?
|
||||
fi
|
||||
echo
|
||||
}
|
||||
|
||||
stop() {
|
||||
echo -n $"Stopping enserver: "
|
||||
killproc -p ${PIDFILE} -d ${STOP_TIMEOUT} $PYTHON
|
||||
RETVAL=$?
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
constart)
|
||||
DAEMON=""
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
status)
|
||||
status -p ${PIDFILE} $PYTHON
|
||||
RETVAL=$?
|
||||
;;
|
||||
*)
|
||||
echo $"Usage: $0 {start|stop|status|restart}"
|
||||
RETVAL=2
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
8
data/zarya/logrotate.d/enserver
Normal file
8
data/zarya/logrotate.d/enserver
Normal file
@@ -0,0 +1,8 @@
|
||||
/var/log/apsh/enserver.log {
|
||||
size 10M
|
||||
rotate 10
|
||||
notifempty
|
||||
compress
|
||||
copytruncate
|
||||
delaycompress
|
||||
}
|
||||
4
data/zarya/scripts/install.spec.inc
Normal file
4
data/zarya/scripts/install.spec.inc
Normal file
@@ -0,0 +1,4 @@
|
||||
python setup.py install -O1 --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES
|
||||
|
||||
sed -ri '\@^/etc/@ {\@/init.d/@! s@.+@%config(noreplace) \0@}' INSTALLED_FILES
|
||||
|
||||
16
data/zarya/scripts/postinstall.sh
Normal file
16
data/zarya/scripts/postinstall.sh
Normal file
@@ -0,0 +1,16 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
CONF="/etc/sysconfig/enserver"
|
||||
if [ -f ${CONF} ]; then
|
||||
. ${CONF}
|
||||
fi
|
||||
|
||||
USER=${USER-"apsh"}
|
||||
GROUP=${GROUP-"apsh"}
|
||||
DBNAME=${DBNAME-"enserver"}
|
||||
STORAGE=${STORAGE-"/share/store/enserver"}
|
||||
LOGDIR=${LOGDIR-"/share/store"}
|
||||
|
||||
|
||||
mkdir -p ${STORAGE} ${LOGDIR}
|
||||
chown ${USER}:${GROUP} ${STORAGE} ${LOGDIR}
|
||||
23
data/zarya/sysconfig/enserver
Normal file
23
data/zarya/sysconfig/enserver
Normal file
@@ -0,0 +1,23 @@
|
||||
PYTHON="/usr/bin/python2.6"
|
||||
USER="apsh"
|
||||
PIDFILE="/var/run/apsh/enserver.pid"
|
||||
LOGFILE="/var/log/apsh/enserver.log"
|
||||
LOGLEVEL="DEBUG"
|
||||
STORAGE="/share/store/enserver"
|
||||
SERVERID="bnd"
|
||||
ADDRESS="enserv"
|
||||
DBHOST="pgsql"
|
||||
DBPORT="5432"
|
||||
DBUSER="apsh"
|
||||
DBPASSWD="apsh"
|
||||
DISCONNECT_TIMEOUT="7"
|
||||
#required for parent bank - uncomment next line
|
||||
#HOST="parent_bank"
|
||||
CDSERVER="http://cdserv:8080/Transport"
|
||||
CDSERVER_REPLICATION="http://cdserv:8080/Replication"
|
||||
USERVER="http://userv:8008/xmlrpc"
|
||||
VSERVER="http://vserv:10110/enclient,local://vis"
|
||||
AUTH_PROVIDER="$USERVER"
|
||||
REPLICATION_PROVIDER="$CDSERVER_REPLICATION"
|
||||
SUBSCRIBERS="$USERVER $CDSERVER $VSERVER"
|
||||
OPTIONS="--id=$SERVERID --db-host=$DBHOST --db-port=$DBPORT --db-user=$DBUSER --db-passwd=$DBPASSWD --disconnect_timeout=$DISCONNECT_TIMEOUT --auth-provider=$AUTH_PROVIDER --replication-provider=$REPLICATION_PROVIDER $SUBSCRIBERS"
|
||||
Reference in New Issue
Block a user