Cet article décrit la réalisation des objectifs de l'intégration qui a pour impact de fournir des logiciels plus rapidement et sans bugs, les problèmes rencontrés et la mise à niveau proposée pour fournir un logiciel fluide et qualitatif. Les principaux objectifs sont de développer la confiance nécessaire pour modifier le code et le valider rapidement, d'être en mesure d'effectuer des mises à niveau technologiques sans aucun effort manuel et d'atteindre zéro besoin de tests manuels.
Introduction
Pendant le processus de développement, il est essentiel d'exécuter fréquemment la suite de tests de votre application Web afin de maintenir une distance stratégique par rapport à tout problème imprévu et de garantir que tout se passe bien. Cependant, il peut être difficile de ne jamais oublier d'exécuter les tests au fur et à mesure, et de plus, à mesure que votre suite de tests s'agrandit, son exécution prend de plus en plus de temps. C'est là qu'intervient un serveur d'intégration continue. Un serveur CI peut créer automatiquement votre application et exécuter des tests lorsque vous apportez des modifications. De plus, il vous avertit également de toute erreur ou échec de test. Jenkins est l'un de ces serveurs CI open source populaires sur Ubuntu 14.
Mise en place de Jenkins
Je vais configurer Jenkins, un serveur CI open source populaire sur Ubuntu 14. Je le configurerai ensuite pour exécuter les spécifications Rspec et le rapport de couverture de code d'un projet Ruby on Rails lorsqu'une modification est transmise à GitHub.
Installation de Jenkins
1. System Update – sudo apt-get update
2. Web Server – if any web server not installed on your system – sudo apt-get install nginx
3. Java – sudo apt-get install openjdk-7-jdk
4. wget -q -O – http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add –
5. sudo sh -c ‘echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list’
6. sudo apt-get update
7. sudo apt-get install jenkins
8. sudo service jenkins restart
9. Type ssh-keygen in your local system and add the key into your project repository in GitHub.
Configuration de Jenkins
1. Go to http://localhost:8080
2. It will ask for Admin password get it from /var/lib/jenkins/secrets/initialAdminPassword
- sudo chmod -R 777 /var/lib/jenkins/secrets si vous n'avez pas l'autorisation d'accéder au dossier
- vi /var/lib/jenkins/secrets/initialAdminPassword
3. Pour installer les plugins requis, cliquez sur « Gérer Jenkins » puis « Gérer les plugins ». Dans l'onglet « Disponible », vérifiez les plugins suivants :
- Git
- GitHub
- RVM
- Râteau
- DocLink
- Maven
4. Next, select “Download now and install after restart”
5. Configure Global Security. Navigate back to “Manage Jenkins” and select “Configure Global Security”. On this screen, check “Enable Security”, then “Jenkins’ own user database” under “Security Realm”. After that, select “Project-based Matrix Authorization Strategy” under “Authorization”.
6. From there, add “admin” and “github” users, checking all permissions for admin and only “Read” for github. Confirm your settings with the screenshot below and save the changes.
Configuration du projet
1. From the home page, click on “New Item”, then select “Build a free-style software project” and click “OK”.
2. Fill in the “Project Name” and “GitHub project” fields.
3. Under “Source Code Management”, select “Git” and fill in the repo url. (If you need to authenticate with SSH, configure that here.)
4. Click Run the build in a RVM-managed environment and add rvm version.
5. In build, select “Execute Shell Commands” and specify the following commands:
- #!/bin/bash -e
- source ~/.bashrc
- rvm utilise 2.3.0
- installation groupée
- exporter RAILS_ENV=test
- rake db: créer
- rake db: schéma: charger
- test de râteau : préparer
- spécification rspec
6. To make sure that you know when a build fails, set up email notifications in “Add post-build action”. Configure SMTP on the “Configure System” page, found under “Manage Jenkins”.
7. In post build actions, select “Publish Document” and configure like below.
Tests avec Jenkins
- Sélectionnez le projet que vous souhaitez créer dans la liste des projets disponibles.
- Cliquez sur « Construire maintenant ».
- Allez dans « Build History » et cliquez sur le dernier numéro de build.
Si la build est de couleur rouge, cela signifie que la build a échoué.
- Corrigez les erreurs de configuration, le cas échéant.
- Corrigez les cas de test ayant échoué et reconstruisez.
Si le build est de couleur bleue, cela signifie que le build est réussi et que le code est prêt à être déployé.
- Cliquez sur « Rapport de couverture du code ».
- Cliquez sur le contrôleur correspondant aux cas de test que vous avez écrits.
- Vérifiez le pourcentage de couverture du code.
- Si le 100% n'est pas couvert, vérifiez les numéros de ligne et la couverture.
Les références
http://www.webascender.com/Blog/ID/522/Setting-up-Jenkins-for-GitHub-Rails-Rspec#.WG8_Lp6qq1F
RailsCarma has been offering Rails Development services for over past 8 years. Our developers are well versed with executing all kind of Développement d'applications Ruby On Rails projets et améliorer les fonctionnalités de vos applications Ruby on Rails existantes. Contactez-nous pour en savoir plus sur nos compétences en développement et les projets sur lesquels nous avons travaillé.