Déployer un projet depuis un serveur SVN

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Déployer un projet depuis un serveur SVN

Re: Déployer un projet depuis un serveur SVN

par Nagol » 01 août 2009, 20:28

en fait ce que tu veux c'est de la déduplication mais au niveau fichier, c'est exactement ce que fait rsync, il vérifie que les fichiers que tu veux envoyer ne sont pas déja la, n'importe quel client ftp le fait aussi et finalement subversion ou cvs le font aussi, c'est à peine une feature parceque ca repose sur du bon sens, dans une chaine de transmission de donnée, on favorise le maillon qui est le plus faible cad quasi toujours la communication réseau (coupures, latence, erreurs variées, lenteurs) donc on évite d'envoyer ce qui n'est pas nécessaire, la ou scp se différencie c'est qu'ils se fichent de vérifier, ce n'est qu'un cp over ssh cad une copie complete.

maintenant si tu veux maintenir un état de réplication comme le ferait par exemple deux serveur ldap ou deux serveurs sql mais entre deux filesystems, la tu n'as pas beaucoup d'options parceque c'est simplement de très mauvais gout que de faire ce genre de choses (niveau perf notamment) ce que je te propose c'est de choisir l'outil qui te convient le mieux rsync ou ftp sont probablement les meilleurs candidats) et de te scripter une tache toutes les heures qui s'occupe de synchroniser tes données, cad utiliser cron. Si tu cherches à faire cela dans un contexte de backup et bien y'a des solutions profesionelles donc je me bornerais à citer ma boite (puisque c'est mon domaine) que tu peux retrouver ici: www.arkeia.com

par Hywan » 31 juil. 2009, 22:24

Pas mieux.

FTP ça set à envoyer des données, sans chercher à comprendre, mais il le fait bien, très bien même : plusieurs fichiers en même temps, sait reprendre si ça coupe, n'écrase pas un fichier si ça s'arrête brusquement etc.
Para contre, si tu veux synchroniser, c'est à dire modifer ce qui est seulement nécessaire, je ne connais pas mieux que rsync, mais pas disponible sur toutes les machines en effet (hébergement standard par exemple).

Ce sont deux choses différentes.

par Sékiltoyai » 31 juil. 2009, 18:34

tu peux tout à fait faire ca avec un client/serveur ftp correct qui plus est on n'a jamais fait mieux que ftp pour transférer des données, c'est protocolairement fait pour ça quand meme.
Pas mieux :D
En fait je cherche à ce que le serveur distant puisse voir ce qui à été ajouter / modifier / supprimer et faire les mise à jour nécessaires, sans écraser complètement la version en ligne et remettre la nouvelle, j'espère être assez clair :)
Malheureusement, si tu veux ne mettre à jour que les nouveaux fichiers, il faudra coder ton propre script. Et par ftp tu vas en chier. Dans ce cas, je te suggère de copier l'intégralité des données à chaque fois, parce que sinon tu ne t'en sortiras pas.

par Hywan » 31 juil. 2009, 14:58

Bah on appelle ça une synchronisation et …

par agité » 31 juil. 2009, 14:38

rsync -R directory user@server:/tmp/directory

la commande d'ywan est gentille mais rsync ca fonctionne comme un scp memes arguments, et ca n'est pas plus rapide qu'un scp à moins que tu ai des fichiers distants qui soit déja la.

et oui te faut rsync en distant aussi.
Ok donc c'est pas ce que je recherche, il me faudrait un outil de synchronisation mais qui marche via FTP pour être sur que si l'hébergement n'est pas chez nous on puisse quand même utiliser l'outil. J'imagine que ça doit exister ce genre d'outil.
un outil de synchronisation via ftp?
ben... ftp non?

tu peux tout à fait faire ca avec un client/serveur ftp correct qui plus est on n'a jamais fait mieux que ftp pour transférer des données, c'est protocolairement fait pour ça quand meme.
Je suis pas si je suis clair dans mes explications :?

