SlideShare une entreprise Scribd logo
API != REST - PROCMAIL TO THE RESCUE
By HPE DEV Team
and HPE CIC Team
2
Introducing Bruno Cornec
●
Software engineering and Unices since 1988:
– Mostly Configuration Management Systems, Build systems, quality tools, on multiple Unix systems
– Discovered Open Source & Linux (OSL) & made first contributions in 1993
– Full time on OSL since 1995, first as HPE reseller then @HPE
●
Currently:
– OSL Technology Strategist in HPE WW Customer Innovation Center, Grenoble, France
– WW Linux Community Lead for the HPE Open Source Profession
– Conferences at WW level at LinuxCon, Linux.conf.au (2007, 2013, 2014), Fosdem, RMLL POSS, ...
– MondoRescue, Project-Builder.org, python-redfish, UUWL and PUSK Project Lead
– LinuxCOE, mrepo, tellico, rinse, fossology, collectl, Ironic contributor
– FOSSBazaar/SPDX and OSL Governance enthusiast
– Mandriva, Mageia, Fedora packager
●
And also:
– Amateur singer (Alto / Tenor), recorder player since 1976 and Choir director since 1987, CD collector (7500+), Concerts, Photography
3
Introducing Frédéric Passeron
●
20 years @HPE in presales organizations
●
Strong focus on solutions (HP Toptools, HPSIM, Matrix, HP CloudSystem,
HP Helion Openstack, HPE OneSphere HPE Ezmeral)
●
Currently:
– HPE Dev Experience team Solution Architect
– Hack Shack Workshop on Demand (WoD) Program Manager
– Vlub project management
– Volumio contributor
●
And also:
– High end HI-FI systems fan (see video !)
– Musical Streamer builder
The Hack Shack@KubeCon
A place for developers to gather
Inviting atmosphere
Informative and fun
Physical now virtual
Workshops
Hands-on training
On-demand
Use of Jupyter notebooks
Challenge
Augments workshop material
Prizes offered for creativity
Replays
Community
Popular Hack Shack Attack game
It was announced at KubeCon Austin in
December 2017
Main goal: “Accelerate Innovation
through Sharing , Communicating and
Collaborating among members of the
developer community” 
4
Why a Mail API ?
● End of 2019 :
– Need for a new way of delivering labs, Workshops:
– Move away from pdf and putty sessions…
– Jupyter Technology looked interesting:
● 2020 Covid 2019 Pandemy
– Need to accelerate to support virtual Events (TSS 2020, HPE
DVE 2020, KubeCon...)
– Build up first two jupyterhub servers (Staging and prod)
– Many manual processes to handle workshop management @
first
– One ANSIBLE Playbook to distribute notebooks over the
different Students and a few scripts…
– No Registration Portal
– No Automation
● First Beta after Discover 2020
– First registration portal and early works on Mail API
– Pilot in October 2020
● Production in October 2020
– More than 1500 Workshops delivered since October 2020
5
INFRASTRUCTURE
IN PLACE
Jupyterhub Server
(postfix + procmail)
A single DL360 Gen10 Server
Infrastructure hosting API
Endpoints
• HPE OneView Appliances
• Nimble Virtual Arrays
• HA HPE Container Platform MLOPS
• Aruba OVAs
• Redfish/OpenBMC VMs
https://hackshack.hpedev.io/workshops
Registration portal - Netlify
2 student &
notebook setup
(smtp API)
6 training
(http)
7 appliances
interaction
(REST API)
1 WoD
(http)
3 appliances setup
(ssh+REST API)
2 and 4 back-end
update
(REST API)
5 user info
(smtp)
6
A MAIL API, REALLY ?
•Not all systems are https reachable (security)
•Mail provides some advantages over https
– free queuing system
– Passes complex network setup
•Procmail helps manage API mail requests
– Easy input filtering
– Easy parameters management
– Script called from procmail to perform actions
•Tests are easy to perform
7
ANSIBLE + NOTEBOOKS
●
Ansible is used for
– Platform installation
– Platform conformity and convergence
– Student setup including notebooks instantiation
●
Usage of variables to support multi-site
– Sandbox, staging, production, dev, ...
●
Usage of Jinja2 features to individualize notebooks
8
LIVE VIDEO EXAMPLE
IT'S SHOW TIME FOLKS !
9
THERE'S MORE AND WHAT'S NEXT ?
●
Everything under private git
●
25 Workshops in production
●
Built on Ubuntu 20.04 + Jupyter kernels
– python, bash, powershell, go, rust, java, ansible, ssh
●
Future steps:
– 2 more workshops per month
– Improved CI/CD (automated tests per commit)
– CentOS port (Done mostly)
– Docker spawner for Jupyter
– NoteBook completion Measurement (Ongoing)
– Open Sourcing
– More Notebooks (Ongoing)
10
BUILD | COMMUNICATE | COLLABORATE
hpedev.io
Yammer Group (Partner)
hpedev.slack.com
Monthly Newsletter
mailto:hpedev@hpe.com
@HPE_DevCom
Yammer Group (Internal)
Workshops-on-Demand
THANK YOU
Frederic.Passeron@hpe.com
Bruno.Cornec@hpe.com

