This commit is contained in:
Emmanuel Viennet 2021-08-25 23:51:07 +02:00
parent 2f47a51f06
commit eb14607bb2
9 changed files with 21 additions and 124 deletions

View File

@ -1,6 +1,6 @@
# -*- coding: UTF-8 -* # -*- coding: UTF-8 -*
"""ScoDoc8 models : departements """ScoDoc models : departements
""" """
from typing import Any from typing import Any

View File

@ -1,6 +1,6 @@
# -*- coding: UTF-8 -* # -*- coding: UTF-8 -*
"""ScoDoc8 models """ScoDoc models
""" """
from typing import Any from typing import Any

View File

@ -6,7 +6,7 @@
<div class="row"> <div class="row">
<h2>Prototype ScoDoc 8</h2> <h2>Prototype ScoDoc</h2>
<div style="font-size: 140%">=> <a href="{{url_for('scodoc.index')}}">Page d'accueil ScoDoc 8</a></div> <div style="font-size: 140%">=> <a href="{{url_for('scodoc.index')}}">Page d'accueil ScoDoc 8</a></div>

View File

@ -120,7 +120,7 @@ def sco_publish(route, function, permission, methods=["GET"]):
log.set_log_directory(Config.SCODOC_VAR_DIR + "/log") log.set_log_directory(Config.SCODOC_VAR_DIR + "/log")
log("ScoDoc8 restarting...") log("ScoDoc restarting...")
# -------------------------------------------------------------------- # --------------------------------------------------------------------
# #

View File

@ -1,14 +1,14 @@
# -*- mode: python -*- # -*- mode: python -*-
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
SCOVERSION = "9.0.0a" SCOVERSION = "9.0.1"
SCONAME = "ScoDoc" SCONAME = "ScoDoc"
SCONEWS = """ SCONEWS = """
<h4>Année 2021</h4> <h4>Année 2021</h4>
<ul> <ul>
<li>Passage à Python 3 et amélioration des performances</li> <li>ScoDoc 9: nouvelle architecture logicielle</li>
<li>Version mobile (en test)</li> <li>Version mobile (en test)</li>
<li>Évaluations de type "deuxième session"</li> <li>Évaluations de type "deuxième session"</li>
<li>Gestion du genre neutre (pas d'affichage de la civilité)</li> <li>Gestion du genre neutre (pas d'affichage de la civilité)</li>

View File

@ -209,7 +209,7 @@ def test_interactive(filename=None):
@app.cli.command() @app.cli.command()
@with_appcontext @with_appcontext
def import_scodoc7_users(): # import-scodoc7-users def import_scodoc7_users(): # import-scodoc7-users
"""Import used defined in ScoDoc7 postgresql database into ScoDoc8 """Import used defined in ScoDoc7 postgresql database into ScoDoc 9
The old database SCOUSERS must be alive and readable by the current user. The old database SCOUSERS must be alive and readable by the current user.
This script is typically run as unix user "scodoc". This script is typically run as unix user "scodoc".
The original SCOUSERS database is left unmodified. The original SCOUSERS database is left unmodified.

View File

