Réponses:
Travis-ci et Jenkins, alors que les deux sont des outils d'intégration continue sont très différents.
Travis est un service hébergé (gratuit pour l'open source) pendant que vous devez héberger, installer et configurer Jenkins.
Travis n'a pas d' emploi comme à Jenkins. Les commandes à exécuter pour tester le code proviennent d'un fichier nommé .travis.yml
qui se trouve le long de votre code de projet. Cela permet d'avoir facilement un code de test différent par branche, car chaque branche peut avoir sa propre version du fichier .travis.yml.
Vous pouvez avoir une fonctionnalité similaire avec Jenkins si vous utilisez l'un des plugins suivants:
.jervis.yml
fichier trouvé à la racine du code du projet. S'il .jervis.yml
n'existe pas, il reviendra à utiliser le .travis.yml
fichier à la place.Il existe d'autres services hébergés que vous pourriez également envisager pour une intégration continue (liste non exhaustive):
Vous voudrez peut-être rester avec Jenkins parce que vous le connaissez ou ne voulez pas dépendre de tiers pour votre système d'intégration continue. Sinon, je laisserais tomber Jenkins et irais avec l'un des services CI hébergés gratuits car ils vous épargnent beaucoup de problèmes (héberger, installer, configurer, préparer des travaux)
Selon l'endroit où votre référentiel de code est hébergé, je ferais les choix suivants:
Pour configurer Travis-CI sur un projet github, tout ce que vous avez à faire est de:
Les fonctionnalités que vous obtenez sont:
J'ai travaillé sur Travis et Jenkins: je vais énumérer certaines des fonctionnalités des deux:
Travis arrive en première place. C'est très simple à installer. La configuration avec GitHub prend moins d'une minute.
Jenkins:
Travis: toute personne disposant d'un accès en écriture sur GitHub peut relancer la build en cliquant sur `redémarrer la build
Jenkins: relancez les builds en fonction d'une phrase. Vous fournissez le texte de phrase dans la description PR / commit, comme reverify jenkins
.
Travis: Travis fournit un environnement hébergé. Il installe le logiciel requis pour chaque build. C'est un processus qui prend du temps.
Jenkins: Configuration unique. Installe tous les logiciels requis sur un nœud / machine esclave, puis crée / teste sur un environnement préinstallé.
Travis: prend en charge les journaux de construction à placer dans Amazon S3.
Jenkins: Facile à installer avec le plugin de génération d'artefacts.
Je suggérerais Travis pour le projet Open source. C'est simple à configurer et à utiliser.
Étapes simples à configurer:
.travis.yml
fichier à la racine de votre projet. Ajoutez Travis en tant que service dans la page des paramètres de votre référentiel.Désormais, chaque fois que vous vous engagez dans votre référentiel, Travis créera votre projet. Vous pouvez suivre des étapes simples pour commencer avec Travis CI.
.travis.yml
!) J'ai plusieurs projets Github pour lesquels je gère mon propre Jenkins, et je ne le regrette pas du tout. Si vous avez la possibilité d'exécuter votre propre Jenkins, j'encourage fortement cette option. C'est agréable d'avoir un contrôle à 100% de votre environnement CI.