Contenu connexe

Similaire à API != REST - procmail à la rescousse

Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014
Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014
Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014
O10ée
 
Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009
Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009
Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009
Renaud AIOUTZ
 
Openshift 3 & Kubernetes
Openshift 3 & KubernetesOpenshift 3 & Kubernetes
Openshift 3 & Kubernetes
Perfect Memory
 
Radio France rencontre Drupal
Radio France rencontre DrupalRadio France rencontre Drupal
Radio France rencontre Drupal
Olivier Friesse
 
Arte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes webArte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes web
Acquia
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm
 
Php sous Windows - webcamps Paris
Php sous Windows - webcamps ParisPhp sous Windows - webcamps Paris
Php sous Windows - webcamps Paris
LeTesteur
 
SUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSP
SUSE
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
Mame Cheikh Ibra Niang
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
Nicolas Georgeault
 
De la chaîne de production au SI géré par des logiciels
De la chaîne de production au SI géré par des logicielsDe la chaîne de production au SI géré par des logiciels
De la chaîne de production au SI géré par des logiciels
Johan Moreau
 
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
mazurus
 
Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...
Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...
Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...
ABES
 
Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?
Aref Jdey
 
Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?
Aref Jdey
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
julien pauli
 
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCRetour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Ludovic A
 
WebExtensions : Où en est-on ? /// Where we are ?
WebExtensions : Où en est-on ? /// Where we are ?WebExtensions : Où en est-on ? /// Where we are ?
WebExtensions : Où en est-on ? /// Where we are ?
Christophe Villeneuve
 
Créer une API GraphQL avec Symfony
Créer une API GraphQL avec SymfonyCréer une API GraphQL avec Symfony
Créer une API GraphQL avec Symfony
Sébastien Rosset
 
Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4
Microsoft
 

Similaire à API != REST - procmail à la rescousse (20)

Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014
Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014
Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014
 
Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009
Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009
Plugin PMB/SPIP Risom Pour Abf Auvergne 24 Avril 2009
 
Openshift 3 & Kubernetes
Openshift 3 & KubernetesOpenshift 3 & Kubernetes
Openshift 3 & Kubernetes
 
Radio France rencontre Drupal
Radio France rencontre DrupalRadio France rencontre Drupal
Radio France rencontre Drupal
 
Arte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes webArte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes web
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
 
Php sous Windows - webcamps Paris
Php sous Windows - webcamps ParisPhp sous Windows - webcamps Paris
Php sous Windows - webcamps Paris
 
SUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSP
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
 
De la chaîne de production au SI géré par des logiciels
De la chaîne de production au SI géré par des logicielsDe la chaîne de production au SI géré par des logiciels
De la chaîne de production au SI géré par des logiciels
 
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
 
Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...
Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...
Jabes 2019 - Session parallèle "Comment faciliter la co-construction au sein ...
 
Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?
 
Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?Le logiciel libre est-il soluble dans l'économie marchande?
Le logiciel libre est-il soluble dans l'économie marchande?
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
 
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCRetour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
 
WebExtensions : Où en est-on ? /// Where we are ?
WebExtensions : Où en est-on ? /// Where we are ?WebExtensions : Où en est-on ? /// Where we are ?
WebExtensions : Où en est-on ? /// Where we are ?
 
Créer une API GraphQL avec Symfony
Créer une API GraphQL avec SymfonyCréer une API GraphQL avec Symfony
Créer une API GraphQL avec Symfony
 
Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4
 

Plus de Open Source Experience

GAFAM or not GAFAM dans les collectivités
GAFAM or not GAFAM dans les collectivitésGAFAM or not GAFAM dans les collectivités
GAFAM or not GAFAM dans les collectivités
Open Source Experience
 
Évolutions de la gouvernance des projets libres
Évolutions de la gouvernance des projets libresÉvolutions de la gouvernance des projets libres
Évolutions de la gouvernance des projets libres
Open Source Experience
 