@ -8,7 +8,7 @@ die() {
PACKAGE_NAME=scodoc9 PACKAGE_NAME=scodoc9
RELEASE_TAG=9.0.1 RELEASE_TAG=9.0.1
VERSION=9.0.0 VERSION=9.0.1
RELEASE=1 RELEASE=1
ARCH="amd64" ARCH="amd64"
FACTORY_DIR="/opt/factory" FACTORY_DIR="/opt/factory"

View File

@ -85,6 +85,12 @@ fi
# --- Ensure postgres user "scodoc" ($POSTGRES_USER) exists # --- Ensure postgres user "scodoc" ($POSTGRES_USER) exists
init_postgres_user init_postgres_user
# --- MISES A JOUR
cp "$SCODOC_DIR"/tools/etc/scodoc-updater.service /etc/systemd/system
cp "$SCODOC_DIR"/tools/etc/scodoc-updater.timer /etc/systemd/system
systemctl enable scodoc-updater.timer
systemctl start scodoc-updater.timer
# --- SYSTEMD: on a (peut-être) installé un fichier de service # --- SYSTEMD: on a (peut-être) installé un fichier de service
systemctl daemon-reload systemctl daemon-reload
systemctl enable scodoc9 systemctl enable scodoc9

123
tools/upgrade.sh Normal file → Executable file
View File

@ -1,18 +1,16 @@
#!/bin/bash #!/bin/bash
# Upgrade ScoDoc installation using GIT # Upgrade ScoDoc installation using APT
# GIT must be properly configured and have read access to ScoDoc repository #
# This script STOP and RESTART ScoDoc and should be runned as root # This script STOP and RESTART ScoDoc and should be runned as root
# #
# Upgrade also the Linux system using apt. # Upgrade also the Linux system using apt.
# #
# Script for ScoDoc 8 (10) # Script for ScoDoc 9
# #
# E. Viennet, sep 2013, mar 2017, jun 2019, aug 2020, dec 2020 # E. Viennet, sep 2013, mar 2017, jun 2019, aug 2020, dec 2020, aug 21
A REVOIR : utiliser releases
# Le répertoire de ce script: # Le répertoire de ce script:
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
@ -28,113 +26,6 @@ if [ -z "$SCODOC_UPGRADE_RUNNING" ]
then then
apt-get update && apt-get -y dist-upgrade apt-get update && apt-get -y dist-upgrade
fi fi
systemctl restart redis
systemctl restart nginx
scodocctl stop systemctl restart scodoc9
echo
echo "Using git to update $SCODOC_DIR..."
(cd "$SCODOC_DIR"; git checkout ScoDoc8; git pull origin master)
SVNVERSION=$(cd ..; svnversion)
if [ ! -e "${SCODOC_VERSION_DIR}" ]; then
mkdir -p "${SCODOC_VERSION_DIR}"
chown "$SCODOC_USER"."$SCODOC_GROUP" "${SCODOC_VERSION_DIR}"
fi
if [ ! -e "${SCODOC_VERSION_DIR}"/scodoc.sn ]; then
if [ -e "$SCODOC_DIR"/config/scodoc.sn ]; then
# migrate from old scodoc installs
mv "$SCODOC_DIR"/config/scodoc.sn "${SCODOC_VERSION_DIR}"
fi
fi
SN=$(cat "$SCODOC_DIR"/config/scodoc.sn 2> /dev/null || cat "${SCODOC_VERSION_DIR}"/scodoc.sn)
if [ -e "$SCODOC_DIR"/config/scodoc.sn ] || [ -e "${SCODOC_VERSION_DIR}"/scodoc.sn ]
then
if [[ ! "${SN}" =~ ^[0-9].* ]]
then
SN='' # fix for invalid previous replies
fi
mode=upgrade
else
mode=install
fi
CMD="curl --fail --connect-timeout 5 --silent http://scodoc.iutv.univ-paris13.fr/scodoc-installmgr/version?mode=$mode\&svn=${SVNVERSION}\&sn=${SN}"
#echo $CMD
SVERSION="$(${CMD})"
if [ "$?" == 0 ]; then
#echo "answer=${SVERSION}"
echo "${SVERSION}" > "${SCODOC_VERSION_DIR}"/scodoc.sn
else
echo 'Warning: cannot connect to scodoc release server'
fi
# Check that no Zope "access" file has been forgotten in the way:
if [ -e "$SCODOC_DIR"/../../access ]
then
mv "$SCODOC_DIR"/../../access "$SCODOC_DIR"/../../access.bak
fi
# Fix some permissions which may have been altered in the way:
chown -R "$SCODOC_USER"."$SCODOC_GROUP" "${SCODOC_DIR}"
chmod -R 775 "${SCODOC_DIR}"
# depts dir:
if [ ! -e "${SCODOC_VAR_DIR}/config/depts" ]
then
mkdir "${SCODOC_VAR_DIR}/config/depts"
fi
# Se recharge car ce fichier peut avoir change durant le svn up !
if [ -z "$SCODOC_UPGRADE_RUNNING" ]
then
export SCODOC_UPGRADE_RUNNING=1
./upgrade.sh
exit 0
fi
# Add some python modules:
"$SCODOC_DIR"/config/install_cal_modules.sh
/opt/zope213/bin/python -c "import requests" >& /dev/null
if [ $? -ne 0 ]
then
/opt/zope213/bin/pip install requests
fi
/opt/zope213/bin/python -c "import attrdict" >& /dev/null
if [ $? -ne 0 ]
then
/opt/zope213/bin/pip install attrdict
fi
# Check that local configuration file is installed
LOCAL_CONFIG_FILENAME="/opt/scodoc/var/scodoc/config/scodoc_local.py"
if [ ! -e "$LOCAL_CONFIG_FILENAME" ]
then
cp "$SCODOC_DIR"/config/scodoc_config_tmpl.py "$LOCAL_CONFIG_FILENAME"
chmod 600 "$LOCAL_CONFIG_FILENAME"
fi
# upgrade old dateutil (check version manually to speedup)
v=$(/opt/zope213/bin/python -c "import dateutil; print dateutil.__version__")
[[ "$v" < "2.8.1" ]] && /opt/zope213/bin/pip install --upgrade python-dateutil
# Ensure scodoc can duplicate databases (for dumps)
su -c $'psql -c \'alter role "scodoc" with CREATEDB;\'' "$POSTGRES_SUPERUSER"
#'
# post-upgrade scripts
echo "Executing post-upgrade script..."
"$SCODOC_DIR"/config/postupgrade.py
echo "Executing post-upgrade database script..."
su -c "$SCODOC_DIR/config/postupgrade-db.py" "$POSTGRES_USER"
#
echo
scodocctl start