Mise en place d'un serveur de développement web via git

Bonsoir.

Voila voila. Sur des projets personnels je vais me retrouver à développer avec plusieurs autres personnes. Avant c’était tout simple mais maintenant les choses se compliquent.

Concernant mon architecture, j’ai actuellement pour serveur de dev un kimsufi chez ovh. Les machines clients peuvent être sous mac, windows ou encore linux.

J’ai installé git et l’ai configuré.
Mon projet se découpe en deux branches majeurs. La branche master qui est la version prod courante et la branche developpment qui est la branche de dev.
Les développeurs pour développer des fonctionnalités se mettent dans la branche developpment et créent de nouvelles branches que l’on mergera plus tard.

Jusque là c’est très standard je pense.
Pour ce qui est des tests, j’aimerai que mes développeurs puissent programmer et tester directement sur le serveur.

Je leur ai donc créé à chacun un répertoire web accessible via un sous-domaine d’un de mes domaines. Jusque-là tout va bien.
Ensuite j’ai mis en place un hook post-receive. Donc quand un de mes développeurs push, son répertoire à lui est automatiquement mis à jour et donc il peut tester son code.

Tout va encore bien ici.

Maintenant, je trouve ça vraiment très contraignant… Pour un développement applicatif je ne dis pas. Mais pour du développement web, on fait des tests vraiment régulièrement. Un intégrateur qui fait du css peut être amené à changer par moment un ou deux caractères ou encore faire des modifications par tâtonnement et donc effectuer des push à des intervalles très courts. Je trouve ça assez moyen et surtout, c’est une perte de temps considérable. Commit puis push aussi fréquemment…

Je pensais donc à une solution.
Sur mon serveur, le répertoire d’un développeur est localisé ainsi : /home/developpment/user
Dans ce répertoire il aura tous ses projets web.
Serait-il possible de faire un montage réseau de windows par exemple vers ce répertoire sur un serveur distant. Ainsi je pourrai facilement avec Netbeans créer un nouveau projet directement dans ce répertoire si je l’avais monté par exemple sur le lecteur G. Je pourrai donc développer et mettre à jour le code facilement. Accéder à toutes les fonctionnalités de versionning de git (contrairement à une connection de netbeans en sftp), et donc mes développeurs pourraient avoir à commit/push plus rarement.

Auriez-vous des idées? J’ai bien eu quelques idées via samba ou nfs mais étant donné que mon serveur de développement est distant je ne sais trop comment faire.
Ou passez-vous vous même par d’autres méthodes pour vos serveurs de développement? (c’est la première fois que j’en met un en place. Au boulot on a bien un serveur de dev mais il est local et surtout ce n’est pas moi qui ait configuré ça, je ne sais pas trop comment le serveur debian se retrouve monté dans les lecteurs réseau windows).

Bonjour,
il y à un truc que je ne comprends pas. Vous avez choisi git, un système distribué. Pourquoi les devs devraient ils faire toutes leurs modifs sur le serveur maitre, alors qu’il peuvent le faire sur leur clone local ?
Ca me semble plus efficace.

En fait, sous windows par exemple, on se retrouve à devoir utiliser wamp en tant que serveur local pour le développement. Wamp qui souffre de l’absence d’APC par exemple, et dans le cas d’un développement avec Symfony2 ça se ressent. L’idée serait de s’épargner la configuration d’un serveur local pour les tests.
Pour ça je voudrais simuler un répertoire local sur nos machines qui serait un point de montage du serveur distant.

Mais bon, si c’est impossible je me rabattrai sur un développement local ce n’est pas vraiment gênant. J’aurai juste trouvé ça sympathique.

OK, je comprends mieux. Tu veux monter une partition de ton serveur distant sur ton poste local. Via internet, tu as intéret à avoir une bonne connexion, sinon ça va ramer.
un simple nfs me semble un peu risqué.
un truc comme ça peut étre:
thedev.net/mount_remote_partitio … fuse_sshfs

Le problème ici c’est que, sauf erreur de ma part, fuse et ssh ne sont pas très compatible avec windows :smiley:

quelle idée de faire du dev sur des postes windows …
Et samba over internet, je ne sais pas trop ce que ça peux donner …
éventuellement avec un VPN …