Data in Motion : un enjeu pour la modernisation des systèmes d'information
Data in Motion : un enjeu pour la modernisation des systèmes d'informationData in Motion : un enjeu pour la modernisation des systèmes d'information
Data in Motion : un enjeu pour la modernisation des systèmes d'information
Open Source Experience
 
Gérer vos clusters Kubernetes avec Flux 2 et la méthode GitOps
Gérer vos clusters Kubernetes avec Flux 2 et la méthode GitOpsGérer vos clusters Kubernetes avec Flux 2 et la méthode GitOps
Gérer vos clusters Kubernetes avec Flux 2 et la méthode GitOps
Open Source Experience
 
Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...
Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...
Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...
Open Source Experience
 
La montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverteLa montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverte
Open Source Experience
 
Mon application web en 20 minutes
Mon application web en 20 minutesMon application web en 20 minutes
Mon application web en 20 minutes
Open Source Experience
 
L’Open Science au service des personnes atteintes d’épilepsie
L’Open Science au service des personnes atteintes d’épilepsieL’Open Science au service des personnes atteintes d’épilepsie
L’Open Science au service des personnes atteintes d’épilepsie
Open Source Experience
 
Une infrastructure Cloud et une solution IDaaS 100% libres
Une infrastructure Cloud et une solution IDaaS 100% libresUne infrastructure Cloud et une solution IDaaS 100% libres
Une infrastructure Cloud et une solution IDaaS 100% libres
Open Source Experience
 
Impliquer des contributeurs externes dans son projet open source
Impliquer des contributeurs externes dans son projet open sourceImpliquer des contributeurs externes dans son projet open source
Impliquer des contributeurs externes dans son projet open source
Open Source Experience
 
Conseils de survie pour hiérarchiser les cybermenaces
Conseils de survie pour hiérarchiser les cybermenacesConseils de survie pour hiérarchiser les cybermenaces
Conseils de survie pour hiérarchiser les cybermenaces
Open Source Experience
 
AliceVision : pipeline de reconstruction 3D open source
AliceVision : pipeline de reconstruction 3D open sourceAliceVision : pipeline de reconstruction 3D open source
AliceVision : pipeline de reconstruction 3D open source
Open Source Experience
 
Analyse de la composition logicielle à l’aide d’outils open source
Analyse de la composition logicielle à l’aide d’outils open sourceAnalyse de la composition logicielle à l’aide d’outils open source
Analyse de la composition logicielle à l’aide d’outils open source
Open Source Experience
 
E-commerce en 2021 : grandes tendances technologiques dans le développement d...
E-commerce en 2021 : grandes tendances technologiques dans le développement d...E-commerce en 2021 : grandes tendances technologiques dans le développement d...
E-commerce en 2021 : grandes tendances technologiques dans le développement d...
Open Source Experience
 
Démo : comment sécuriser des milliers de serveurs gratuitement
Démo : comment sécuriser des milliers de serveurs gratuitementDémo : comment sécuriser des milliers de serveurs gratuitement
Démo : comment sécuriser des milliers de serveurs gratuitement
Open Source Experience
 
GNU/Linux ou Android comme système d'exploitation embarqué ?
GNU/Linux ou Android comme système d'exploitation embarqué ?GNU/Linux ou Android comme système d'exploitation embarqué ?
GNU/Linux ou Android comme système d'exploitation embarqué ?
Open Source Experience
 
Démystifier les architectures orientées événements avec Apache Kafka
Démystifier les architectures orientées événements avec Apache KafkaDémystifier les architectures orientées événements avec Apache Kafka
Démystifier les architectures orientées événements avec Apache Kafka
Open Source Experience
 
Partagez votre code et non vos secrets
Partagez votre code et non vos secretsPartagez votre code et non vos secrets
Partagez votre code et non vos secrets
Open Source Experience
 
Badge des bonnes pratiques OpenSSF de la CII
Badge des bonnes pratiques OpenSSF de la CIIBadge des bonnes pratiques OpenSSF de la CII
Badge des bonnes pratiques OpenSSF de la CII
Open Source Experience
 
Ciel ! Mon Kubernetes mine des bitcoins...
Ciel ! Mon Kubernetes mine des bitcoins...Ciel ! Mon Kubernetes mine des bitcoins...
Ciel ! Mon Kubernetes mine des bitcoins...
Open Source Experience
 

Plus de Open Source Experience (20)

GAFAM or not GAFAM dans les collectivités
GAFAM or not GAFAM dans les collectivitésGAFAM or not GAFAM dans les collectivités
GAFAM or not GAFAM dans les collectivités
 
Évolutions de la gouvernance des projets libres
Évolutions de la gouvernance des projets libresÉvolutions de la gouvernance des projets libres
Évolutions de la gouvernance des projets libres
 
