Drone est une solution d’intégration continue basée sur des conteneurs écrite en Go. Chaque exécution se passe à l’intérieur d’un conteneur Docker éphémère, ce qui permet de donner aux développeurs un contrôle complet sur l’environnement tout en l’isolant.
Cette nouvelle version apporte la fonctionnalité la plus demandée, une matrice de construction et s’intègre directement sur les plates‐formes d’hébergement GitHub, Bitbucket, GitLab et Gogs.
Matrice de construction
La matrice de construction permet de tester le projet sur plusieurs configurations différentes, par exemple des versions différentes du langage, mais aussi bien des bases de données différentes, voire des images (distributions) différentes.
Greffons
Le système de greffons de Drone est assez unique en ce qu’il est basé sur des conteneurs Docker. Chaque étape de la construction est exécutée par un conteneur différent, chacun ayant un accès partagé aux volumes de construction. Les conteneurs sont téléchargés et mis à jour automatiquement. L’intérêt de ce système est que les greffons ne sont pas liés à un langage particulier et donc il est possible d’en écrire dans son langage préféré.
Orchestration
Les machines de construction peuvent être maintenant attachées via la ligne de commande. Cela permet de grandir ou diminuer le nombre de machines à la volée en fonction du volume.
Nouveau format
Le format de configuration en YAML a été revu afin d’être plus proche du format de composition de Docker. Celui‐ci permet plus de flexibilité quant à la configuration des options de construction.
Aller plus loin
- Announce (598 clics)
- Documentation (380 clics)
- GitHub (388 clics)
# Libre ?
Posté par romu . Évalué à 0.
Bonjour,
Ca me semble intéressant, mais j'ai quand même l'impression qu'on parle d'un logiciel propriétaire là, non ?
[^] # Re: Libre ?
Posté par Benoît Sibaud (site web personnel) . Évalué à 6.
https://github.com/drone/drone/blob/master/LICENSE "Apache License Version 2.0"
[^] # Re: Libre ?
Posté par romu . Évalué à 1. Dernière modification le 28 janvier 2016 à 15:14.
Merci pour l'info. Parce que pourtant, j'ai bien cherché sur drone.io et je n'ai rien trouvé d'évident indiquant que c'est un logiciel libre. D'ailleurs, il n'y a rien pour le télécharger ou l'installer sur le site.
[^] # Re: Libre ?
Posté par Fabrice Mousset (site web personnel) . Évalué à 1.
Les sources sont sur github ==> cf. le 3ième lien de l'article
[^] # Re: Libre ?
Posté par Cédric Krier (site web personnel, Mastodon) . Évalué à 2.
drone.io est un service commerciale autour de drone qui d’ailleurs n'utilise pas tout à fait la même version que celle publiée sur GitHub.
# Sujet du commentaire
Posté par louiz’ (site web personnel) . Évalué à 3.
Je l’ai installé pour tester, parce que je cherchais un outil de CI un peu mieux que celui de gitlab (notamment pour avoir une « matrice de build » (c’est à dire : pouvoir définir des options, par exemple « gcc ou clang » et « debug ou release », et que l’outil se charge de compiler le machin dans toutes les configurations possible (gcc release, clang debug, gcc debug etc)).
Malheureusement il n’est pas prévu pour fonctionner avec un simple dépôt git standalone. Il doit forcément se reposer sur un API d’authentification, et sur des hooks « web » bien précis (donc github, gitlab, bitbucket). Et si j’installe drone c’est pas pour me taper la maintenance de drone ET de gitlab (et je veux m’auto-héberger, sinon j’utiliserais github et travis-ci…).
Bref c’est pas mal, mais du coup je suis resté sur gitlab pour l’instant, qui j’espère va bientôt implémenter les quelques features qui me manquent.
(Par contre un bon point, comme ça ne marche QUE avec docker, j’ai dû m’y mettre un peu, et je regrette pas, j’ai passé mon gitlab-ci en mode docker suite à cet essai de drone).
[^] # Re: Sujet du commentaire
Posté par Cédric Krier (site web personnel, Mastodon) . Évalué à 2.
Un système de plugin pour le support des hébergements est en cours de préparation: https://github.com/drone/drone/issues/381
[^] # Re: Sujet du commentaire
Posté par mikael.vallerie . Évalué à 0.
Perso' Gitlab(-ci) j'ai fini par laisser tomber. Je trouve le combo Gogs + Drone beaucoup plus léger et simple à maintenir. Tout ça sur du Docker, c'est juste parfait =).
# Orchestration
Posté par dco . Évalué à 0.
J'ai pas mal vérifié dans les annonces (Fr et EN), puis la doc et je trouve pas de trace de cette possibilité d'orchestration en augmentant/diminuant le nombre de machine de build à la volée.
Cette chose m'intéresse bcp.. Qqn un des infos ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.