En fait je cherche à ce que le serveur distant puisse voir ce qui à été ajouter / modifier / supprimer et faire les mise à jour nécessaires, sans écraser complètement la version en ligne et remettre la nouvelle, j'espère être assez clair :)

par Nagol » 31 juil. 2009, 14:34

rsync -R directory user@server:/tmp/directory

la commande d'ywan est gentille mais rsync ca fonctionne comme un scp memes arguments, et ca n'est pas plus rapide qu'un scp à moins que tu ai des fichiers distants qui soit déja la.

et oui te faut rsync en distant aussi.
Ok donc c'est pas ce que je recherche, il me faudrait un outil de synchronisation mais qui marche via FTP pour être sur que si l'hébergement n'est pas chez nous on puisse quand même utiliser l'outil. J'imagine que ça doit exister ce genre d'outil.
un outil de synchronisation via ftp?
ben... ftp non?

tu peux tout à fait faire ca avec un client/serveur ftp correct qui plus est on n'a jamais fait mieux que ftp pour transférer des données, c'est protocolairement fait pour ça quand meme.

par agité » 31 juil. 2009, 13:47

rsync -R directory user@server:/tmp/directory

la commande d'ywan est gentille mais rsync ca fonctionne comme un scp memes arguments, et ca n'est pas plus rapide qu'un scp à moins que tu ai des fichiers distants qui soit déja la.

et oui te faut rsync en distant aussi.
Ok donc c'est pas ce que je recherche, il me faudrait un outil de synchronisation mais qui marche via FTP pour être sur que si l'hébergement n'est pas chez nous on puisse quand même utiliser l'outil. J'imagine que ça doit exister ce genre d'outil.

par Hywan » 31 juil. 2009, 13:46

Uè j'ai mis ma commande complète mais on peut réduire ^^.

par Nagol » 31 juil. 2009, 13:42

rsync -R directory user@server:/tmp/directory

la commande d'ywan est gentille mais rsync ca fonctionne comme un scp memes arguments, et ca n'est pas plus rapide qu'un scp à moins que tu ai des fichiers distants qui soit déja la.

et oui te faut rsync en distant aussi.

par agité » 31 juil. 2009, 12:51

Code : Tout sélectionner

rsync --verbose --progress --stats --compress --rsh=/usr/bin/ssh \ --recursive --times --perms --links --delete \ $SVN_REPOSITORY/ $SERVER:/var/svn/repository/
par exemple.
Ok mais ça demande quoi comme configuration pour le serveur qui héberge ? D'avoir Rsync d'installer ?

Je comprends pas très bien :?

par Hywan » 31 juil. 2009, 12:45

Code : Tout sélectionner

rsync --verbose --progress --stats --compress --rsh=/usr/bin/ssh \ --recursive --times --perms --links --delete \ $SVN_REPOSITORY/ $SERVER:/var/svn/repository/
par exemple.

par agité » 31 juil. 2009, 12:35

Bah pour faire un réplicat de ton dépôt SVN, tu as scp, mais rsync est bien plus rapide. C'est ce que j'utilise et ça va très bien.
Alors pourrais tu me dire comment faire pour envoyer des fichiers sur le serveur via Rsync ?

par Hywan » 31 juil. 2009, 12:34

Bah pour faire un réplicat de ton dépôt SVN, tu as scp, mais rsync est bien plus rapide. C'est ce que j'utilise et ça va très bien.

par agité » 31 juil. 2009, 12:21

Hey :-),

Une question con hein, mais pourquoi passer par FTP ?
Parce que je ne pense pas pouvoir faire autrement, que je ne connais que le protocol FTP pour faire des transfert sur le serveur distant, mais si tu as des propositions hésite pas je suis ouvert.

par Hywan » 31 juil. 2009, 12:15

Hey :-),

Une question con hein, mais pourquoi passer par FTP ?