Mainframe : déploiement dans IBM LinuxONE™ Community Cloud avec GitHub Actions …

Karim
6 min readApr 19, 2020

--

IBM propose un programme permettant de tester des instances virtuelles dans sa gamme LinuxONE, un système matériel conçu pour prendre en charge et exploiter le système d’exploitation Linux :

Je procède donc après inscription à la création d’une machine virtuelle SLES 12 SP5 (détails dans le dépôt GitHub de la communauté) :

Mon instance est prête et je peux m’y connecter :

Je peux y installer Node.js :

Ainsi que PM2 :

Je peux donc raccorder mon instance au dashboard offert par Keymetrics dans PM2.io :

Je clone le dépôt sur GitHub du sempiternel démonstrateur FC :

et de lancer localement le démonstrateur avec PM2 :

fcdemo3.sh

Et il devient accessible :

Ce qui me permet également de construire la binaire pour la dernière version en développement de Caddy 2 :

Je peux tester le bon fonctionnement de Caddy 2 avec notamment ce mode expérimental avec HTTP/3 (comme dans le précédent article) :

via ce fichier Caddyfile :

avec un bon retour :

J’en profite donc pour mettre en oeuvre GitHub Actions dans le dépôt du démonstrateur FC afin de générer un déploiement sur cette instance à chaque modification de code détectée.

Pour cela j’utilise à partir du marketplace offert par GitHub, “SSH for GitHub Actions” :

Cela passe par la création du workflow suivant en YAML :

.github/workflows/nodejs.yml

Les identifiants sont stockées sous la forme de secrets dans le dépôt GitHub.

Rapide test par modification d’un fichier du dépôt GitHub dans la branche Master avec ce nouveau Dockerfile adapté à ce type d’environnement :

Le changement est détecté dans le dépôt GitHub et dans Slack

et engendre l’exécution du workflow :

qui se termine correctement :

Le workflow après connection SSH à l’instance sur LinuxONE a engendré le déploiement du démonstrateur FC via ce simple script shell :

Et effectivement le démonstrateur FC est actif et exposé via Caddy 2 et HTTP/3 :

On voit la connection sur le port 443 en UDP générée par Caddy 2 :

Sur mon poste, en utilisant la dernière version en developpement du navigateur Google Chrome, je peux verifier que le démonstrateur FC répond correctement en HTTP/3 :

Pour rappel, GitHub a annoncé que les dépôts privés avec un nombre illimité de collaborateurs sont maintenant disponibles pour tous les comptes GitHub. Auparavant, trois développeurs au maximum pouvaient accéder à un dépôt privé gratuitement. Ainsi, toutes les fonctionnalités de base sont accessibles pour l’ensemble des utilisateurs …

À suivre ! …

--

--