This document discusses automating the application lifecycle using infrastructure as code principles. It demonstrates building infrastructure like VPCs and databases automatically with CloudFormation templates. It then shows deploying application components like load balancers and servers from templates. It discusses updating applications by building new server images from code changes rather than modifying existing servers. This allows deploying updates instantly by replacing server instances. The talk concludes that automating infrastructure and deployments in this way allows integrating new applications or changes much faster.
L’intégration continue chez AXA FranceMicrosoft
Dans un contexte agile, AXA France Service a mis en place une démarche d'intégration continue au sein de son Web Center. Lors de cette session, nous allons voir comment personnaliser le processus de Build en y incluant des tests unitaires, des métriques de qualité comme la couverture de code puis la déployer en continue avec le lab management de Team Foundation Server 2012.
Continuous Integration, the minimum viable productJulian Simpson
What does it mean to 'do' Continuous Integration? It used to be enough to execute your unit tests in CI. But the bar is steadily raising for engineering practices. In the last decade we've seen tremendous improvements inacceptance testing. JavaScript is now a platform in it's own right. Cloudcomputing is now vital. There's growing interest in deployment to prod.So Continuous Integration is under more pressure than ever. As the bar slowly raises for engineering practices, we ll present 2011's minimum viable feature set for Continuous Integration
This document discusses automating the application lifecycle using infrastructure as code principles. It demonstrates building infrastructure like VPCs and databases automatically with CloudFormation templates. It then shows deploying application components like load balancers and servers from templates. It discusses updating applications by building new server images from code changes rather than modifying existing servers. This allows deploying updates instantly by replacing server instances. The talk concludes that automating infrastructure and deployments in this way allows integrating new applications or changes much faster.
L’intégration continue chez AXA FranceMicrosoft
Dans un contexte agile, AXA France Service a mis en place une démarche d'intégration continue au sein de son Web Center. Lors de cette session, nous allons voir comment personnaliser le processus de Build en y incluant des tests unitaires, des métriques de qualité comme la couverture de code puis la déployer en continue avec le lab management de Team Foundation Server 2012.
Continuous Integration, the minimum viable productJulian Simpson
What does it mean to 'do' Continuous Integration? It used to be enough to execute your unit tests in CI. But the bar is steadily raising for engineering practices. In the last decade we've seen tremendous improvements inacceptance testing. JavaScript is now a platform in it's own right. Cloudcomputing is now vital. There's growing interest in deployment to prod.So Continuous Integration is under more pressure than ever. As the bar slowly raises for engineering practices, we ll present 2011's minimum viable feature set for Continuous Integration
Integration of automation framework with ci toolsvodQA
This document discusses continuous integration (CI) and how to integrate an automation testing framework with a CI tool. It defines key CI concepts like pipelines, stages, jobs, and tasks. A pipeline contains multiple stages that run sequentially, with each stage containing parallel jobs made up of sequential tasks. The document also provides instructions on downloading, installing, and configuring a Go CI server and agent to run an automation test suite through CI pipelines.
DevOps Day Proxiad - Continuous Integration - The Software Factory
La compétence irremplaçable du développeur, celle qui doit occuper tout son temps est dans le code et rien d'autre. Toutes les autres tâches nécessaires à l'obtention d'un programme doivent être effectuées par des mécanismes automatisés.
Nous verrons dans cette présentation comment oeuvrent les rouages d'une usine de développement.
Dans un contexte d’entreprise souvent perçu comme rigide, envisager des changements techniques et organisationnels peut sembler impossible. DevOps est un bon contre-exemple car il existe des façons progressives d’introduire une telle méthodologie à plusieurs niveaux de l’entreprise. Cette session revient sur les principes de bases de DevOps (infrastructure-as-code, continuous delivery, culture de collaboration) et leur application pas-à-pas dans différents contextes.
Devops is partially a technology change. But what's its future ? BigData ? analytics ? does security will kill it? let's took 5 minutes to think about the challenges.
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Laurent Speyser
(Conférence dessinée)
Vous êtes certainement à l’origine, ou impliqué, dans un changement au sein de votre organisation. Et peut être que cela ne se passe pas aussi bien qu’attendu…
Depuis plusieurs années, je fais régulièrement le constat de l’échec de l’adoption de l’Agilité, et plus globalement de grands changements, dans les organisations. Je vais tenter de vous expliquer pourquoi ils suscitent peu d'adhésion, peu d’engagement, et ils ne tiennent pas dans le temps.
Heureusement, il existe un autre chemin. Pour l'emprunter il s'agira de cultiver l'invitation, l'intelligence collective , la mécanique des jeux, les rites de passages, .... afin que l'agilité prenne racine.
Vous repartirez de cette conférence en ayant pris du recul sur le changement tel qu‘il est généralement opéré aujourd’hui, et en ayant découvert (ou redécouvert) le seul guide valable à suivre, à mon sens, pour un changement authentique, durable, et respectueux des individus! Et en bonus, 2 ou 3 trucs pratiques!
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...OCTO Technology
par Claude Camus (Coach agile d'organisation @OCTO Technology) et Gilles Masy (Organizational Coach @OCTO Technology)
Les équipes infrastructure, sécurité, production, ou cloud, doivent consacrer du temps à la modernisation de leurs outils (automatisation, cloud, etc) et de leurs pratiques (DevOps, SRE, etc). Dans le même temps, elles doivent répondre à une avalanche croissante de demandes, tout en maintenant un niveau de qualité de service optimal.
Habitué des environnements développeurs, les transformations agiles négligent les particularités des équipes OPS. Lors de ce comptoir, nous vous partagerons notre proposition de valeur de l'agilité@OPS, qui embarquera vos équipes OPS en Classe Business (Agility), et leur fera dire : "nous ne reviendrons pas en arrière".
L'IA connaît une croissance rapide et son intégration dans le domaine éducatif soulève de nombreuses questions. Aujourd'hui, nous explorerons comment les étudiants utilisent l'IA, les perceptions des enseignants à ce sujet, et les mesures possibles pour encadrer ces usages.
Constat Actuel
L'IA est de plus en plus présente dans notre quotidien, y compris dans l'éducation. Certaines universités, comme Science Po en janvier 2023, ont interdit l'utilisation de l'IA, tandis que d'autres, comme l'Université de Prague, la considèrent comme du plagiat. Cette diversité de positions souligne la nécessité urgente d'une réponse institutionnelle pour encadrer ces usages et prévenir les risques de triche et de plagiat.
Enquête Nationale
Pour mieux comprendre ces dynamiques, une enquête nationale intitulée "L'IA dans l'enseignement" a été réalisée. Les auteurs de cette enquête sont Le Sphynx (sondage) et Compilatio (fraude académique). Elle a été diffusée dans les universités de Lyon et d'Aix-Marseille entre le 21 juin et le 15 août 2023, touchant 1242 enseignants et 4443 étudiants. Les questionnaires, conçus pour étudier les usages de l'IA et les représentations de ces usages, abordaient des thèmes comme les craintes, les opportunités et l'acceptabilité.
Résultats de l'Enquête
Les résultats montrent que 55 % des étudiants utilisent l'IA de manière occasionnelle ou fréquente, contre 34 % des enseignants. Cependant, 88 % des enseignants pensent que leurs étudiants utilisent l'IA, ce qui pourrait indiquer une surestimation des usages. Les usages identifiés incluent la recherche d'informations et la rédaction de textes, bien que ces réponses ne puissent pas être cumulées dans les choix proposés.
Analyse Critique
Une analyse plus approfondie révèle que les enseignants peinent à percevoir les bénéfices de l'IA pour l'apprentissage, contrairement aux étudiants. La question de savoir si l'IA améliore les notes sans développer les compétences reste débattue. Est-ce un dopage académique ou une opportunité pour un apprentissage plus efficace ?
Acceptabilité et Éthique
L'enquête révèle que beaucoup d'étudiants jugent acceptable d'utiliser l'IA pour rédiger leurs devoirs, et même un quart des enseignants partagent cet avis. Cela pose des questions éthiques cruciales : copier-coller est-il tricher ? Utiliser l'IA sous supervision ou pour des traductions est-il acceptable ? La réponse n'est pas simple et nécessite un débat ouvert.
Propositions et Solutions
Pour encadrer ces usages, plusieurs solutions sont proposées. Plutôt que d'interdire l'IA, il est suggéré de fixer des règles pour une utilisation responsable. Des innovations pédagogiques peuvent également être explorées, comme la création de situations de concurrence professionnelle ou l'utilisation de détecteurs d'IA.
Conclusion
En conclusion, bien que l'étude présente des limites, elle souligne un besoin urgent de régulation. Une charte institutionnelle pourrait fournir un cadre pour une utilisation éthique.
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO Technology
En cette année 2024 qui s’annonce sous le signe de la complexité, avec :
- L’explosion de la Gen AI
-Un contexte socio-économique sous tensions
- De forts enjeux sur le Sustainable et la régulation IT
- Une archipélisation des lieux de travail post-Covid
Découvrez les Tech trends incontournables pour délivrer vos produits stratégiques.
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...OCTO Technology
Par Nicolas Bordier (Consultant numérique responsable @OCTO Technology) et Alaric Rougnon-Glasson (Sustainable Tech Consultant @OCTO Technology)
Sur un exemple très concret d’audit d’éco-conception de l’outil de bilan carbone C’Bilan développé par ICDC (Caisse des dépôts et consignations) nous allons expliquer en quoi l’ACV (analyse de cycle de vie) a été déterminante pour identifier les pistes d’actions pour réduire jusqu'à 82% de l’empreinte environnementale du service.
Vidéo Youtube : https://www.youtube.com/watch?v=7R8oL2P_DkU
Compte-rendu :
Integration of automation framework with ci toolsvodQA
This document discusses continuous integration (CI) and how to integrate an automation testing framework with a CI tool. It defines key CI concepts like pipelines, stages, jobs, and tasks. A pipeline contains multiple stages that run sequentially, with each stage containing parallel jobs made up of sequential tasks. The document also provides instructions on downloading, installing, and configuring a Go CI server and agent to run an automation test suite through CI pipelines.
DevOps Day Proxiad - Continuous Integration - The Software Factory
La compétence irremplaçable du développeur, celle qui doit occuper tout son temps est dans le code et rien d'autre. Toutes les autres tâches nécessaires à l'obtention d'un programme doivent être effectuées par des mécanismes automatisés.
Nous verrons dans cette présentation comment oeuvrent les rouages d'une usine de développement.
Dans un contexte d’entreprise souvent perçu comme rigide, envisager des changements techniques et organisationnels peut sembler impossible. DevOps est un bon contre-exemple car il existe des façons progressives d’introduire une telle méthodologie à plusieurs niveaux de l’entreprise. Cette session revient sur les principes de bases de DevOps (infrastructure-as-code, continuous delivery, culture de collaboration) et leur application pas-à-pas dans différents contextes.
Devops is partially a technology change. But what's its future ? BigData ? analytics ? does security will kill it? let's took 5 minutes to think about the challenges.
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Laurent Speyser
(Conférence dessinée)
Vous êtes certainement à l’origine, ou impliqué, dans un changement au sein de votre organisation. Et peut être que cela ne se passe pas aussi bien qu’attendu…
Depuis plusieurs années, je fais régulièrement le constat de l’échec de l’adoption de l’Agilité, et plus globalement de grands changements, dans les organisations. Je vais tenter de vous expliquer pourquoi ils suscitent peu d'adhésion, peu d’engagement, et ils ne tiennent pas dans le temps.
Heureusement, il existe un autre chemin. Pour l'emprunter il s'agira de cultiver l'invitation, l'intelligence collective , la mécanique des jeux, les rites de passages, .... afin que l'agilité prenne racine.
Vous repartirez de cette conférence en ayant pris du recul sur le changement tel qu‘il est généralement opéré aujourd’hui, et en ayant découvert (ou redécouvert) le seul guide valable à suivre, à mon sens, pour un changement authentique, durable, et respectueux des individus! Et en bonus, 2 ou 3 trucs pratiques!
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...OCTO Technology
par Claude Camus (Coach agile d'organisation @OCTO Technology) et Gilles Masy (Organizational Coach @OCTO Technology)
Les équipes infrastructure, sécurité, production, ou cloud, doivent consacrer du temps à la modernisation de leurs outils (automatisation, cloud, etc) et de leurs pratiques (DevOps, SRE, etc). Dans le même temps, elles doivent répondre à une avalanche croissante de demandes, tout en maintenant un niveau de qualité de service optimal.
Habitué des environnements développeurs, les transformations agiles négligent les particularités des équipes OPS. Lors de ce comptoir, nous vous partagerons notre proposition de valeur de l'agilité@OPS, qui embarquera vos équipes OPS en Classe Business (Agility), et leur fera dire : "nous ne reviendrons pas en arrière".
L'IA connaît une croissance rapide et son intégration dans le domaine éducatif soulève de nombreuses questions. Aujourd'hui, nous explorerons comment les étudiants utilisent l'IA, les perceptions des enseignants à ce sujet, et les mesures possibles pour encadrer ces usages.
Constat Actuel
L'IA est de plus en plus présente dans notre quotidien, y compris dans l'éducation. Certaines universités, comme Science Po en janvier 2023, ont interdit l'utilisation de l'IA, tandis que d'autres, comme l'Université de Prague, la considèrent comme du plagiat. Cette diversité de positions souligne la nécessité urgente d'une réponse institutionnelle pour encadrer ces usages et prévenir les risques de triche et de plagiat.
Enquête Nationale
Pour mieux comprendre ces dynamiques, une enquête nationale intitulée "L'IA dans l'enseignement" a été réalisée. Les auteurs de cette enquête sont Le Sphynx (sondage) et Compilatio (fraude académique). Elle a été diffusée dans les universités de Lyon et d'Aix-Marseille entre le 21 juin et le 15 août 2023, touchant 1242 enseignants et 4443 étudiants. Les questionnaires, conçus pour étudier les usages de l'IA et les représentations de ces usages, abordaient des thèmes comme les craintes, les opportunités et l'acceptabilité.
Résultats de l'Enquête
Les résultats montrent que 55 % des étudiants utilisent l'IA de manière occasionnelle ou fréquente, contre 34 % des enseignants. Cependant, 88 % des enseignants pensent que leurs étudiants utilisent l'IA, ce qui pourrait indiquer une surestimation des usages. Les usages identifiés incluent la recherche d'informations et la rédaction de textes, bien que ces réponses ne puissent pas être cumulées dans les choix proposés.
Analyse Critique
Une analyse plus approfondie révèle que les enseignants peinent à percevoir les bénéfices de l'IA pour l'apprentissage, contrairement aux étudiants. La question de savoir si l'IA améliore les notes sans développer les compétences reste débattue. Est-ce un dopage académique ou une opportunité pour un apprentissage plus efficace ?
Acceptabilité et Éthique
L'enquête révèle que beaucoup d'étudiants jugent acceptable d'utiliser l'IA pour rédiger leurs devoirs, et même un quart des enseignants partagent cet avis. Cela pose des questions éthiques cruciales : copier-coller est-il tricher ? Utiliser l'IA sous supervision ou pour des traductions est-il acceptable ? La réponse n'est pas simple et nécessite un débat ouvert.
Propositions et Solutions
Pour encadrer ces usages, plusieurs solutions sont proposées. Plutôt que d'interdire l'IA, il est suggéré de fixer des règles pour une utilisation responsable. Des innovations pédagogiques peuvent également être explorées, comme la création de situations de concurrence professionnelle ou l'utilisation de détecteurs d'IA.
Conclusion
En conclusion, bien que l'étude présente des limites, elle souligne un besoin urgent de régulation. Une charte institutionnelle pourrait fournir un cadre pour une utilisation éthique.
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO Technology
En cette année 2024 qui s’annonce sous le signe de la complexité, avec :
- L’explosion de la Gen AI
-Un contexte socio-économique sous tensions
- De forts enjeux sur le Sustainable et la régulation IT
- Une archipélisation des lieux de travail post-Covid
Découvrez les Tech trends incontournables pour délivrer vos produits stratégiques.
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...OCTO Technology
Par Nicolas Bordier (Consultant numérique responsable @OCTO Technology) et Alaric Rougnon-Glasson (Sustainable Tech Consultant @OCTO Technology)
Sur un exemple très concret d’audit d’éco-conception de l’outil de bilan carbone C’Bilan développé par ICDC (Caisse des dépôts et consignations) nous allons expliquer en quoi l’ACV (analyse de cycle de vie) a été déterminante pour identifier les pistes d’actions pour réduire jusqu'à 82% de l’empreinte environnementale du service.
Vidéo Youtube : https://www.youtube.com/watch?v=7R8oL2P_DkU
Compte-rendu :
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Mardi Gras 'Intégration Continue'
1. Mardi gras: Intégration Continue
Présenté par Xavier Bourguignon
(xavier.bourguignon@hortis.ch)
2. Sommaire
Histoires (pas drôles) de projets sans intégration continue
Historique et objectif
Principes
Bonnes pratiques
Comparatif de Apache Continuum, Hudson et Atlassian Bamboo
Retour d'expérience sur Hudson
Quels gains attendre de la mise en place de l'intégration continue ?
Questions
20/03/2009 2
Mardi gras 'Intégration Continue'
3. Terminologie utilisée
Build
Ensemble des étapes nécessaires à la création du livrable d'un projet
Compilation, tests, packaging, …
Commit
Opération de validation des modifications réalisées dans le répertoire de travail local et
de propagation dans le gestionnaire de source d'où il est issu.
Update
Opération de mise à jour du répertoire de travail local à partir du gestionnaire de source.
Checkout
Opération d'extraction d'une version d'un projet du gestionnaire de source vers un
répertoire de travail local.
20/03/2009 3
Mardi gras 'Intégration Continue'
5. Histoires (pas drôles) de projets sans intégration continue
Un projet comme on en vit tous les jours
le syndrôme du 'je comprends pas, ça marche sur mon poste !'
• commits partiels
• fichiers de configuration dépendants du poste de travail
Résultat: équipe régulièrement bloquée ½ journée
Un cas plus difficile
Projet .Net, 25 personnes
Sur au moins 3 releases : Impossible de faire le build pour l'équipe de test. Perte : 1
journée avec 6 personnes en attente et 2 dév pour reprendre les commits 1 par 1.
Sur au moins 2 releases : Build ok. Livraison équipe de test. 2 jours de tests (6 p) et
bug bloquant. Livraison en urgence d'un patch et commit. Release après une
semaine de test et build passe pas. 2 jours de reprise du patch pour 2 dev. 2 jours
équipe de test au chômage technique. Ensemble des tests de la semaine à
repasser car pas confiance dans la constitution de la version précédente.
Résultat: 42 jours/h perdus.
20/03/2009 5
Mardi gras 'Intégration Continue'
6. Histoires (pas drôles) de projets sans intégration continue
Waterloo ...
Projet Java, 60 développeurs:
6 mois de développement.
3 tentatives pour faire une release se soldant par un échec.
Décision: constituer une équipe de 6 personnes pour effectuer cette tâche !
Résultat: 2 ans de retard.
Constat
Plus une erreur est détectée tard et plus le coût de correction est élevé !
Nombre d’heures requises pour corriger une anomalies – à 100
es M
partir du moment où elle est détectée X
rc / IB
u
So er 3
tn 0
ar 20
20 G
15 X
15
10
5
6,5 X
0
1X
s
de io n n on
on
tio
u ati
t cti
Et sa ra Déploiement
oit
al i teg u Conception Réalisation Validation
od l Exploitation
Ré p
In -pr Ex
20/03/2009 é 6
Pr Mardi gras 'Intégration Continue'
7. Historique et Objectif
L'intégration Continue n'est pas un outil, mais une pratique issue de XP.
Déjà pratiqué par IBM dans les années 60 pour le développement de OS/360.
Objectif:
Vérifier de façon automatique et à chaque modification de code source que le
résultat des modifications ne produit pas de régression de l'application en cours de
développement
Avantages:
prévient rapidement en cas de code incompatible ou manquant
test immédiat des unités modifiées
les problèmes d'intégration sont détectés et réparés de façon continue, évitant les
problèmes de dernière minute
une version est toujours disponible pour test, démonstration ou distribution.
20/03/2009 7
Mardi gras 'Intégration Continue'
8. Principes définis par Martin Fowler
Maintenir un dépôt unique de code source versionné
Automatiser les compilations
Rendre les compilations auto-testantes
Tout le monde committe tous les jours
Tout commit doit compiler la branche principale sur une machine d'intégration
Maintenir une compilation courte
Tester dans un environnement de production cloné
Rendre disponible facilement le dernier exécutable
Tout le monde doit voir ce qui se passe
Automatiser le déploiement
20/03/2009 8
Mardi gras 'Intégration Continue'
9. Bonnes pratiques sur le plan technique
Séparer en 2 jobs:
continuous build : déclenché à chaque commit, compilation + tests unitaires.
10 mn maximum
nightly build : déclenché à heure fixe toutes les nuits, compilation, test unitaires,
rapports de qualité (PMD, Checkstyle), packaging, déploiement sur plateforme de
dév, tests fonctionnels
Une livraison à effectuer:
un job spécifique : déclenché manuellement, compilation, tests unitaires, rapports
de qualités, packaging, déploiement sur plateforme de recette, tests fonctionnels
Faire l'intégration continue de la base de données.
Installer la solution d'intégration continue sur un serveur dédié.
20/03/2009 9
Mardi gras 'Intégration Continue'
10. Bonnes pratiques sur le plan humain
Définir des règles comportementales:
que faire quand un build échoue ?
que faire avant et après un commit ?
Seul ceux qui ne commit pas ne peuvent pas casser le build !
Il est normal de casser le build de temps en temps, mais il n'est pas normal de le laisser
casser
Annoncer à l'équipe que vous avez cassé le build et que vous vous en occupez
Ne doit pas être utilisé pour stigmatiser, mais pour responsabiliser !
L'intégration continue est une sécurité pour le développeur
Installer un rituel divertissant pour motiver les développeurs à faire attention au
build
Celui qui casse le build de nuit amène les croissants pour l'équipe
Mettre en place le jeu de l'intégration continue
20/03/2009 10
Mardi gras 'Intégration Continue'
11. Bonnes pratiques pour la mise en place
Commencer petit
Mise en place de l'infrastructure, de l'intégration continue
Simple mais qui fonctionne
Avoir 1 ou 2 projets pilotes
Permet d'affiner la plateforme et le discours
Préparation à accueillir de nouveaux projets
Communiquer
Communiquer sur les intérêts pour que tout le monde sache que cela existe
Donner du support: guide d'utilisation, bonnes pratiques, aide à mettre en place
Le nombre de projets commence à être conséquent, le serveur ne tient plus la
charge
Envisager la mise en cluster, le build distribué
20/03/2009 11
Mardi gras 'Intégration Continue'
12. Comparatif de Apache Continuum, Hudson et Atlassian Bamboo
Open Source et gratuit
Soutenu par la fondation Apache
1ère version en 2005, dernière version 1.2.3
Open Source et gratuit
Kohsuke Kawaguchi, employé par SUN
1ère version en 2007, dernière version 1.292
Open Source et Payant (1200 à 8000$ selon version)
Atlassian (JIRA, Confluence)
1ère version en 2007, dernière version 2.2
20/03/2009 12
Mardi gras 'Intégration Continue'
13. Comparatif de Apache Continuum, Hudson et Atlassian Bamboo
Les axes de comparaison:
L'ergonomie
L'installation et la configuration
Les gestionnaires de sources supportés
Les types de builds supportés
Les systèmes de notifications supportés
Les rapports de tests et de qualités supportés
L'intégration avec d'autres outils
Les capacités de répartition de charge
20/03/2009 13
Mardi gras 'Intégration Continue'
25. Installation et configuration
Standalone ✔ ✔ ✔
Webapp ✔ ✔ ✔
n/a
Derby Postgres
MySql MySql
Base de données
MS SQL Server MS SQL Server
Oracle (en cours) Oracle
Fichier XML
Configuration Interface Web Interface Web
Interface Web
20/03/2009 25
Mardi gras 'Intégration Continue'
38. Répartition de la charge
Principe :
des agents installés sur d’autres serveurs prennent à leur charge certains builds et
fournissent le résultat au serveur principal.
Agent 1
Projet A Master
Agent 2
Projet B
Projet C
Agent 3
Fonctionnalité disponible avec les 3 outils
- en version alpha pour Continuum
- avec Hudson, on spécifie quel build sur quel agent pour équilibrer la charge
- Bamboo distribue les builds en fonction des compatibilités entre le build et l'agent
(jdk 1.4 sur un agent, 1.5 sur un autre)
- agent sur des instances Amazon EC2 avec la version 2.2 de Bamboo
20/03/2009 38
Mardi gras 'Intégration Continue'
39. Avantages et inconvénients de chaque solution
support de Maven (prepare et perform release depuis l'interface web)
build distribué en version alpha
les plugins (plus de 100 disponibles)
file fingerprint (marquage des jars pour suivre leur utilisation par d'autres builds)
external jobs (possibilités de monitorer des jobs externes)
release très fréquentes (trop ?)
intégration avec les produits Atlassian (JIRA, FishEye, Clover)
intégration dans Intellij IDEA
support Atlassian
payant
20/03/2009 39
Mardi gras 'Intégration Continue'
41. Retour d'expérience sur Hudson
Contexte:
Une équipe de 10 développeurs pendant 2 ans.
Reprise du code d'un projet très similaire.
Un serveur dédié 'devFactory' avec:
Hudson
Mantis Bug Tracker
Sventon
Subversion
Un serveur avec 2 environnements:
Test, mis à jour toutes les nuits
Recette, mis à jour à chaque release
20/03/2009 41
Mardi gras 'Intégration Continue'
42. Retour d'expérience sur Hudson
3 types de builds mis en place:
Continuous Build:
compilation et tests unitaires
exécuté à chaque commit sur la branche principale
durée: 9mn
Nightly Build:
compilation, tests unitaires, rapports qualités, packaging, déploiement en
environnement de test, tests fonctionnels,
exécuté toutes les nuits à 23h sur la branche principale
durée: 1h
Release Build:
compilation, tests unitaires,packaging, déploiement en environnement de test,
tests fonctionnels,
exécuté manuellement sur la branche de livraison
Durée: 40 mn
Script de livraison sur le FTP du client et tag sur la version livrée
20/03/2009 42
Mardi gras 'Intégration Continue'
43. Retour d'expérience sur Hudson, plugins utilisés
Batch Task, permet de lancer des scripts supplémentaires sur un build donné (transfert
du livrable sur le FTP du client et tagging de la version livrée)
20/03/2009 43
Mardi gras 'Intégration Continue'
46. Retour d'expérience sur Hudson, plugins utilisés
Continuous Integration Game, pour faire adhérer l'équipe (+1 point par build ok, -10
pour un build cassé, +4 pour un nouveau test qui passe, -4 pour un test en erreur)
20/03/2009 46
Mardi gras 'Intégration Continue'
47. Retour d'expérience sur Hudson, plugins utilisés
Disk Usage, pour suivre la consommation d'espace disque de chaque job
20/03/2009 47
Mardi gras 'Intégration Continue'
48. Retour d'expérience sur Hudson
Les difficultés rencontrées:
L'intégration continue de la base de données
Les commits à la sauvette en fin de journée sans vérifier le résultat
1ère livraison difficile: développement sous windows, déploiement sous Solaris
Tentative de stigmatisation des casseurs de build par le management
Les succès:
Jamais l'équipe n'a rencontré le syndrome 'je comprends pas, ça marche sur mon poste'
Plus de problème d'intégration après la 1ère livraison car passage de l'environnement
de test sous Solaris.
Processus de livraison automatisé
Les développeurs juniors n'imaginent pas une seconde faire un projet sans IC
20/03/2009 48
Mardi gras 'Intégration Continue'
49. Quels gains attendre de la pratique de l'intégration continue ?
Le coût de mise en place:
Installer la plateforme 1 à 2 jours (si sécurité)
'Maven-iser' ou 'Ant-iser' un projet 1 à 2 jours
Faire une documentation 1 jour
Offrir du support 20% d'une personne
Les gains:
Selon IBM, vos développements seront 60% plus rapides et vous en réduirez les coûts
de 25 %
Syndrome du 'ça marche chez moi !' ½ journée par équipe et par quinzaine
Cas difficile 42 jours maximum
Waterloo 1 an ?
Mais vous gagnerez surtout en sérénité et en visibilité !
20/03/2009 49
Mardi gras 'Intégration Continue'