Data in Motion : un enjeu pour la modernisation des systèmes d'information
Data in Motion : un enjeu pour la modernisation des systèmes d'informationData in Motion : un enjeu pour la modernisation des systèmes d'information
Data in Motion : un enjeu pour la modernisation des systèmes d'information
 
Gérer vos clusters Kubernetes avec Flux 2 et la méthode GitOps
Gérer vos clusters Kubernetes avec Flux 2 et la méthode GitOpsGérer vos clusters Kubernetes avec Flux 2 et la méthode GitOps
Gérer vos clusters Kubernetes avec Flux 2 et la méthode GitOps
 
Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...
Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...
Quelle est la valeur de l’open source ? Étude de l’UE sur l’impact de l’open ...
 
La montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverteLa montée en puissance de l’infrastructure ouverte
La montée en puissance de l’infrastructure ouverte
 
Mon application web en 20 minutes
Mon application web en 20 minutesMon application web en 20 minutes
Mon application web en 20 minutes
 
L’Open Science au service des personnes atteintes d’épilepsie
L’Open Science au service des personnes atteintes d’épilepsieL’Open Science au service des personnes atteintes d’épilepsie
L’Open Science au service des personnes atteintes d’épilepsie
 
Une infrastructure Cloud et une solution IDaaS 100% libres
Une infrastructure Cloud et une solution IDaaS 100% libresUne infrastructure Cloud et une solution IDaaS 100% libres
Une infrastructure Cloud et une solution IDaaS 100% libres
 
Impliquer des contributeurs externes dans son projet open source
Impliquer des contributeurs externes dans son projet open sourceImpliquer des contributeurs externes dans son projet open source
Impliquer des contributeurs externes dans son projet open source
 
Conseils de survie pour hiérarchiser les cybermenaces
Conseils de survie pour hiérarchiser les cybermenacesConseils de survie pour hiérarchiser les cybermenaces
Conseils de survie pour hiérarchiser les cybermenaces
 
AliceVision : pipeline de reconstruction 3D open source
AliceVision : pipeline de reconstruction 3D open sourceAliceVision : pipeline de reconstruction 3D open source
AliceVision : pipeline de reconstruction 3D open source
 
Analyse de la composition logicielle à l’aide d’outils open source
Analyse de la composition logicielle à l’aide d’outils open sourceAnalyse de la composition logicielle à l’aide d’outils open source
Analyse de la composition logicielle à l’aide d’outils open source
 
E-commerce en 2021 : grandes tendances technologiques dans le développement d...
E-commerce en 2021 : grandes tendances technologiques dans le développement d...E-commerce en 2021 : grandes tendances technologiques dans le développement d...
E-commerce en 2021 : grandes tendances technologiques dans le développement d...
 
Démo : comment sécuriser des milliers de serveurs gratuitement
Démo : comment sécuriser des milliers de serveurs gratuitementDémo : comment sécuriser des milliers de serveurs gratuitement
Démo : comment sécuriser des milliers de serveurs gratuitement
 
GNU/Linux ou Android comme système d'exploitation embarqué ?
GNU/Linux ou Android comme système d'exploitation embarqué ?GNU/Linux ou Android comme système d'exploitation embarqué ?
GNU/Linux ou Android comme système d'exploitation embarqué ?
 
Démystifier les architectures orientées événements avec Apache Kafka
Démystifier les architectures orientées événements avec Apache KafkaDémystifier les architectures orientées événements avec Apache Kafka
Démystifier les architectures orientées événements avec Apache Kafka
 
Partagez votre code et non vos secrets
Partagez votre code et non vos secretsPartagez votre code et non vos secrets
Partagez votre code et non vos secrets
 
Badge des bonnes pratiques OpenSSF de la CII
Badge des bonnes pratiques OpenSSF de la CIIBadge des bonnes pratiques OpenSSF de la CII
Badge des bonnes pratiques OpenSSF de la CII
 
Ciel ! Mon Kubernetes mine des bitcoins...
Ciel ! Mon Kubernetes mine des bitcoins...Ciel ! Mon Kubernetes mine des bitcoins...
Ciel ! Mon Kubernetes mine des bitcoins...
 

