10-07-2020 / Blog / Luberto
Luberto

Let’s talk – collega’s in het veld aan het woord

Luberto spreekt de taal van de IT. Al vele jaren gaat hij mee in het vak en sinds 2015 werkt hij in de rol van Data Integratie Specialist bij Virtual Sciences. Daarvoor werkte Luberto zo’n 20 jaar bij IBM, waarbij hij zich sinds 2006 richtte op integratiesoftware van IBM, m.n. WebSphere Process Server en WebSphere ESB. De automatisering van de voortbrenging van de met deze producten ontwikkelde applicaties had daarbij zijn bijzondere interesse. Luberto vindt het leuk om zijn kennis en kunde over te dragen aan minder ervaren collega’s. Zo is hij momenteel de coach van onze Make IT work junior Data Integratie Specialisten.

 

 

Klantuitdaging

Onze klant maakt gebruik van IBM DataPower Gateway appliances voor de beveiliging van haar berichtenverkeer met andere organisaties. Kenmerkend voor deze appliances is dat de configuratie van de services op de appliance zelf plaatsvindt met behulp van een webapplicatie. Dit maakt het beheren van configuraties lastig, terwijl ook het opleveren van services naar test- en productieomge­vingen de nodige uitdagingen kent. Bij de klant was het proces van realiseren en opleveren van services voor DataPower grotendeels handmatig en was er een sterke behoefte om dit proces te automatiseren, zoals bijvoorbeeld bij Java applicaties gebruikelijk is.

 

 

Fase 1: continu integreren

Na het afstemmen van de wensen en de te gebruiken tools met enkele betrokken architecten heeft Luberto allereerst een ontwerp gemaakt van de te realiseren oplossing. Na de goedkeuring van dit ontwerp door de klant is hij gestart met de realisatie van het continu integreren van DataPower services. Om dit mogelijk te maken heeft Luberto een Maven plugin ontwikkeld om DataPower applicaties met één of meer services vanuit een source code repository te installeren op een gedeelde DataPower appliance met ontwikkelaar specifieke configuratie. Ook is het met deze Maven plugin mogelijk de configuratie van services, na aanpassing door een ontwikkelaar, in een DataPower applicatie te exporteren, zodat deze kan worden bijgewerkt in de source code repository. Vanuit de source code kan een installatie pakket worden gebouwd, waarbij de met SoapUI gedefinieerde service testen automatisch worden uitgevoerd. Dit bouwproces wordt aangestuurd door Jenkins. Ook het maken van releases van DataPower applicaties wordt gedaan vanuit Jenkins, die de releases met behulp van Maven opslaat in een artifact repository (Nexus) en deze aanbiedt aan de installatie tool (een met Python gebouwde maatwerk applicatie).  

 

Fase 2: geautomatiseerd installeren

Vervolgens is Luberto aan de slag gegaan om ook de installatie van de DataPower applicaties in test- en productieomgevingen te automatiseren met behulp van de genoemde installatie tool. Om met deze tool releases op een DataPower appliance te kunnen installeren heeft hij een speciale plugin geschreven (met Python). Deze plugin maakt het niet alleen mogelijk om releases te (her)installeren, maar ook om specifieke (configuratie) bestanden en/of sleutels te vervangen. Hierbij wordt gebruik gemaakt van een repository die per pakket, stadium en bestemming de specifieke configuratie gegevens bevat. De ontwikkelde plugins alsmede instructies voor het gebruik hiervan heeft Luberto gaandeweg gedocumenteerd met Confluence.

 

Brug tussen twee werelden

 

Luberto vertelt dat hij er met name trots op is, dat het hem in dit project gelukt is om een aantal tools die bij de ontwikkeling van Java applicaties heel gebruikelijk zijn (zoals Maven en Jenkins) ook toe te passen in het proces van voortbrenging van DataPower services, waardoor hij als het ware een brug heeft gebouwd tussen deze twee werelden. De klant gaf hem alle ruimte dit te realiseren en was ook zeer tevreden met het resultaat. 

 

‘’Ik was echt onderdeel van het DataPower team. Hetgeen ik realiseerde werd vrijwel direct door de andere teamleden toegepast. Hierdoor kreeg ik snelle feedback omtrent de werkbaarheid van mijn oplossing. Hoewel ik de realisatie van de plugins zelfstandig heb uitgevoerd, is het uiteindelijke resultaat zeker een verdienste van het gehele team.’’
Luberto
Een ding is zeker.
Er kan meer dan je denkt.