Question

Arrière plan:

3-5 développeurs soutenant (et créant de nouvelles) applications internes pour une entreprise non logicielle. Nous utilisons des TF bien que je ne pense pas que cela compte beaucoup pour ma question.

Je veux pouvoir développer un pipeline de déploiement et adopter des techniques d'intégration / déploiement continues.

Voici à quoi ressemble notre arbre source en ce moment. Nous utilisons un seul projet d'équipe TFS.

$/MAIN/src/
$/MAIN/src/ApplicationA/VSSOlution.sln
$/MAIN/src/ApplicationA/ApplicationAProject1.csproj
$/MAIN/src/ApplicationA/ApplicationAProject2.csproj
$/MAIN/src/ApplicationB/...
$/MAIN/src/ApplicationC
$/MAIN/src/SharedInfrastructureA
$/MAIN/src/SharedInfrastructureB

Mon objectif (un pipeline de promotion assez typique)

  1. Lorsqu'un changement de code est apporté à une application donnée, je souhaite pouvoir créer cette application et déploiement automatique qui changent vers un serveur de développement.

    • Je dois également devoir construire des dépendances sur les composants d'infrastructure partagés.
    • J'ai souvent également des scripts ou des changements de base de données
  2. Si les tests de développeur passent, je veux avoir un déploiement manuellement déclenché mais automatisé de cette construction sur un serveur de mise en scène où les utilisateurs finaux examineront de nouvelles fonctionnalités.

  3. Une fois qu'il est approuvé par les utilisateurs finaux, je souhaite un déploiement automatique déclenché manuellement à la production

Question:

Comment puis-je adopter au mieux les techniques de déploiement continu dans un environnement multi-application? Beaucoup de conseils que je vois sont plus spécifiques à une application unique, comment est-ce le mieux appliqué à plusieurs applications?

  • Pour l'étape 1, est-ce que je configure simplement une construction d'équipe distincte pour chaque application?

  • Quelle est la meilleure approche pour accomplir les étapes 2 et 3 de la promotion de la dernière construction dans de nouveaux environnements?

  • J'ai bien vu cela fonctionner avec les applications Web, mais qu'en est-il des changements de base de données

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top