J'ai beaucoup lu récemment sur divers processus de déploiement d'applications Web en utilisant SVN ou GIT, en vue de repenser la façon dont nous déployons actuellement où je travaille.
Comme c'est le cas avec de nombreuses saveurs d'Agile, il est supposé que tout ce qui est engagé dans la maîtrise ou le tronc est prêt pour la production. GitHub et Etsy, http://codeascraft.etsy.com/2010/05/20/quantum-of-deployment/, disent qu'ils fonctionnent sur cette base (bien qu'Etsy ait en fait un environnement de transfert).
Ce processus suppose que tous les tests unitaires et les tests CI ont été exécutés. Vous exécutez les tests localement et sur CI, puis vous vous engagez sur le tronc. Donc, à ce stade, votre code est techniquement solide.
Votre code peut être techniquement correct, mais les tests utilisateurs / fonctionnels peuvent révéler plus de bogues, en particulier en ce qui concerne les tests frontaux.
Ma question est la suivante. Où les AQ et les propriétaires d'entreprise testent-ils les modifications de fonctionnalités que vous avez mises en œuvre? Sur votre machine de développement locale avant de vous engager sur le tronc, ou sur une machine d'assurance qualité / de transfert?
Si vous avez une machine intermédiaire qui s'exécute sur le tronc et que vous supposez que tout le code engagé dans le tronc est prêt pour la production ... eh .. alors à quel moment le code est-il signé et prêt à entrer en production à la fois technique et commercial perspective? Si vous n'avez qu'une seule machine intermédiaire, de nombreux développeurs et que c'est là que le code doit être QA, alors comment pouvez-vous déployer à partir du tronc, car de nombreux changements de développeurs peuvent attendre la signature.
J'aimerais savoir comment les autres ont abordé cela?