2009-04-02 8 views
4

Quelles sont les meilleures pratiques pour l'enregistrement d'une configuration de machine (s) de test/construction pendant la durée de vie d'un projet? Si vous devez fournir un correctif pour la version précédente de votre produit, vous devrez probablement recharger le même compilateur et les mêmes outils de support pour réémettre la version corrigée. Quoi et comment enregistrez-vous? Les choses évidentes sont:

la version du système d'exploitation et le niveau de correctif,
version du compilateur/IDE et le niveau de correctif
Outils/bibliothèques tiers.

Ma première pensée est de garder un fichier journal de toutes les exigences. Ce fichier journal irait dans votre VCS.Comment préserver l'environnement de construction pendant le cycle de vie du produit

Répondre

2

VMWare Virtualisation (ou d'autres produits similaires) sont idéales pour ce type de chose. Construisez un environnement de développement/construction/test complet, et laissez-le configuré juste à cet effet. Vous pouvez prendre l'image hors ligne, la sauvegarder sur un DVD et la rallumer simplement lorsque vous en avez besoin.

2

J'utilise maven pour java avec le plugin enforcerer donc toutes ces choses sont stockées dans mon modèle d'objet projet, même la version de maven elle-même qui est requise. Tant que je parviens à obtenir la bonne version du contrôle de version, je suis libre à la maison.

1

Les outils tiers et les bibliothèques vont dans le contrôle de version avec tout le reste; Nous avons un arbre libs qui se trouve sous notre tronc VCS juste à côté de notre arborescence d'applications, donc il est inclus avec toutes les branches ou balises que nous créons. Le seul problème que je n'ai pas encore résolu est celui des outils et bibliothèques Windows qui ont besoin de leurs propres programmes d'installation au lieu de manquer de tout ce que VCS leur fournit.

Pour le système d'exploitation et le compilateur, je recommande de créer une machine virtuelle pour chaque version si vous ne pouvez pas installer plusieurs versions du compilateur en parallèle. Ensuite, votre wiki de projet peut documenter quelle VM et quelle version du compilateur utiliser pour une build donnée. Ce n'est pas automatique comme le serait votre fichier journal, mais il fournit un environnement prêt à l'emploi (au lieu de devoir réinstaller une machine pour qu'elle corresponde à votre fichier journal). Certains projets vérifient l'ensemble de leur compilateur dans le contrôle de version, mais cela me semble excessif (et ne joue pas bien avec les IDE et les compilateurs qui ont besoin de leurs propres installateurs).

Nous ne surveillons pas les niveaux de patch pour le système d'exploitation et le compilateur. Je me rends compte qu'il est possible qu'un correctif rompe ou change quelque chose, mais la chance semble si faible que le rapport coûts-avantages n'est tout simplement pas là.

Questions connexes