7669
Commentaire: zyva fait péter le retro planinge !!
|
3158
dexssisation
|
Texte supprimé. | Texte ajouté. |
Ligne 1: | Ligne 1: |
## page was renamed from ZAN/WikiAufOrg ## page was renamed from BAN/WikiAufOrg ## page was renamed from WikiAufOrg |
|
Ligne 6: | Ligne 3: |
Machine hôte : Debian Sarge | Machine hôte : Debian Etch (VZ), apache2 + mod_wsgi. |
Ligne 9: | Ligne 6: |
Ligne 10: | Ligne 8: |
* installation de MoinMoin (dernière version) avec `PREFIX=/usr/local` * configuration en mode "Ferme de Wiki" (`farmconfig.py`). Configuration dans `/etc/moinmoin` (dossier ajouté au `sys.path` au début de `moin.cgi`) * configuration de apache pour https://wiki.auf.org * activation de tout ce qui est RSS en installant `python-4suite` (rien d'autre à faire, MoinMoin détecte tout seul la présence de cette possibilité) * activation du mode FastCGI (déjà installé pour RT3... on factorise) * modification du certificat de www.auf.org pour ajouter wiki.auf.org et courriel.auf.org en SubjetAltName (cf /etc/apache/openssl.cnf) * ajout de quelques themes, pour voir (bof) == Upgrade de Moinmoin (changement de version) == 1. faire une sauvegarde de la version courante (répertoires /usr/local/share/moin et /usr/local/lib/python2.3/ notamment) 1. installation de la nouvelle version (`cd /usr/src/moin[N°-nouvelle-version] && sudo python setup.py --quiet install --prefix="/usr/local" --record=install.log`) après l'avoir téléchargée (http://moinmoin.wikiwikiweb.de/MoinMoinDownload) et désarchivée dans `/usr/src` 1. après l'installation : a. modifier la variable `sys.path.insert` des fichiers `moin.fcg` et `moin.cgi` de la nouvelle version (dans `/usr/local/share/moin/server/` : `moin.cgi` et `moin.fcg`) : {{{# Path of the directory where wikiconfig.py is located. # YOU NEED TO CHANGE THIS TO MATCH YOUR SETUP. sys.path.insert(0, '/etc/moinmoin') }}} a. remplacer l'ancien `htdocs` par la nouvelle version (`/usr/src/moin-[N°-nouvelle-version]/wiki/htdocs` --> `/usr/local/share/moin/`) 2. puis relancer apache (#apachectl graceful) 3. s'assurer qu'on est à la bonne version : `https://wiki.auf.org/wikiteki?action=test` '''NB''' : le système d'upgrade de MoinMoin étant TRÈS tatillon, il vaut mieux, pour patcher un truc, mettre le fichier patché dans /etc/moinmoin ou tout autre répertoire. Ne pas toucher aux sources fournies, sinon l'upgradeur ne les mets pas à jour. Le nouveau système risque, alors , d'être buggé. == A étudier == * suppression de `python-dev` (a priori nécessaire uniquement * accélération ''mod_python'' ? mais Sarge ne contient que la "vieille" version... FastCGI a l'air de suffire ? == Panne du 7 novembre suite à mise à jour en 1.5.6 == Je (ThomasNoël) n'arrive pas très bien à savoir ce qui c'est passé (et j'ai pas envie de recommencer à jouer avec le feu). 1. Moussa a mis à jour MoinMoin en 1.5.6 la veille au soir, mais sans faire le restart apache (et donc on était resté en 1.5.5a via FastCGI) 1. Mardi 7 matin, j'ai fait un restart d'apache, mais ensuite j'ai juste été voir si ?action=test indiquait bien la version 1.5.6 : je n'ai pas essayé d'éditer de page 1. Ensuite j'ai voulu optimiser un peu la configuration dans /etc/moinmoin (regrouper les choses dans farmwiki.py) 1. Là j'ai testé...et toutes les pages étaient devenue "immuables" ! Aïe. 1. J'ai alors remis l'ancienne conf, mais ça n'a rien changé : ça plantait toujours... Comme si les groupes n'étaient plus reconnus. Mais je ne sais donc pas si c'est l'upgrade ou ma manip qui a cassé le fait que MoinMoin ne reconnaissait plus la notion de "GroupeAUF". Pour réparer, voici ce que j'ai du faire après plusieurs tentatives infructueuses : 1. Puisque les "GroupeXXX" ne semblaient plus fonctionner, j'ai ajouter ThomasNoël en dur dans les ACL générale (au niveau de wikiteki.py) 1. A partir de là, j'ai pu accéder au wiki avec les droits nécessaires partout. 1. J'ai alors forcé la mise à jour des pages GroupeAUF, GroupeAdmin et GroupePartenaires (en écrivant des bétises dedans puis en les retirant) 1. Ensuite j'ai supprimé mon accès ACL "ThomasNoël" et j'ai vérifié que les GroupeXXX étaient bien à nouveau pris en compte. Oui. Ouf. Je pense que MoinMoin optimise la gestion des groupes : il ne va pas lire les pages GroupeXXX à chaque requête (!). Il doit tenir une table séparée quelque part. Il faudra, au prochain upgrade, vérifier que c'est bien mes tentatives d'optimisations inutiles (sic) qui ont planté cette reconnaissance desgroupes, et non pas l'upgrade lui-même. Sinon il faudra étudier comment systématiser la prise en compte des groupes à chauqe upgrade (et signaler un bogue à MoinMoin - il est possible que ça marche pour des GroupXXX (in english) et pas pour les versions traduites). Désolé pour ce downtime... = wiki2 = * moinmoin 1.6.x * test SANS apache, en mode natif : http://moinmo.in/HelpOnInstalling/StandaloneServer * installation sur Etch (vz 104, merci Moussa) * paquets installés : python-xml, python-xapian, python-dev (pour installation), apache2 + libapache2-mod-fcgid (pour mode fastcgi), catdoc+xpdf-utils (aide à xapian) * `python setup.py install --prefix='/usr/local' --record=install.log`, '''ok''' donne une installation dans : * `/usr/local/bin/moin` : lanceur |
* installation de MoinMoin (dernière version) avec : `python setup.py install --prefix='/usr/local' --record=install.log` : * `/usr/local/bin/moin` : lanceur (note : il faut y modifier le sys.path) |
Ligne 72: | Ligne 12: |
* mkdir /etc/moinmoin pour nos configs, et ajout de `sys.path.insert(0, '/etc/moinmoin')` dans /usr/local/bin/moin * abandon de la solution native (marche mal, exception Python dès que l'url a un soucis... bof), passage en mode FastCGI avec libapache2-mod-fcgid (fastcgi, le "vrai", étant non-free, je donne une chance à cette alternative) * migration du thème : ok, à ré-optimiser peut-être à l'occasion mais bon * en test: http://wiki2.auf.org/wikiteki (n'est pas sensé fonctionner pour l'instant, bourré le bogue, normal, pas la peine de me le dire ;) ) * activation xapian ok |
* tournera en mode WSGI (mod_wsgi de apache, depuis backports) : * `cp /usr/local/share/moin/server/moin.wsgi /etc/moinmoin/` * activation dans Apache : {{{ # mod_wsgi (http://code.google.com/p/modwsgi/) WSGIScriptAlias /wikiteki /etc/moinmoin/moin.wsgi Alias /static/wikitekibeta /var/www/wikitekibeta }}} * création du répertoire `/etc/moinmoin` pour nos configs * donc ajouter/modifier la ligne `sys.path.insert(0, '/etc/moinmoin')` dans `/usr/local/bin/moin` et `/etc/moinmoin/moin.wsgi` * configuration en mode "Ferme de Wiki" (`farmconfig.py`) * activation de tout ce qui est RSS en installant `python-4suite` (rien d'autre à faire, MoinMoin détecte tout seul la présence de cette possibilité) * petite adaptation du thème [[http://moinmo.in/ThemeMarket/Gugiel|Gugiel]] (et avant : [[http://moinmo.in/ThemeMarket/sinorca4moin|sinorca4moin]]) |
Ligne 78: | Ligne 26: |
Restent à faire : * installation en https * --(comprendre pourquoi la migration des pages d'aide (underlay) ne marche pas et pourquoi l'installation d'un nouvel underlay frenchy se fait en ancienne syntaxe (alors là, celui qui m'explique ça gagne ma totale estime pour la demi-journée qui suit parce que faut pas pousser non plus) )-- * écrire une doc expliquant les modifs de la syntaxe * --(faire un peu le tour des pages migrées pour voir si y'a des trucs qui vont pas....)-- * tuning coté fastcgi * --(bug "fullsearch" qui fait planter (xapian peut peut-être aider ?...) )-- * migrer pour de vrai (=> ttl DNS de wiki.auf.org passé à 5 minutes, désolé Moussa pour le viol de db.auf.org pendant ton sommeil ;) ) |
== Procédure d'upgrade de Moinmoin (changement de version) == |
Ligne 87: | Ligne 28: |
Plus tard : * xmlrpc : on peut faire quoi en vrai * syntaxe créole ? |
1. sauvegarde de la version courante, c-a-d des répertoires : * `/usr/local/share/moin` et `/usr/local/lib/python*/` (ou plus généralement `/usr/local`) : le logiciel * `/var/lib/moinmoin/` : les données * `/etc/moinmoin` : la configuration 1. installation de la nouvelle version : {{{ # cd /usr/src/moin-X.Y.Z # python setup.py install --prefix='/usr/local' --record=install.log }}} 1. après l'installation : a. faire un `sys.path.insert` dans `/etc/moinmoin/moin.wsgi` et `/usr/local/bin/moin` (indiquer `sys.path.insert(0, '/etc/moinmoin')`) a. remplacer l'ancien `htdocs` par celui de la nouvelle version (`/usr/src/moin-X.Y.Z/wiki/htdocs` -> `/usr/local/share/moin/`) 1. (éventuellement, si modification de syntaxe : `moin migration data --help`) 1. puis relancer apache 1. s'assurer qu'on est à la bonne version : `https://wiki.auf.org/wikiteki?action=test` 1. faire quelques tests (gestion des acl surtout) |
Ligne 91: | Ligne 45: |
== Plan de migration de wiki.auf.org vers nouvelle machine en moinmoin 1.6 == | '''NB''' : le système d'upgrade de MoinMoin étant TRÈS tatillon, il vaut mieux, pour patcher un truc, mettre le fichier patché dans /etc/moinmoin ou tout autre répertoire. Ne pas toucher aux sources fournies, sinon l'upgradeur ne les mets pas à jour. Le nouveau système risque, alors, d'être buggé. |
Ligne 93: | Ligne 47: |
Quand ? ttl DNS sur wiki.auf.org expirent le '''22 février au matin, TU''' 1. bloquer écritures sur wiki.auf.org (via les acl) + un warning au début de chaque page (patch theme ?) vers wiki2.auf.org 1. apache2 stop sur wiki2 1. migrer contenu : * cp sur vz de wiki vers wiki2 de "data/pages" uniquement * moin migration data * moin index index build --mode=rebuild 1. modif DNS puis hostname sur wiki2.auf.org (avec un serveralias sur wiki2.auf.org pendant le temps où les DNS auront encore une mauvaise info) 1. apache2 start sur wiki2 et remise à niveau de quelques pages (Accueil/Nouvelles & co) 1. annonce nouvelle syntaxe sur Accueil (et sur page d'édition) 1. ben heu... ok ? |
== Corrections par rapport à 1.8.1 == * [[http://hg.moinmo.in/moin/1.8/rev/8cb4d34ccbc1 | Fix AttachFile XSS issues]] (mis en place le 30 janvier 2009) * [[http://hg.moinmo.in/moin/1.8/rev/5c4043e651b3 | Fix other AttachFile XSS issues]] (mis en place le 30 janvier 2009) * [[http://hg.moinmo.in/moin/1.8/rev/89b91bf87dad | Fix antispam XSS issue]] (mis en place le 30 janvier 2009) |
Notes sur l'installation de MoinMoin sur wiki.auf.org
Machine hôte : Debian Etch (VZ), apache2 + mod_wsgi.
Procédure suivie pour l'installation
installation de python, python-dev
installation de MoinMoin (dernière version) avec : python setup.py install --prefix='/usr/local' --record=install.log :
/usr/local/bin/moin : lanceur (note : il faut y modifier le sys.path)
/usr/local/lib/python2.4/site-packages/MoinMoin : le programme lui-même
/usr/local/share/moin/ : données et configs
- tournera en mode WSGI (mod_wsgi de apache, depuis backports) :
cp /usr/local/share/moin/server/moin.wsgi /etc/moinmoin/
- activation dans Apache :
# mod_wsgi (http://code.google.com/p/modwsgi/) WSGIScriptAlias /wikiteki /etc/moinmoin/moin.wsgi Alias /static/wikitekibeta /var/www/wikitekibeta
création du répertoire /etc/moinmoin pour nos configs
donc ajouter/modifier la ligne sys.path.insert(0, '/etc/moinmoin') dans /usr/local/bin/moin et /etc/moinmoin/moin.wsgi
configuration en mode "Ferme de Wiki" (farmconfig.py)
activation de tout ce qui est RSS en installant python-4suite (rien d'autre à faire, MoinMoin détecte tout seul la présence de cette possibilité)
petite adaptation du thème Gugiel (et avant : sinorca4moin)
Procédure d'upgrade de Moinmoin (changement de version)
- sauvegarde de la version courante, c-a-d des répertoires :
/usr/local/share/moin et /usr/local/lib/python*/ (ou plus généralement /usr/local) : le logiciel
/var/lib/moinmoin/ : les données
/etc/moinmoin : la configuration
- installation de la nouvelle version :
# cd /usr/src/moin-X.Y.Z # python setup.py install --prefix='/usr/local' --record=install.log
- après l'installation :
faire un sys.path.insert dans /etc/moinmoin/moin.wsgi et /usr/local/bin/moin (indiquer sys.path.insert(0, '/etc/moinmoin'))
remplacer l'ancien htdocs par celui de la nouvelle version (/usr/src/moin-X.Y.Z/wiki/htdocs -> /usr/local/share/moin/)
(éventuellement, si modification de syntaxe : moin migration data --help)
- puis relancer apache
s'assurer qu'on est à la bonne version : https://wiki.auf.org/wikiteki?action=test
- faire quelques tests (gestion des acl surtout)
NB : le système d'upgrade de MoinMoin étant TRÈS tatillon, il vaut mieux, pour patcher un truc, mettre le fichier patché dans /etc/moinmoin ou tout autre répertoire. Ne pas toucher aux sources fournies, sinon l'upgradeur ne les mets pas à jour. Le nouveau système risque, alors, d'être buggé.
Corrections par rapport à 1.8.1
Fix AttachFile XSS issues (mis en place le 30 janvier 2009)
Fix other AttachFile XSS issues (mis en place le 30 janvier 2009)
Fix antispam XSS issue (mis en place le 30 janvier 2009)