API != REST - procmail à la rescousse

  • 1. API != REST - PROCMAIL TO THE RESCUE By HPE DEV Team and HPE CIC Team
  • 2. 2 Introducing Bruno Cornec ● Software engineering and Unices since 1988: – Mostly Configuration Management Systems, Build systems, quality tools, on multiple Unix systems – Discovered Open Source & Linux (OSL) & made first contributions in 1993 – Full time on OSL since 1995, first as HPE reseller then @HPE ● Currently: – OSL Technology Strategist in HPE WW Customer Innovation Center, Grenoble, France – WW Linux Community Lead for the HPE Open Source Profession – Conferences at WW level at LinuxCon, Linux.conf.au (2007, 2013, 2014), Fosdem, RMLL POSS, ... – MondoRescue, Project-Builder.org, python-redfish, UUWL and PUSK Project Lead – LinuxCOE, mrepo, tellico, rinse, fossology, collectl, Ironic contributor – FOSSBazaar/SPDX and OSL Governance enthusiast – Mandriva, Mageia, Fedora packager ● And also: – Amateur singer (Alto / Tenor), recorder player since 1976 and Choir director since 1987, CD collector (7500+), Concerts, Photography
  • 3. 3 Introducing Frédéric Passeron ● 20 years @HPE in presales organizations ● Strong focus on solutions (HP Toptools, HPSIM, Matrix, HP CloudSystem, HP Helion Openstack, HPE OneSphere HPE Ezmeral) ● Currently: – HPE Dev Experience team Solution Architect – Hack Shack Workshop on Demand (WoD) Program Manager – Vlub project management – Volumio contributor ● And also: – High end HI-FI systems fan (see video !) – Musical Streamer builder The Hack Shack@KubeCon A place for developers to gather Inviting atmosphere Informative and fun Physical now virtual Workshops Hands-on training On-demand Use of Jupyter notebooks Challenge Augments workshop material Prizes offered for creativity Replays Community Popular Hack Shack Attack game It was announced at KubeCon Austin in December 2017 Main goal: “Accelerate Innovation through Sharing , Communicating and Collaborating among members of the developer community” 
  • 4. 4 Why a Mail API ? ● End of 2019 : – Need for a new way of delivering labs, Workshops: – Move away from pdf and putty sessions… – Jupyter Technology looked interesting: ● 2020 Covid 2019 Pandemy – Need to accelerate to support virtual Events (TSS 2020, HPE DVE 2020, KubeCon...) – Build up first two jupyterhub servers (Staging and prod) – Many manual processes to handle workshop management @ first – One ANSIBLE Playbook to distribute notebooks over the different Students and a few scripts… – No Registration Portal – No Automation ● First Beta after Discover 2020 – First registration portal and early works on Mail API – Pilot in October 2020 ● Production in October 2020 – More than 1500 Workshops delivered since October 2020
  • 5. 5 INFRASTRUCTURE IN PLACE Jupyterhub Server (postfix + procmail) A single DL360 Gen10 Server Infrastructure hosting API Endpoints • HPE OneView Appliances • Nimble Virtual Arrays • HA HPE Container Platform MLOPS • Aruba OVAs • Redfish/OpenBMC VMs https://hackshack.hpedev.io/workshops Registration portal - Netlify 2 student & notebook setup (smtp API) 6 training (http) 7 appliances interaction (REST API) 1 WoD (http) 3 appliances setup (ssh+REST API) 2 and 4 back-end update (REST API) 5 user info (smtp)
  • 6. 6 A MAIL API, REALLY ? •Not all systems are https reachable (security) •Mail provides some advantages over https – free queuing system – Passes complex network setup •Procmail helps manage API mail requests – Easy input filtering – Easy parameters management – Script called from procmail to perform actions •Tests are easy to perform
  • 7. 7 ANSIBLE + NOTEBOOKS ● Ansible is used for – Platform installation – Platform conformity and convergence – Student setup including notebooks instantiation ● Usage of variables to support multi-site – Sandbox, staging, production, dev, ... ● Usage of Jinja2 features to individualize notebooks
  • 8. 8 LIVE VIDEO EXAMPLE IT'S SHOW TIME FOLKS !
  • 9. 9 THERE'S MORE AND WHAT'S NEXT ? ● Everything under private git ● 25 Workshops in production ● Built on Ubuntu 20.04 + Jupyter kernels – python, bash, powershell, go, rust, java, ansible, ssh ● Future steps: – 2 more workshops per month – Improved CI/CD (automated tests per commit) – CentOS port (Done mostly) – Docker spawner for Jupyter – NoteBook completion Measurement (Ongoing) – Open Sourcing – More Notebooks (Ongoing)
  • 10. 10 BUILD | COMMUNICATE | COLLABORATE hpedev.io Yammer Group (Partner) hpedev.slack.com Monthly Newsletter mailto:hpedev@hpe.com @HPE_DevCom Yammer Group (Internal) Workshops-on-Demand