je viens de faire un plugin "svn update" à partir de celui de Cedric ; je
n'ai pas pris la même approche, voici les différences :
- là où il ajoutait un bouton d'admin "svn update" sur les pages publiques,
j'ai préféré une page spécifique dans l'espace privé
(ecrire/?exec=svn_update)
- on peut updater SPIP, le répertoire de squelettes, le répertoire de
plugins, etc : il suffit pour cela de lister les répertoires branchés
dans mes_options, sous la forme
define('_SVN_UPDATE_DIRS', './:plugins/');
(ici, la racine -- donc SPIP -- et le répertoire de plugins ; par défaut
seul ./ est prévu)
- seuls les admins numérotés explicitement sont autorisés à lancer la
procédure ; par défaut c'est l'admin numéro 1, ça se configure sous
forme de liste de numéros :
define('_SVN_UPDATE_AUTEURS', '1:3');
A noter, sous AlternC ça fonctionne si svn fait partie des binaires
autorisés (ce qui est contradictoire avec le mode de sécurité d'AlternC...
donc possible uniquement sur des machines qui font confiance à leurs
hébergés). Je vais voir avec les gens d'AlternC s'ils ont une solution à ce
problème...
je viens de faire un plugin « svn update » à partir de celui de Cedric ; je
n’ai pas pris la même approche, voici les différences :
…
A noter, sous AlternC ça fonctionne si svn fait partie des binaires
autorisés (ce qui est contradictoire avec le mode de sécurité d’AlternC…
donc possible uniquement sur des machines qui font confiance à leurs
hébergés). Je vais voir avec les gens d’AlternC s’ils ont une solution à ce
problème…
– Fil
Je viens de le tester sur un serveur perso, ça passe bien il faut bien penser à donner les droits au user qui execute apache (ou svn ?) d’ecrire dans les repertoires.
Je tente d'utiliser le plugin mais j'ai le message : Désolé, aucun répertoire n'est accessible en SVN.
Comment définir l'adresse snv de spip "svn://trac.rezo.net/spip" et de la zone "svn://zone.spip.org/spip-zone/_plugins_" ? Il faut les mettre dans mes_options.php ? Avec quelle syntaxe ?
Merci pour vos lumières.
Laurent Casagrande
Fil a écrit :
Coucou,
je viens de faire un plugin "svn update" à partir de celui de Cedric ; je
n'ai pas pris la même approche, voici les différences :
- là où il ajoutait un bouton d'admin "svn update" sur les pages publiques,
j'ai préféré une page spécifique dans l'espace privé
(ecrire/?exec=svn_update)
- on peut updater SPIP, le répertoire de squelettes, le répertoire de
plugins, etc : il suffit pour cela de lister les répertoires branchés
dans mes_options, sous la forme define('_SVN_UPDATE_DIRS', './:plugins/');
(ici, la racine -- donc SPIP -- et le répertoire de plugins ; par défaut
seul ./ est prévu)
- seuls les admins numérotés explicitement sont autorisés à lancer la
procédure ; par défaut c'est l'admin numéro 1, ça se configure sous
forme de liste de numéros :
define('_SVN_UPDATE_AUTEURS', '1:3');
A noter, sous AlternC ça fonctionne si svn fait partie des binaires
autorisés (ce qui est contradictoire avec le mode de sécurité d'AlternC...
donc possible uniquement sur des machines qui font confiance à leurs
hébergés). Je vais voir avec les gens d'AlternC s'ils ont une solution à ce
problème...
Bonjour ,
Il y a une dépendance de base sur l'existence de svn (la commande) sur la machine cible.
Exemple , puisqu'on en parle beaucoup , je ne l'ai pas trouvée chez 1&1.
Personellement , je ne mettrais jamais svn pour un compte de production.
(oui , c'est de la frime)
Je pense , et je suis persuadé aussi que tu es d'accord , les divers modes distributions doivent se rejoindre.
... salut aussi à Laurent et mon frerôt bien sur
(je me suis fais jeté récemment pareil en disant svn://machin.truc...)
--
toggg
Fil wrote:
Coucou,
je viens de faire un plugin "svn update" à partir de celui de Cedric ; je
n'ai pas pris la même approche, voici les différences :
- là où il ajoutait un bouton d'admin "svn update" sur les pages publiques,
j'ai préféré une page spécifique dans l'espace privé
(ecrire/?exec=svn_update)
- on peut updater SPIP, le répertoire de squelettes, le répertoire de
plugins, etc : il suffit pour cela de lister les répertoires branchés
dans mes_options, sous la forme define('_SVN_UPDATE_DIRS', './:plugins/');
(ici, la racine -- donc SPIP -- et le répertoire de plugins ; par défaut
seul ./ est prévu)
- seuls les admins numérotés explicitement sont autorisés à lancer la
procédure ; par défaut c'est l'admin numéro 1, ça se configure sous
forme de liste de numéros :
define('_SVN_UPDATE_AUTEURS', '1:3');
A noter, sous AlternC ça fonctionne si svn fait partie des binaires
autorisés (ce qui est contradictoire avec le mode de sécurité d'AlternC...
donc possible uniquement sur des machines qui font confiance à leurs
hébergés). Je vais voir avec les gens d'AlternC s'ils ont une solution à ce
problème...
Bonjour ,
Il y a une dépendance de base sur l'existence de svn (la commande) sur la machine cible.
Exemple , puisqu'on en parle beaucoup , je ne l'ai pas trouvée chez 1&1.
Personellement , je ne mettrais jamais svn pour un compte de production.
(oui , c'est de la frime)
Je pense , et je suis persuadé aussi que tu es d'accord , les divers modes distributions doivent se rejoindre.
Merci pour ça, mais je ne suis pas beaucoup aidé.
Sur mon serveur, il y a svn (la commande svn help fonctionne).
J'ai un site spip qui a été installé par en ftp depuis mon poste de travail (version 1.9.1) : http://neill.u-bourgogne.fr/crdp_1_9_1/
si j'utilise le plugin j'ai le message : Désolé, aucun répertoire n'est accessible en SVN.
Je pense commencer à comprendre, il faut que je fasse un svn checkout en ligne de commande sur mon serveur de svn://trac.rezo.net/spip/ dans le répertoire où est installé mon spip (/var/www/html/crdp_1_9_1/) et ensuite le plugin devrait fonctionner ? C'est ça ?
Si je souhaite garder à jour uniquement la branche stable de la 1_9_1 je fait svn checkout svn://trac.rezo.net/trac/spip/branches/spip-1.9 /var/www/html/crdp_1_9_1/
Cette commande installe une version svn de la branche 1.9 dans la répertoire var/www/html/crdp_1_9_1/ de mon serveur ?
Donc après un svn update fonctionnera.
encore une chose pour faire cela il faut avoir un accès en ligne de commande sur le serveur ? Comment fait-on si on a uniquement un accès ftp ?
Merci de me dire si j'ai compris.
--
__________________________
Laurent Casagrande
CRDP de Bourgogne - Dijon
__________________________
Je pense commencer à comprendre, il faut que je fasse un svn checkout en
ligne de commande sur mon serveur de svn://trac.rezo.net/spip/ dans le
répertoire où est installé mon spip (/var/www/html/crdp_1_9_1/) et
ensuite le plugin devrait fonctionner ? C'est ça ?
Oui
Si je souhaite garder à jour uniquement la branche stable de la 1_9_1 je
fait svn checkout svn://trac.rezo.net/trac/spip/branches/spip-1.9
/var/www/html/crdp_1_9_1/
Exactement
Cette commande installe une version svn de la branche 1.9 dans la
répertoire var/www/html/crdp_1_9_1/ de mon serveur ?
Donc après un svn update fonctionnera.
encore une chose pour faire cela il faut avoir un accès en ligne de
commande sur le serveur ? Comment fait-on si on a uniquement un accès ftp ?
Merci de me dire si j'ai compris.
Pour le checkout initial, tu peux faire un script php à déposer à la racine
du serveur du genre :
<?php
$a = exec('svn co svn://trac.rezo.net/trac/spip/branches/spip-1.9/ ./');
print_r($a);
?>
S'il fonctionne, ton install est sous SVN (et tu dois alors supprimer ce
script d'install pour évitrer toute blague...)
Evidememnt aucun plugin ne va fonctionner tant que SPIP n'est pas installé :
il manque une brique ici, un "spip-loader svn"...
Je tente d’utiliser le plugin mais j’ai le message : Désolé, aucun
répertoire n’est accessible en SVN.
Comment définir l’adresse snv de spip « svn://trac.rezo.net/spip » et de
la zone « svn://zone.spip.org/spip-zone/plugins » ? Il faut les mettre
dans mes_options.php ? Avec quelle syntaxe ?
Merci pour vos lumières.
Pour que l’update soit possible il faut que le site ait été construit à partir d’une descente directe via svn :
svn checkout svn://trac.rezo.net/spip/spip (pour la partie spip, pour les squelettes plugins … idem mais à partir de spip zone (voir les adresses sur http://zone.spip.org/trac/spip-zone/ )
le plugin permet ensuite de faire des mises à jour (svn update) depuis le repository spip.
au minimum tu dois avoir svn utilisable sur ton serveur et pouvoir lancer la commande de checkout pour la creation locale des fichiers.
OK , il faut exec & svn + un shell ?
Je répondais à fil au départ en fait , laurent.
--
toggg
Fil wrote:
Je pense commencer à comprendre, il faut que je fasse un svn checkout en ligne de commande sur mon serveur de svn://trac.rezo.net/spip/ dans le répertoire où est installé mon spip (/var/www/html/crdp_1_9_1/) et ensuite le plugin devrait fonctionner ? C'est ça ?
Oui
Si je souhaite garder à jour uniquement la branche stable de la 1_9_1 je fait svn checkout svn://trac.rezo.net/trac/spip/branches/spip-1.9 /var/www/html/crdp_1_9_1/
Exactement
Cette commande installe une version svn de la branche 1.9 dans la répertoire var/www/html/crdp_1_9_1/ de mon serveur ?
Donc après un svn update fonctionnera.
encore une chose pour faire cela il faut avoir un accès en ligne de commande sur le serveur ? Comment fait-on si on a uniquement un accès ftp ?
Merci de me dire si j'ai compris.
Pour le checkout initial, tu peux faire un script php à déposer à la racine
du serveur du genre :
<?php
$a = exec('svn co svn://trac.rezo.net/trac/spip/branches/spip-1.9/ ./');
print_r($a);
?>
S'il fonctionne, ton install est sous SVN (et tu dois alors supprimer ce
script d'install pour évitrer toute blague...)
Evidememnt aucun plugin ne va fonctionner tant que SPIP n'est pas installé :
il manque une brique ici, un "spip-loader svn"...
Oui il faut tout ça, y compris les droits pour httpd d'écrire les fichiers
php (ce qui n'est pas top sécure).
Une autre méthode serait de faire un "touch" sur un fichier nommé (par
exemple) update_svn.txt, et d'avoir un démon qui toutes les 5 minutes
recherche ces fichiers sur le disque et fait les mises à jour
correspondantes. Mais on entre alors dans la conception complète d'un
serveur (ce qui est de plus en plus courant dans la réalité de toutes
façons, cf. dedibox).
Je pense commencer à comprendre, il faut que je fasse un svn checkout en ligne de commande sur mon serveur de svn://trac.rezo.net/spip/ dans le répertoire où est installé mon spip (/var/www/html/crdp_1_9_1/) et ensuite le plugin devrait fonctionner ? C'est ça ?
Oui
Si je souhaite garder à jour uniquement la branche stable de la 1_9_1 je fait svn checkout svn://trac.rezo.net/trac/spip/branches/spip-1.9 /var/www/html/crdp_1_9_1/
Exactement
Merci beaucoup pour ces confirmation.
Encore une petite question, est-ce que je peut faire un chechout initial dans le répertoire ou existe un spip 1.9.1 installé en ftp ? ou vaut-il mieux utiliser un autre répertoire tout neuf ?
--
__________________________
Laurent Casagrande
CRDP de Bourgogne - Dijon
__________________________
Encore une petite question, est-ce que je peut faire un chechout initial
dans le répertoire ou existe un spip 1.9.1 installé en ftp ? ou vaut-il
mieux utiliser un autre répertoire tout neuf ?
Je crois qu'il faut démarrer par un répertoire vierge, sinon tu auras des
erreurs sur chaque fichier. Ensuite tu peux copier le contenu dans l'autre
répertoire, à condition de ne pas oublier les répertoires cachés .svn/ qui
sont dans toute l'arborescence.
Autre truc avec SVN : l'espace disque utilisé double, puisque SVN conserve
(dans ces répertoires .svn) une copie "propre" de chaque fichier pour
pouvoir faire des diff très vite.