2017-08-01 1 views
2

J'ai un github-repository, qui est lié à automated build on Docker. Par conséquent, à chaque validation de master-branch, docker déclenche la construction de Docker-image.Pipeline GitHub -> Travis CI -> Docker

De plus, chaque validation est testée automatiquement par Travis CI.

Ma question est la suivante: est-il possible de déclencher Docker uniquement si travis se termine avec succès? Ai-je besoin d'une sorte de webhook ou quelque chose comme ça pour mon objectif?

+0

Avez-vous lu https://docs.travis-ci.com/user/docker/? Je pense que vous pouvez faire tout cela du côté de CI. – jonrsharpe

Répondre

2

Vous pouvez déclencher le test Travis CI après le repoussage du référentiel. Ensuite, dans le deploy step, vous pouvez déclencher une génération sur Docker. Ou même faire la construction à l'intérieur de Travis, et il suffit de pousser l'image vers le référentiel que vous utilisez. Travis a un bon aperçu de la façon dont ce flux se produit here.

L'essentiel est que vous aurez besoin d'avoir sudo: required, donc vous allez être en cours d'exécution dans une machine virtuelle au lieu de dans Docker, comme c'est la manière standard dans Travis. Vous devez également ajouter docker en tant que service, un peu comme si vous ajoutiez redis ou postgres pour un test d'intégration. La section Pushing Docker Image to a Registry contient de nombreuses informations sur la configuration du déploiement réel. J'utiliserais une étape réelle deploy avec le fournisseur script, plutôt que after_success, mais c'est à vous de décider.