Tout d'abord, mon problème (simplifié) en quelques mots :
Le cycle de publication que je pratique au travail est le suivant : à chaque publication, nous effectuons actuellement une copie/déploiement complet de l'application Web. Pour faire simple, nous générons une archive, nous l'envoyons par SCP sur le serveur de production et nous l'installons. C'est aussi simple que cela. La pile technologique est LAMP, il n'y a donc pas d'étapes de compilation de code pour le moment.
Le problème est que cette archive devient volumineuse et que nous devons la déployer sur de nombreux serveurs. Bien qu'il s'agisse d'un processus très fiable, les frais généraux et le temps nécessaires pour effectuer ce déploiement s'accumulent.
Ce que je veux faire, c'est réaliser des versions delta/patch pour cette application web LAMP qui ne nécessite pas le déploiement complet de l'archive.
J'utilise SVN pour mon VCS, et je ne veux pas que mes applications déployées soient des copies de travail SVN. J'ai expérimenté l'utilisation de patch (outil CLI linux) et de fichiers de patch, mais cela présente des trous dans le processus. Par exemple, Parcheando le même fichier plus d'une fois, il y a des frais généraux dev/ops pour suivre quel(s) fichier(s) ont été patchés, de quelles versions à quelles versions, sur le site de production (ce qui devient rapidement compliqué lorsque plusieurs patches séquentiels sont effectués).
En fin de compte, j'ai besoin d'une méthode fiable pour faire une version delta/patch pour une application web LAMP, qui ne nécessite pas une copie de travail SVN sur le serveur web de production.
Comment les autres résolvent-ils ce problème ? Utilisez-vous simplement rsync avec une option de suppression, et évitez les fichiers patch ?