1

Puisque Flanker s'y met, à mon tour smile

Creep est un outil de déploiement incrémental (i.e. il ne déploie que les fichiers modifiés) qui peut travailler à partir d'un repo Git ou d'un simple dossier, et transfère ses fichiers via FTP ou SSH. C'est un outil que j'utilise depuis quelques années pour déployer yAronet, et à l'époque je n'avais rien trouvé de facile à utiliser pour cet usage (le serveur de production de yAronet n'est accessible qu'en FTP donc rsync n'était pas une option, et à l'inverse mon serveur de dev n'est accessible qu'en SSH). Aujourd'hui je viens de faire une recherche et il semble que PHPloy aurait pu être une bonne option s'il avait existé 2 ans plus tôt, mais je pense que Creep conserve quelques avantages :
  • Il peut déployer des dossiers qui ne sont pas gérés par Git (dans ce cas il mémorise le hash des fichiers plutôt que de reposer sur l'historique Git) ;
  • Il fonctionne aussi par SSH simple et utilise un mode de transfert plus efficace dans ce cas (tarball de tous les fichiers, transfert et décompression sur le serveur cible) ;
  • On peut configurer des traitements à effectuer pour certains fichiers, par exemple minifier automatiquement le JavaScript ou compiler les CSS avant transfert ;
  • Le code est en Python sans dépendance, pour un outil en ligne de commande c'est plus léger qu'un programme en PHP qui dépend de plusieurs bibliothèques.

Je n'ai passé ce projet sous GitHub que depuis peu donc la documentation vaut ce qu'elle vaut, mais si ça peut servir à quelqu'un je serais intéressé par vos avis smile

https://github.com/r3c/creep
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

2

(c'est moi, ou en ce moment tout le monde préfère coder des outils pour codeur que des applis ? ^^)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3

Tu veux dire sur un échantillon de deux personnes ? grin

J'avais besoin de cet outil pour yAronet et j'en ai cherché un avant de commencer parce que ça m'ennuyait de démarrer un projet juste pour débloquer un autre projet. Si PHPloy avait existé à ce moment je serais certainement parti dessus, quitte à ajouter les 2 ou 3 fonctionnalités manquantes. Maintenant tant pis, c'est fait et ça fonctionne plutôt bien à mon goût, d'où ce sujet ^^
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

4

Zeph (./3) :
Tu veux dire sur un échantillon de deux personnes ? grin
Oh non, je parle en général, j'ai l'impression que dernièrement tout le monde code des gestionnaires de paquets, des outils de déploiement, des bidules qui supervisent des machins qui génèrent des scripts de configuration de build de trucs (comme dans le strip qui a été posté récemment).

Mais c'est pas une critique de ce que tu as fait, en premier lieu parce que je n'y connais rien grin

enfin quand même, pour le nom y'avait un truc tout trouvé : Zeph Deploy -> Zeploy embarrassed)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5

Ah oui, alors je suis assez d'accord, et triste d'y contribuer encore un peu plus grin (si ça se trouve y'avait un module nodejs qui faisait à peu près ce dont j'avais besoin, mais avoir nodejs comme dépendance... bof ^^)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

6

Pourquoi ne pas avoir utilisé sftp/scp plutot que cette bidouille utilisant ssh? (je n'ai pas regardé le code très longtemps, mais si j'ai bien compris tu ouvre un session ssh, et tu pipe le contenu du fichier, ca marche c'est sur, mais ya plus simple: scp )
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

7

Ça me permet de faire tout en un : lire la révision actuellement déployée, envoyer les nouveaux fichiers, lister et supprimer ceux qui doivent l'être. Copier des fichiers de cette façon n'est pas plus compliqué qu'utiliser scp : tar -cf - something | ssh remote "tar -xf -" smile

Je peux ajouter l'implémentation scp facilement, mais a priori elle n'apporterait rien de plus. En revanche je vais peut-être ajouter webdav.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

8

Zerosquare (./2) :
(c'est moi, ou en ce moment tout le monde préfère coder des outils pour codeur que des applis ? ^^)
http://xkcd.com/1629/ ?
J'aime bien essayer de faire les choses proprement, et quand il n'y a pas d'outils correspondant, bah j'ai tendance à vouloir le faire, même si ça m'embête plus qu'autre chose. Et mine de rien, il y a encore plein de choses qui manquent grin
Exemple à la con : je n'ai trouvé aucun outil de test (type Jenkins) qui permette de créer à la volée un véritable environnement de test (genre créer une base LDAP, un micro-cluster Hadoop/Spark, …).
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant