Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Préparer le passage en SPIP 3.1 ou 3.2 #22

Closed
3 tasks done
brunob opened this issue Jun 23, 2019 · 11 comments
Closed
3 tasks done

Préparer le passage en SPIP 3.1 ou 3.2 #22

brunob opened this issue Jun 23, 2019 · 11 comments

Comments

@brunob
Copy link
Member

brunob commented Jun 23, 2019

Je viens de tester un passage en 3.2 sur une version locale et ça fonctionne bien après les quelques commits que j'ai envoyé ici https://github.com/seenthis/seenthis_squelettes/tree/spip31

Ce qu'il reste à faire :

@brunob
Copy link
Member Author

brunob commented Jul 7, 2019

Log de ce que j'ai fait pour la migration en 3.2 :

-x basculer la dev en 3.2 en l'état
-x switch le SPIP dev en 3.2 + svn up de tous les plugins + switch de branche pour seenthis & seenthis_squelettes
-x bloquer l'envoi de mail sur la dev define('_TEST_EMAIL_DEST', ''); dans config/mes_options.php
-x rsync IMG seenthis vers dev rsync -av /var/www/seenthis.net/public_html/IMG/ /var/www/stdev.zoo-logique.org/public_html/IMG
-x poster un message d'annonce depuis le compte seenthis
-x bloquer la prod en mv tmp/sesssions tmp/_sessions & touch tmp/sessions
-x lancer une synchro vers la dev (dont la base reste en 2.1 tant qu'on ne lance pas l'upgrade) 15h30
-x lancer base_repair pour forcer l'upgrade des tables spip
-x request_terminate_timeout = 300 dans conf/php dev (retiré)
-x lancer l'upgrade SPIP + admin_plugin
-x l'upgrade de la base ayant foiré, lancer un mysqlcheck --repair --databases stdev puis suppression du connect et lancement de la phase d'install pour que l'upgrade de base se fasse enfin
-x mise à jour de conf/nginx/rewrites.conf
-x copier les conf de seenthis.net vers la dev sauf php
-x mettre à jour le mes_options de la dev
-x sync export de seenthis vers dev rsync -av /var/www/seenthis.net/public_html/export/ /var/www/stdev.zoo-logique.org/public_html/export

sur stdev après migration

  • modif du load de 2 à 3 dans ecran_securite
  • modif de mes_options pour fix pb redirect 302
    // régler le bug de redirige_par_entete avec nginx cf https://core.spip.net/issues/2529#note-5
    define('_SERVER_APACHE', true);
  • suppression de la table spip_resultats qui n'avait pas migré proprement lors de l'upragde (champs non présents) et recréation à partir de la structure de la table issue d'un SPIP 3.2

diff conf/

  • spip : done
  • logrotate : diff user => todo à mettre à jour
  • mysql : idem, rien à faire
  • nginx : plein
  • php : copier la prod vers la dev et modifier la valeur de php vers 7 => done
	pm.max_children = 60
	pm.start_servers = 10
	pm.min_spare_servers = 10
	pm.max_spare_servers = 30
	pm.max_requests = 1000

@brunob
Copy link
Member Author

brunob commented Jul 8, 2019

Hop,

net :: seenthis.net :: Disk usage in percent
	OKs: /srv is 89.47.

Le disque du serveur est bien plein depuis la migration vers SPIP 3.2, l'espace occupé par l'ancienne version pourrait être libéré, au moins en supprimant le dossier IMG qui a été synchronisé d'un site à l'autre. Votre avis ?

@rastapopougros
Copy link

Bé oui, pas besoin de l'avoir en double à priori. Et pareil pour la base, si ça a été installé dans une autre.

@brunob
Copy link
Member Author

brunob commented Jul 8, 2019

Et donc la question : a-t-on besoin d'une instance de dev sur le serveur ? :)

@rastapopougros
Copy link

Ajout de ce qu'on a fait pour Sphinx :

  1. Le schéma de l'index avait changé, et le plugin SPIP attendait un champ "date_indexation" qui n'existait pas. On a donc changé la déclaration dans /var/local/shpinx puis on a supprimé l'index et on a tout ré-indexé à zéro avec le script PHP du plugin seenthis_sphinx (car le stockage attendu est fait uniquement avec des fonctions persos, donc on utilise pas les choses du plugin : il va falloir remettre ça au propre)
  2. Dans les squelettes, la balise #PROPERTIES de la boucle SPHINX passe désormais par un filtre automatique pour json_decode le contenu. Et dans les anciens squelettes, il y avait ce filtre ajouté après, et sans étoile sur la balise. Du coup c'était appliqué deux fois, et ça ne sortait rien d'utilisable. Soit il faut #PROPERTIES tout court, soit il faut #PROPERTIES*|json_decode

@rastapopougros
Copy link

@brunob le principe de pré-prod est utile surtout quand on fait un gros changement, juste avant de passer en vraie prod, pour pouvoir tester avec pile exactement les mêmes conditions. Pour le dev/test de base, ça peut être sur un autre serveur, avec des données de test, etc.

Il sera toujours temps de re-dupliquer plus tard, un jour où on aura vraiment besoin de tester une pré-prod sur le même serveur.

@brunob
Copy link
Member Author

brunob commented Jul 8, 2019

Parfait, je ferai le ménage dans la semaine.

@brunob
Copy link
Member Author

brunob commented Jul 9, 2019

Comme je le disais sur la liste :

C'est un problème de rewrites rule non transposée en nginx. La rewrite apache originale qui gère les urls arbos de SPIP (et donc celles de seenthis) est ici :

https://core.spip.net/projects/spip/repository/entry/spip/htaccess.txt#L86

Je remarque aussi que la rewrite rule qui prend en charge le robots.txt de SPIP n'est pas fonctionnelle cf https://seenthis.net/robots.txt

Alors que le robots.txt semble avoir été accessible sur la version 2.1 cf https://web.archive.org/web/20190701000000*/https://seenthis.net/robots.txt

Il semble aussi que les rewrites pour les sites déconnent :

https://seenthis.net/sites/1116845 KO
https://seenthis.net/spip.php?page=site&id_syndic=1116845 OK

=> corrigé par seenthis/seenthis@6c7da00 pour les urls des sites

@brunob
Copy link
Member Author

brunob commented Jul 9, 2019

Je viens de supprimer IMG dans l'ancien seenthis, ça permet déjà de gagner de l'espace => /dev/sdb1 394G 189G 187G 51% /srv

@brunob
Copy link
Member Author

brunob commented Jul 9, 2019

Trouvé pour l'accès au robots.txt, il suffisait de décommenter la ligne location = /robots.txt { access_log off; log_not_found off; } dans conf/nginx/drop.conf. Il faudra penser à mettre à jour toutes ces infos dans le wiki https://github.com/seenthis/hebergement/wiki/Configuration-nginx => done https://github.com/seenthis/hebergement/wiki/Configuration-nginx/745cbb0512adeaf3eea9c9afc415a3dd2ef6696a

@brunob
Copy link
Member Author

brunob commented Jul 12, 2019

Maintenant que la migration est faite, je pense qu'on peut fermer le ticket passer à l'étape suivante "ménage et réorganisation" cf #23 :)

@brunob brunob closed this as completed Jul 12, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants