Corrigez-moi si je me trompe, mais un "build" est une "compilation", et pas toutes les langues compilent. L'intégration continue implique de construire des composants pour voir s'ils continuent à fonctionner au-delà des tests unitaires, ce que je simplifierais peut-être trop. Mais si votre projet implique un langage qui ne compile pas, comment réalisez-vous des builds nocturnes ou utilisez-vous des techniques d'intégration continues?Pouvez-vous faire des "builds" avec des scripts PHP ou un langage interprété?
Répondre
Hmm ... Je définirais le «bâtiment» comme quelque chose comme «préparer, emballer et déployer tous les artefacts d'un système logiciel». La compilation en code machine n'est qu'une des nombreuses étapes de la construction. D'autres peuvent consulter la dernière version du code de scm-system, obtenir des dépendances externes, définir des valeurs de configuration en fonction de la cible sur laquelle le logiciel est déployé et exécuter une sorte de suite de tests pour s'assurer que vous avez construire "avant de vous déployer réellement.
Le logiciel "Building" peut/doit être fait pour n'importe quel logiciel, indépendamment de votre langage de programmation. Les langages interprétés ont l'inconvénient que les erreurs syntaxiques ou structurelles (par exemple, appeler une méthode avec des paramètres erronés, etc.) ne seront normalement détectées qu'à l'exécution (si vous n'avez pas d'étape séparée dans votre construction qui vérifie ces erreurs, par ex. avec PHPLint).
Ainsi (automatisé) TestCases (comme tests unitaires - voir PHPUnit ou SimpleTest - et frontend Tests - voir Selenium) sont d'autant plus important pour les grands projets PHP pour assurer la bonne santé du code.
Il y a un Build-outil (comme Ant pour Java ou d'un râteau pour Ruby) pour PHP aussi: Phing
CI-Systems comme Xinc ou Hudson sont simplement utilisés pour automagiquement (comme à chaque fois qu'un changement est vérifié dans scm) empaquetez votre code, vérifiez s'il contient des erreurs évidentes, lancez vos tests (en bref: lancez votre build) et rapportez les résultats à votre équipe de développement.
Créer une étiquette quotidienne de votre tronc de contrôle de source en cours?
- 1. Travailler avec un langage interprété sévèrement limité
- 2. Envoyer des données entre deux scripts PHP
- 3. Cron exécutera-t-il des fichiers php ou seulement des scripts CGI?
- 4. Comment détecter des builds Delphi spécifiques?
- 5. Comment faire une classe imbriquée PHP ou des méthodes imbriquées?
- 6. Exécution des builds dans le cloud
- 7. Programmation CGI avec des scripts shell
- 8. Faire un site Web avec des profils
- 9. Avec subversion ou TFS, comment allez-vous configurer des builds automatiques?
- 10. Suppression de fichiers avec des scripts python
- 11. Exécuter des scripts Mysql dans un lot?
- 12. Logiciels ou scripts gratuits pour le formatage des requêtes SQL
- 13. générer des scripts SQL
- 14. Créer un nouvel ordinateur en utilisant des scripts
- 15. documentation des paramètres des scripts shell
- 16. Travailler avec des sessions - PHP
- 17. Faire des liens cliquables en PHP avec twitterlibphp?
- 18. Comment puis-je faire cela avec des tableaux PHP?
- 19. meilleur langage ou programme pour trouver des modèles et des analyses statistiques?
- 20. PHP comme un langage de programmation de bureau
- 21. Zend_Form avec des scripts xhtml (sans l'aide de décorateurs)
- 22. Faire correspondre des lignes contenant un mot avec des permutations
- 23. latex et unicode: comment écrire des symboles spéciaux d'autres scripts, ou importer des symboles?
- 24. Utilisez-vous régulièrement des builds comme outil de codage?
- 25. Wix, PostgreSQL install, exécution des scripts Postgresql
- 26. Je voudrais faire une correspondance de sous-chaîne simple avec des scripts shell
- 27. Comment savoir avec certitude si FastCGI est utilisé pour exécuter des scripts php?
- 28. Apprendre un langage Web
- 29. Comment puis-je spécifier dans mon fichier de configuration ccnet comment faire des builds quotidiens?
- 30. Langage pour les scripts utilisés par les testeurs