Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GitHub - Du besoin jusqu'à la production avec ...

GitHub - Du besoin jusqu'à la production avec Github et Azure

Dans cette session, nous allons voir comment tirer profit des fonctionnalités offertes par Github, en partant d'une user story jusqu'à la publication en production.

Nous aborderons la toute nouvelle partie projet qui permet de tracker et suivre efficacement les évolutions, les Github Action pour la partie CI/CD ainsi que les outils mis à disposition pour détecter les failles de sécurité.

Au programme : gestion de projet, automatisation, sécurité, tests, build, conteneur et déploiement dans Azure.

Sylvain PONTOREAU

April 19, 2022
Tweet

More Decks by Sylvain PONTOREAU

Other Decks in Programming

Transcript

  1. GitHub Du besoin jusqu'à la production avec Github et Azure

    Lausanne – 19/04/2022 Sylvain Pontoreau Felix Billon
  2. Historique • Octobre 2007 : début du développement • Avril

    2008 : lancement officiel • Juillet 2010 : 1 million de repositories • Septembre 2011 : plus d’1 million d’utilisateurs • Avril 2016 : 14 millions d'utilisateurs et 35 millions de repositories • Juin 2018 : rachat par Microsoft Lausanne – 19/04/2022
  3. Github propose toutes les fonctionnalités basiques d’une plateforme de gestion

    de repositories : • Gestion du code source • Gestion des tickets • CI/CD • Gestion de projet • Wiki • Extension de la plateforme via une marketplace • ... Tour d’horizon Lausanne – 19/04/2022
  4. • Depuis mai 2019, facilite la contribution à l’open-source •

    Nouveau : Sponsors-only repositories, … Github Sponsor Lausanne – 19/04/2022
  5. • Discussions annexes aux tickets du projet : • Idées

    d’amélioration • Annonce autour du projet • … • Génère des évenements utilisable dans des Github Actions (beta) • Organization Discussions depuis le 12 avril Discussions Lausanne – 19/04/2022
  6. • Refonte de la partie gestion de projet • Annoncé

    en juin 2021, actuellement en beta public Project Board Lausanne – 19/04/2022
  7. • Procédure d’automatisation • Permet de mettre en place la

    CI/CD • Pipeline as code (YAML) Actions Lausanne – 19/04/2022
  8. • Permet d’avoir un annuaire privé de package • Gère

    plusieurs types de packages : • NPM (Javascript) • Maven (Java) • Gem (Ruby) • Nuget (C#) • Docker • Utilisable avec les Github Actions Packages Lausanne – 19/04/2022
  9. • Security policy : indique les versions maintenues et surtout

    comment reporter des failles de sécurité sur ce repository • Security advisories : permet de remonter une alerte de sécurité sur le repository puis de choisir comment la traiter et l'annoncer • Code Scanning alerts : remonte des alertes de sécurité depuis la CI Sécurité Lausanne – 19/04/2022
  10. • Bot qui permet de garder ses dépendances à jour

    • Remonte des alertes de sécurité liées aux dépendances non mise à jour • Racheté par Github • Intégré directement à Github Dependabot Lausanne – 19/04/2022
  11. • Intégration d’outils DevSecOps dans son pipeline • Chaque push

    déclenche automatiquement des analyses de sécurité sur le code pushé : • Respect des normes de sécurité sur le langage ciblé • Pas de secrets en dur dans le code • … Scan de code Lausanne – 19/04/2022
  12. • Base de données des CVE/GHSA • Permet de parcourir/chercher

    l’ensemble des vulnérabilités connues et reporté es sur Github • https://github.com/advisories • Accepte les contributions de la communauté depuis février 2022 Advisory Database Lausanne – 19/04/2022