diff --git a/debian/init b/debian/init index f2dc740b5d0..e333c7eb2a1 100644 --- a/debian/init +++ b/debian/init @@ -1,62 +1,71 @@ -#!/bin/sh - +#!/bin/bash ### BEGIN INIT INFO -# Provides: openerp-server -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Should-Start: $network -# Should-Stop: $network -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Enterprise Resource Management software -# Description: Open ERP is a complete ERP and CRM software. +# Provides: openerp-server +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Start openerp daemon at boot time +# Description: Enable service provided by daemon. +# X-Interactive: true ### END INIT INFO +## more info: http://wiki.debian.org/LSBInitScripts PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin DAEMON=/usr/bin/openerp-server -NAME=openerp-server -DESC=openerp-server -CONFIG=/etc/openerp/openerp-server.conf -LOGFILE=/var/log/openerp/openerp-server.log -USER=openerp - -test -x ${DAEMON} || exit 0 +NAME=openerp +DESC=openerp +CONFIG=/etc/odoo/openerp-server.conf +LOGFILE=/var/log/odoo/openerp-server.log +PIDFILE=/var/run/${NAME}.pid +USER=odoo +export LOGNAME=$USER +test -x $DAEMON || exit 0 set -e -do_start () { - echo -n "Starting ${DESC}: " - start-stop-daemon --start --quiet --pidfile /var/run/${NAME}.pid --chuid ${USER} --background --make-pidfile --exec ${DAEMON} -- --config=${CONFIG} --logfile=${LOGFILE} - echo "${NAME}." +function _start() { + start-stop-daemon --start --quiet --pidfile $PIDFILE --chuid $USER:$USER --background --make-pidfile --exec $DAEMON -- --config $CONFIG --logfile $LOGFILE } -do_stop () { - echo -n "Stopping ${DESC}: " - start-stop-daemon --stop --quiet --pidfile /var/run/${NAME}.pid --oknodo - echo "${NAME}." +function _stop() { + start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo --retry 3 + rm -f $PIDFILE } -case "${1}" in - start) - do_start - ;; +function _status() { + start-stop-daemon --status --quiet --pidfile $PIDFILE + return $? +} - stop) - do_stop - ;; - restart|force-reload) - echo -n "Restarting ${DESC}: " - do_stop - sleep 1 - do_start - ;; - - *) - N=/etc/init.d/${NAME} - echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2 - exit 1 - ;; +case "$1" in + start) + echo -n "Starting $DESC: " + _start + echo "ok" + ;; + stop) + echo -n "Stopping $DESC: " + _stop + echo "ok" + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + _stop + sleep 1 + _start + echo "ok" + ;; + status) + echo -n "Status of $DESC: " + _status && echo "running" || echo "stopped" + ;; + *) + N=/etc/init.d/$NAME + echo "Usage: $N {start|stop|restart|force-reload|status}" >&2 + exit 1 + ;; esac exit 0 diff --git a/debian/install b/debian/install index 94d4cfee3e0..e984a257b08 100644 --- a/debian/install +++ b/debian/install @@ -1,2 +1,2 @@ -debian/openerp-server.conf /etc/openerp -README.md /usr/share/doc/openerp +debian/openerp-server.conf /etc/odoo +README.md /usr/share/doc/odoo diff --git a/debian/logrotate b/debian/logrotate index e1f7f803a7d..060ec54d012 100644 --- a/debian/logrotate +++ b/debian/logrotate @@ -1,4 +1,4 @@ -/var/log/openerp/*.log { +/var/log/odoo/*.log { copytruncate missingok notifempty diff --git a/debian/openerp-server.conf b/debian/openerp-server.conf index 66934bed0f8..8e788730ca1 100644 --- a/debian/openerp-server.conf +++ b/debian/openerp-server.conf @@ -3,6 +3,6 @@ ; admin_passwd = admin db_host = False db_port = False -db_user = openerp +db_user = odoo db_password = False -addons_path = /usr/lib/python2.7/dist-packages/openerp/addons \ No newline at end of file +addons_path = /usr/lib/python2.7/dist-packages/openerp/addons diff --git a/debian/postinst b/debian/postinst index ea91c1d1532..ae2c8323ef6 100644 --- a/debian/postinst +++ b/debian/postinst @@ -2,19 +2,19 @@ set -e -ODOO_CONFIGURATION_FILE=/etc/openerp/openerp-server.conf -ODOO_GROUP="openerp" -ODOO_DATA_DIR=/var/lib/openerp -ODOO_LOG_DIR=/var/log/openerp -ODOO_USER="openerp" +ODOO_CONFIGURATION_FILE=/etc/odoo/openerp-server.conf +ODOO_GROUP="odoo" +ODOO_DATA_DIR=/var/lib/odoo +ODOO_LOG_DIR=/var/log/odoo +ODOO_USER="odoo" case "${1}" in configure) - if ! getent passwd | grep -q "^openerp:"; then + if ! getent passwd | grep -q "^odoo:"; then adduser --system --no-create-home --quiet --group $ODOO_USER fi - # Register "openerp" as a postgres superuser - su - postgres -c "createuser -s openerp" 2> /dev/null || true + # Register "$ODOO_USER" as a postgres superuser + su - postgres -c "createuser -s $ODOO_USER" 2> /dev/null || true # Configuration file chown $ODOO_USER:$ODOO_GROUP $ODOO_CONFIGURATION_FILE chmod 0640 $ODOO_CONFIGURATION_FILE diff --git a/debian/postrm b/debian/postrm index f36bb04c0c3..22f7211203f 100644 --- a/debian/postrm +++ b/debian/postrm @@ -2,9 +2,9 @@ set -e -ODOO_LIB_DIR=/var/lib/openerp -ODOO_USER="openerp" -ODOO_GROUP="openerp" +ODOO_LIB_DIR=/var/lib/odoo +ODOO_USER="odoo" +ODOO_GROUP="odoo" case "${1}" in remove) diff --git a/openerp/release.py b/openerp/release.py index 5d3be4f50ae..6928b72cd5b 100644 --- a/openerp/release.py +++ b/openerp/release.py @@ -34,6 +34,7 @@ version_info = (8, 0, 0, RELEASE_CANDIDATE, 1) version = '.'.join(map(str, version_info[:2])) + RELEASE_LEVELS_DISPLAY[version_info[3]] + str(version_info[4] or '') series = serie = major_version = '.'.join(map(str, version_info[:2])) +product_name = 'Odoo' description = 'Odoo Server' long_desc = '''Odoo is a complete ERP and CRM. The main features are accounting (analytic and financial), stock management, sales and purchases management, tasks @@ -45,9 +46,9 @@ classifiers = """Development Status :: 5 - Production/Stable License :: OSI Approved :: GNU Affero General Public License v3 Programming Language :: Python """ -url = 'http://www.openerp.com' +url = 'https://www.odoo.com' author = 'OpenERP S.A.' -author_email = 'info@openerp.com' +author_email = 'info@odoo.com' license = 'AGPL-3' nt_service_name = "openerp-server-" + series diff --git a/openerp/tools/config.py b/openerp/tools/config.py index 02a4ff6e3fa..3fb940e1639 100644 --- a/openerp/tools/config.py +++ b/openerp/tools/config.py @@ -68,9 +68,9 @@ def _get_default_datadir(): if sys.platform in ['win32', 'darwin']: func = appdirs.site_data_dir else: - func = lambda **kwarg: "/var/lib/%s" % kwarg['appname'] + func = lambda **kwarg: "/var/lib/%s" % kwarg['appname'].lower() # No "version" kwarg as session and filestore paths are shared against series - return func(appname='openerp', appauthor=release.author) + return func(appname=release.product_name, appauthor=release.author) class configmanager(object): def __init__(self, fname=None): diff --git a/setup/package.py b/setup/package.py index 9bcf321fc81..1e8b9efb310 100755 --- a/setup/package.py +++ b/setup/package.py @@ -266,13 +266,13 @@ def test_tgz(o): wheezy.system('su postgres -s /bin/bash -c "pg_createcluster --start -e UTF-8 9.1 main"') wheezy.system('pip install -r /opt/release/requirements.txt') wheezy.system('/usr/local/bin/pip install /opt/release/%s' % wheezy.release) - wheezy.system("useradd --system --no-create-home openerp") - wheezy.system('su postgres -s /bin/bash -c "createuser -s openerp"') + wheezy.system("useradd --system --no-create-home odoo") + wheezy.system('su postgres -s /bin/bash -c "createuser -s odoo"') wheezy.system('su postgres -s /bin/bash -c "createdb mycompany"') - wheezy.system('mkdir /var/lib/openerp') - wheezy.system('chown openerp:openerp /var/lib/openerp') - wheezy.system('su openerp -s /bin/bash -c "odoo.py --addons-path=/usr/local/lib/python2.7/dist-packages/openerp/addons -d mycompany -i base --stop-after-init"') - wheezy.system('su openerp -s /bin/bash -c "odoo.py --addons-path=/usr/local/lib/python2.7/dist-packages/openerp/addons -d mycompany &"') + wheezy.system('mkdir /var/lib/odoo') + wheezy.system('chown odoo:odoo /var/lib/odoo') + wheezy.system('su odoo -s /bin/bash -c "odoo.py --addons-path=/usr/local/lib/python2.7/dist-packages/openerp/addons -d mycompany -i base --stop-after-init"') + wheezy.system('su odoo -s /bin/bash -c "odoo.py --addons-path=/usr/local/lib/python2.7/dist-packages/openerp/addons -d mycompany &"') def test_deb(o): with docker('debian:stable', o.build_dir, o.pub) as wheezy: @@ -285,8 +285,8 @@ def test_deb(o): wheezy.system('su postgres -s /bin/bash -c "createdb mycompany"') wheezy.system('/usr/bin/dpkg -i /opt/release/%s' % wheezy.release) wheezy.system('/usr/bin/apt-get install -f -y') - wheezy.system('su openerp -s /bin/bash -c "odoo.py -c /etc/openerp/openerp-server.conf -d mycompany -i base --stop-after-init"') - wheezy.system('su openerp -s /bin/bash -c "odoo.py -c /etc/openerp/openerp-server.conf -d mycompany &"') + wheezy.system('su odoo -s /bin/bash -c "odoo.py -c /etc/odoo/openerp-server.conf -d mycompany -i base --stop-after-init"') + wheezy.system('su odoo -s /bin/bash -c "odoo.py -c /etc/odoo/openerp-server.conf -d mycompany &"') def test_rpm(o): with docker('centos:centos7', o.build_dir, o.pub) as centos7: @@ -306,8 +306,8 @@ def test_rpm(o): centos7.system('export PYTHONPATH=${PYTHONPATH}:/usr/local/lib/python2.7/dist-packages') centos7.system('su postgres -c "createdb mycompany"') centos7.system('yum install /opt/release/%s -y' % centos7.release) - centos7.system('su openerp -s /bin/bash -c "openerp-server -c /etc/openerp/openerp-server.conf -d mycompany -i base --stop-after-init"') - centos7.system('su openerp -s /bin/bash -c "openerp-server -c /etc/openerp/openerp-server.conf -d mycompany &"') + centos7.system('su odoo -s /bin/bash -c "openerp-server -c /etc/odoo/openerp-server.conf -d mycompany -i base --stop-after-init"') + centos7.system('su odoo -s /bin/bash -c "openerp-server -c /etc/odoo/openerp-server.conf -d mycompany &"') def test_exe(o): KVMWinTestExe(o, o.vm_winxp_image, o.vm_winxp_ssh_key, o.vm_winxp_login).start() diff --git a/setup/redhat/postinstall.sh b/setup/redhat/postinstall.sh index bde7db493bc..437fdcec426 100644 --- a/setup/redhat/postinstall.sh +++ b/setup/redhat/postinstall.sh @@ -1,28 +1,29 @@ -#!/bin/sh +#!/bin/bash set -e -ODOO_CONFIGURATION_FILE=/etc/openerp/openerp-server.conf -ODOO_CONFIGURATION_DIR=/etc/openerp -ODOO_DATA_DIR=/var/lib/openerp -ODOO_GROUP="openerp" -ODOO_LOG_DIR=/var/log/openerp -ODOO_USER="openerp" +ODOO_CONFIGURATION_DIR=/etc/odoo +ODOO_CONFIGURATION_FILE=$ODOO_CONFIGURATION_DIR/openerp-server.conf +ODOO_DATA_DIR=/var/lib/odoo +ODOO_GROUP="odoo" +ODOO_LOG_DIR=/var/log/odoo +ODOO_USER="odoo" -if ! getent passwd | grep -q "^openerp:"; then +if ! getent passwd | grep -q "^odoo:"; then groupadd $ODOO_GROUP adduser --system --no-create-home $ODOO_USER -g $ODOO_GROUP fi -# Register "openerp" as a postgres superuser -su - postgres -c "createuser -s openerp" 2> /dev/null || true +# Register "$ODOO_USER" as a postgres superuser +su - postgres -c "createuser -s $ODOO_USER" 2> /dev/null || true # Configuration file mkdir -p $ODOO_CONFIGURATION_DIR +# can't copy debian config-file as addons_path is not the same echo "[options] ; This is the password that allows database operations: ; admin_passwd = admin db_host = False db_port = False -db_user = openerp +db_user = $ODOO_USER db_password = False addons_path = /usr/local/lib/python2.7/dist-packages/openerp/addons " > $ODOO_CONFIGURATION_FILE @@ -36,67 +37,81 @@ chmod 0750 $ODOO_LOG_DIR mkdir -p $ODOO_DATA_DIR chown $ODOO_USER:$ODOO_GROUP $ODOO_DATA_DIR -echo '#!/bin/sh - +INIT_FILE=/etc/init.d/openerp +touch $INIT_FILE +chmod 0700 $INIT_FILE +# FIXME this is a copy of debian/init file. +# If anyone know how to tell bdist_rpm to use this file directly... +cat << 'EOF' > $INIT_FILE +#!/bin/bash ### BEGIN INIT INFO -# Provides: openerp-server -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Should-Start: $network -# Should-Stop: $network -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Enterprise Resource Management software -# Description: Open ERP is a complete ERP and CRM software. +# Provides: openerp-server +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Start openerp daemon at boot time +# Description: Enable service provided by daemon. +# X-Interactive: true ### END INIT INFO +## more info: http://wiki.debian.org/LSBInitScripts PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin DAEMON=/usr/bin/openerp-server -NAME=openerp-server -DESC=openerp-server -CONFIG=/etc/openerp/openerp-server.conf -LOGFILE=/var/log/openerp/openerp-server.log -USER=openerp - -test -x ${DAEMON} || exit 0 +NAME=openerp +DESC=openerp +CONFIG=/etc/odoo/openerp-server.conf +LOGFILE=/var/log/odoo/openerp-server.log +PIDFILE=/var/run/${NAME}.pid +USER=odoo +export LOGNAME=$USER +test -x $DAEMON || exit 0 set -e -do_start () { - echo -n "Starting ${DESC}: " - start-stop-daemon --start --quiet --pidfile /var/run/${NAME}.pid --chuid ${USER} --background --make-pidfile --exec ${DAEMON} -- --config=${CONFIG} --logfile=${LOGFILE} - echo "${NAME}." +function _start() { + start-stop-daemon --start --quiet --pidfile $PIDFILE --chuid $USER:$USER --background --make-pidfile --exec $DAEMON -- --config $CONFIG --logfile $LOGFILE } -do_stop () { - echo -n "Stopping ${DESC}: " - start-stop-daemon --stop --quiet --pidfile /var/run/${NAME}.pid --oknodo - echo "${NAME}." +function _stop() { + start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo --retry 3 + rm -f $PIDFILE } -case "${1}" in - start) - do_start - ;; +function _status() { + start-stop-daemon --status --quiet --pidfile $PIDFILE + return $? +} - stop) - do_stop - ;; - restart|force-reload) - echo -n "Restarting ${DESC}: " - do_stop - sleep 1 - do_start - ;; - - *) - N=/etc/init.d/${NAME} - echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2 - exit 1 - ;; +case "$1" in + start) + echo -n "Starting $DESC: " + _start + echo "ok" + ;; + stop) + echo -n "Stopping $DESC: " + _stop + echo "ok" + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + _stop + sleep 1 + _start + echo "ok" + ;; + status) + echo -n "Status of $DESC: " + _status && echo "running" || echo "stopped" + ;; + *) + N=/etc/init.d/$NAME + echo "Usage: $N {start|stop|restart|force-reload|status}" >&2 + exit 1 + ;; esac exit 0 -' > /etc/init.d/openerp -chmod 700 /etc/init.d/openerp \ No newline at end of file +EOF