Scriptie ingediend tot het behalen van de graad van PROFESSIONELE BACHELOR IN DE ELEKTRONICA-ICT
Optimalisatie van het software packaging proces Sander Ysenbaardt Departement Wetenschappen en Techniek Opleiding Elektronica-ICT Academiejaar 2014-2015
Interne promotor: Tim Dams Externe promotors: Bart Asnot, Joeri Puttevils
Versie: 11 juni 2015
Dankwoord
Meerdere mensen hebben mij geholpen om mijn stage tot een goed einde te brengen. Deze zou ik hierbij willen bedanken. Eerst en vooral mijn interne en externe promotors, namelijk Tim Dams, Bart Asnot en Joeri Puttevils. Zij hebben mij goed begeleid tijdens mijn stage en ik kon altijd bij hen terecht met vragen. Ook zou ik het werkplek beheerteam willen bedanken die mij de basis hebben aangeleerd van software packaging. Uiteraard wil ik Digipolis bedanken omdat ze me de kans hebben gegeven stage bij hen te lopen. En tot slot mijn ouders, voor hun steun en het nalezen van dit werk. Antwerpen, 11 juni 2015 Sander Ysenbaardt
i
Abstract Digipolis staat in voor het beheer van meer dan 10.000 pc’s. Op deze pc’s moet allerhande software ge¨ınstalleerd en beheerd worden. Dit kan uiteraard niet allemaal manueel gedaan worden. Daarom wordt er gebruik gemaakt van software die dit kan automatiseren. Mijn stage heeft tot doel het huidige systeem te leren kennen en dan verbeteringen aan deze manier aan te brengen zodat er in de toekomst minder tijd moet besteed worden aan de verspreiding van software en er minder fouten gemaakt kunnen worden. De huidige software package en delivery omgeving bestaat uit een script wrapper voor de te verspreiden software zodat er voor de eindgebruikers steeds een uniforme manier is voor de installatie van software. Nu kunnen er in de wrapper ook nog aanpassingen gemaakt worden aan de installatie. Deze wrapper is geschreven in VBscript code. Het uiteindelijke verspreiden van de software wordt gedaan door middel van Altiris, dit is enterprise management software van Symantec. In de nieuwe omgeving moet er in plaats van met een script wrapper gewerkt worden met Adminstudio Professional. Dit is een set van applicatie packaging tools van Flexera Software voor het maken en aanpassen van software installaties. Een applicatie voorbereid in Adminstudio kan van daaruit rechtstreeks ge¨ımporteerd worden in Altiris. Dit heeft een grote tijdsbesparing tot gevolg.
ii
Inhoudsopgave
Dankwoord
i
Abstract
ii
1 Situering 1.1 Inleiding . . . . . . 1.2 Huidige methode . . 1.3 Nieuwe methode . . 1.4 Gebruikte software . 1.4.1 Notepad++ 1.4.2 Altiris . . . . 1.4.3 Adminstudio 1.5 Terminologie . . . . 1.5.1 Msi . . . . . 1.5.2 Transform .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
2 Bespreking 2.1 Leren over software packaging . 2.1.1 Werkwijze van Digipolis 2.2 De scriptwrapper . . . . . . . . 2.2.1 User interface . . . . . 2.3 Gemaakte software pakketten . 2.3.1 Testscripts . . . . . . . 2.3.2 Adblock plus . . . . . . 2.3.3 Adobe air . . . . . . . 2.3.4 Notepad++ . . . . . . 2.3.5 DoPDF . . . . . . . . . 2.3.6 Moviemaker . . . . . . 2.4 Deployment via Altiris . . . . . 2.5 Adminstudio tools . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . iii
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . .
1 1 1 2 2 2 2 2 3 3 3
. . . . . . . . . . . . .
4 4 5 5 6 7 7 7 7 8 8 9 9 10
INHOUDSOPGAVE . . . . . . . . . . .
10 12 14 14 16 17 18 21 22 23 23
3 Resultaten 3.1 Leren software packagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Verbeteren software packaging methode . . . . . . . . . . . . . . . . . . . . .
25 25 25
4 Besluit
27
2.6
2.5.1 Application Manager . . . . 2.5.2 Repackager . . . . . . . . . 2.5.3 Editor (Installshield) . . . . 2.5.4 Tuner . . . . . . . . . . . . 2.5.5 Quality Monitor . . . . . . 2.5.6 Distribution wizard . . . . . 2.5.7 OS snapshot wizard . . . . 2.5.8 Application Isolation wizard 2.5.9 Process template editor . . Werken met Adminstudio . . . . . 2.6.1 De nieuwe wrapper . . . . .
iv . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
Lijst van figuren
2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 2.20 2.21 2.22 2.23 2.24 2.25 2.26 2.27
Software verspreiding . . . . . . scriptwrapper scripts . . . . . . Scriptwrapper interface . . . . Adblock plus logo . . . . . . . Adobe air logo . . . . . . . . . Notepad++ logo . . . . . . . . DoPDF logo . . . . . . . . . . Moviemaker logo . . . . . . . . Adminstudio logo . . . . . . . Application Manager catalog . test center . . . . . . . . . . . Repackager methode . . . . . . Repackager processen . . . . . Repackager gegevens invullen . Installshield diagram . . . . . . Tuner create new transform . . Tuner create new transform . . Deployment tab . . . . . . . . Distribution icoon . . . . . . . Distribution wizard . . . . . . . OS snapshot wizard . . . . . . OS snapshot importeren . . . . Testen op conflicten . . . . . . Testen selecteren . . . . . . . . Isolation wizard . . . . . . . . Isolation wizard vb. . . . . . . Interface van de nieuwe wrapper
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
v
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
4 5 6 7 7 8 8 9 10 10 11 12 13 13 14 15 16 17 17 18 18 19 20 20 21 22 24
Hoofdstuk
1
Situering 1.1
Inleiding
Het team werkplekbeheer van Digipolis staat in voor onder andere de verspreiding van software. Digipolis beheert meer dan 10.000 pc’s: die van de stad Antwerpen, van het OCMW en van de stadsscholen. Het zou een onbegonnen werk zijn om op al deze pc’s handmatig software te installeren en te onderhouden. Daarom wordt er gebruik gemaakt van programma’s die dit proces automatiseren.
1.2
Huidige methode
Momenteel wordt er gebruik gemaakt van een scriptwrapper om de software voor te bereiden voor verspreiding. Dit zorgt ervoor dat de installatie van de verschillende software pakketten op een uniforme manier gebeurt. Zonder al te veel user interactie: zo wordt de setup gestart met de juiste command line argumenten en wordt de installatie gelogged. De eindgebruiker krijgt ook steeds dezelfde dialoogboksen te zien bij elke installatie zodat de procedure snel herkenbaar wordt. Het testen van het software pakket gebeurt op virtuele test pc’s die beschikbaar zijn in het domein. Zo zijn er voor windows xp, windows 7 en windows 8 pc’s te vinden zowel in 32 als in 64 bit. Al naargelang de pc’s waarvoor de software beschikbaar moet worden gemaakt, wordt er getest of er geen problemen opduiken tijdens de installatie en of alles correct werkt. De verspreiding van de applicaties gebeurt dan weer met Altiris. Dit is management software voor het beheren van alle computers in het netwerk.
1
HOOFDSTUK 1. SITUERING
1.3
2
Nieuwe methode
Bij de nieuwe manier van werken gaan we gebruik maken van Adminstudio Professional. Dit is een set van tools die helpen bij het packagen van software. Adminstudio is gemaakt door Flexera Software. Het ondersteunt IT-teams op een vertrouwde manier om software voor te bereiden voor verspreiding. De verspreiding zelf zal nog altijd met Altiris van Symantec gebeuren. Adminstudio heeft de mogelijkheid om packages zelf te importeren in Altiris zodat dit niet meer handmatig moet gebeuren en zo de foutenlast kan verminderen.
1.4
Gebruikte software
Hier vindt u een korte beschrijving van de software die ik gebruikt heb tijdens mijn stage en waarom deze relevant is.
1.4.1
Notepad++
Notepad++ is een gratis tekst editor. Het wordt vaak gebruikt door programmeurs omdat het zo klein en snel is. Ik heb gebruik gemaakt van Notepad++ voor het schrijven van de VBscript code en het aanvullen van xml data. De oude software packaging methode die gebruik maakt van de scriptwrapper is geschreven in VBscript en de relevante gegevens worden als xml data opgeslagen.
1.4.2
Altiris
Altiris van Symantec helpt IT-bedrijven bij het managen van software in hun netwerk. Altiris zorgt ervoor dat de juiste software op de juiste computers terecht komt en dat deze onderhouden wordt. Ik heb tijdens mijn stage gebruik gemaakt van Altiris voor het verspreiden van software die ik had voorbereid en ook om software toe te voegen aan de interne IT-store.
1.4.3
Adminstudio
Adminstudio van Flexera Software is een set van tools voor het voorbereiden van software packaging. Het zorgt voor een effici¨ente en vertrouwde manier van packagen waardoor de
HOOFDSTUK 1. SITUERING
3
benodigde tijd gevoelig kan verlagen. Nadat ik de oude methode onder de knie had, heb ik me bezig gehouden met Adminstudio om een nieuwe en snellere manier van software packagen te vinden die ook nog eens de foutenlast verlaagt.
1.5
Terminologie
Hier vind je enkele basisbegrippen in verband met software installaties.
1.5.1
Msi
Msi staat voor Windows installer. Dit is een software engine die gebruikt wordt voor de installatie van programma’s op computers die op een Windows besturingssysteem draaien. Een MSI file (.msi) is een file waar alle informatie over de installatie inzit en ook de te installeren files. Deze worden dan uitgevoerd door de windows installer. Dit is een door Microsoft ontworpen methode om programma’s op computers te installeren. Ze raden third party developers ook aan om hiervan gebruik te maken.
1.5.2
Transform
Een transform file wordt gebruikt om veranderingen te doen aan een msi. Deze worden dan opgeslagen in de transform file en de oorspronkelijke msi wordt niet rechtstreeks aangepast. Dit heeft als voordeel dat de originele installer niet wordt aangepast. Als je tijdens een installatie deze file meegeeft dan worden de veranderingen die er in staan toegepast. Dit kan gaan van toevoegen van het een bureaublad icoontje tot het uitvoeren van een extra script.
Hoofdstuk
2
Bespreking 2.1
Leren over software packaging
Voor ik aan mijn eindwerk begon, was ik nog nooit in aanraking gekomen met software packaging. Daarom was mijn eerste taak te leren wat dit precies inhield om het dan later zelf te kunnen doen. De toelichting van mijn stagebegeleider en van de werknemers van werkplekbeheer maakten veel duidelijk. Maar er kwam ook een groot deel zelfstudie aan te pas. Digipolis heeft een interne wiki, die ik heb gebruikt om hun manier van werken beter te leren kennen.
Figuur 2.1: Software verspreiding
4
HOOFDSTUK 2. BESPREKING
2.1.1
5
Werkwijze van Digipolis
Er zijn steeds een aantal stappen die doorlopen moeten worden als er software voorbereid moet worden voor verspreiding. Dit neemt de nodige tijd in beslag. Ik zal hier nu een korte samenvatting van geven. Eerst en vooral is er iemand die een aanvraag doet voor een bepaald software pakket. Dit kan een dienst zijn die een bepaalde software nodig heeft of dit kan ook een ITS medewerker zijn die iets aanvraagt. Nu moet het intake document ingevuld worden. Hierin wordt de belangrijkste informatie over de software verzameld en of er aan specifieke eisen voldaan moet worden. Dit wordt ingevuld door degene die het software pakket moet maken, in samenspraak met de aanvrager. Nu wordt de wrapper toegevoegd aan de installer en worden er nog andere dingen toegevoegd die nodig zijn voor de installatie. Bv. checks of bepaalde dingen aanwezig zijn op de doelcomputers of het toevoegen van extra register sleutels. Er worden ook al enkele kleinere test gedaan op test pc’s om te zien of de installaties zonder problemen verlopen. Als alles hiervoor geslaagd is, wordt de software toegevoegd aan Altiris indien de verspreiding hierlangs gebeurt. Vervolgens wordt een policy aangemaakt, waarin een aantal personen staan die de software moeten krijgen. Zij kunnen deze testen en zien of er geen complicaties optreden. tenslotte wordt iedereen aan de policy toegevoegd en kan de software naar iedereen verspreid worden, zodat deze in gebruik kan worden genomen.
2.2
De scriptwrapper
Het belangrijkste deel van de software voorbereiding voor verspreiding is de scriptwrapper. Hier kruipt ook de meeste tijd in om te ontwikkelen. Dit heb ik eerst onder de knie moeten krijgen omdat dit ook hetgene is dat door Adminstudio vervangen gaat worden. scripts.png
Figuur 2.2: scriptwrapper scripts
HOOFDSTUK 2. BESPREKING
6
Bovenstaande afbeelding toont waaruit de wrapper bestaat. Een source folder waarin de originele installer wordt opgeslagen en een xml bestand waarin de informatie over het pakket wordt opgeslagen. Dan het hoofd setup script dat eerst gerund wordt en de nevenscripts die afhankelijk van de actie uitgevoerd worden (installeren, verwijderen, herinstalleren).
2.2.1
User interface
De user interface is het belangrijkste deel van de wrapper. Het zorgt ervoor dat de eindgebruiker steeds dezelfde interface voorgeschoteld krijgt als hij een programma moet installeren. Zo geraakt hij niet verward. Aangezien de wrapper er ook voor zorgt dat alles dat moet worden bepaald, ook zelf uitvoert (zoals bv. de plaats waar het programma ge¨ınstalleerd moet worden) moet de eindgebruiker niets meer zelf invullen en kunnen hierbij ook geen fouten gemaakt worden. ui.png
Figuur 2.3: Scriptwrapper interface
HOOFDSTUK 2. BESPREKING
2.3
7
Gemaakte software pakketten
Hieronder een overzicht van de software pakketten die ik tijdens mijn tijd bij Digipolis gemaakt heb. Sommige zijn effectief in gebruik genomen, andere waren meer bestemd als oefening.
2.3.1
Testscripts
Dit waren de eerste pakketten die ik zelf gemaakt heb. Hier zat alleen maar een test in of de uitvoering effectief gelukt was. Hier kon ik in het begin wat mee uitproberen om zo te leren hoe het allemaal in zijn werk gaat.
2.3.2
Adblock plus
Een installatiepakket waar de installers van adblock plus voor zowel Google chrome, internet explorer en firefox in zitten. Het script controleert eerst welke browsers aanwezig zijn om vervolgens adblock plus te installeren.
Figuur 2.4: Adblock plus logo
2.3.3
Adobe air
Een installatiepakket voor adobe air. De installer van adobe die op het internet te vinden is, is een executable. Maar als je deze uitvoert, kan je er de msi uithalen. Deze heb ik gebruikt om het pakket te maken aangezien dat een grote tijdsbesparing geeft.
HOOFDSTUK 2. BESPREKING
8
Figuur 2.5: Adobe air logo
2.3.4
Notepad++
Dit pakket gaat eerst controleren of er al een versie van notepad++ is ge¨ınstalleerd en welke versie dit is. Een oudere versie wordt eerst verwijderd alvorens de nieuwe versie wordt ge¨ınstalleerd. Ook heb ik een register key aangepast zodat notepad++ niet heel de tijd gaat vragen om te updaten.
Figuur 2.6: Notepad++ logo
2.3.5
DoPDF
Het pakket dat ik hier gemaakt heb, gaat als vervanger van PDFCreator dienen. Dit programma wordt niet meer verder ontwikkeld en geeft problemen met nieuwere Windows versies daarom was een vervanger nodig. Ik heb doPDF toegevoegd aan de it-store van Digipolis zodat ITS medewerkers dit verder kunnen verspreiden naar mensen die problemen hebben met PDFCreator.
Figuur 2.7: Dopdf logo
HOOFDSTUK 2. BESPREKING
2.3.6
9
Moviemaker
Dit is een pakket dat verspreid werd via Altiris naar een 20-tal computers. Deze verspreiding heb ik helemaal van begin tot einde zelf gerealiseerd. Zowel het contact met de aanvrager, als de invulling van het intake document en ook de test uitgevoerd op eerst een beperkt aantal gebruikers alvorens het naar iedereen te verspreiden. Het moeilijke aan deze verspreiding was dat er ook veel oudere laptoppen tussen zaten die eerst een driver update nodig hadden. Mijn script checkte eerst of de laptop aan de nodige eisen voldeed voor een driver update, alvorens movie maker te installeren.
Figuur 2.8: Moviemaker logo
2.4
Deployment via Altiris
Nadat een pakket is aangemaakt en een eerste testfase heeft overleefd kan het toegevoegd worden aan Altiris. Dit platform zorgt voor de verdere verspreiding van het pakket naar de gewenste computers. Maar voor het allemaal verspreid kan worden, moeten nog enkele zaken aangepast worden. Het pakket moet eerst en vooral manueel toegevoegd worden. Zo moeten de install commands nog ingevoerd worden. Zo kan je bv. instellen dat het een stille installatie moet zijn, dan wordt de ui niet getoond en merkt de eindgebruiker niets van de installatie. Ook moet er een policy aangemaakt worden waarin meegegeven wordt op welke pc’s het moet ge¨ınstalleerd worden en wat de parameters van deze installatie zijn. Zoals bv. om de hoeveel tijd Altiris controleert of het programma aanwezig is op de pc’s. Dit doet het via de detection check. Dit is bv. een register key die tijdens de installatie wordt toegevoegd. Als deze aanwezig is, weet Altiris dat alles correct is verlopen.
HOOFDSTUK 2. BESPREKING
2.5
10
Adminstudio tools
Vooraleer ik een goede methode kon uitwerken voor het gebruik van Adminstudio professional moest ik eerst vertrouwd worden met alle tools die het had te bieden. Daarom heb ik me daar eerst op toegelegd. Hieronder vind je een overzicht van alle tools die aanwezig zijn en wat je ermee kan doen.
Figuur 2.9: Adminstudio logo
2.5.1
Application Manager
De Application Manager biedt een overzicht van al de applicaties die zich bevinden in de application catalog. Hier is het ook mogelijk om nieuwe applicaties toe te voegen of te verwijderen uit de catalog. De applicaties kunnen ook onderverdeeld worden in groepen voor een beter overzicht.
Figuur 2.10: Application Manager catalog
HOOFDSTUK 2. BESPREKING
11
Ook is er een test center. Hier zijn een paar geautomatiseerde tests die uitgevoerd kunnen worden op een applicatie. Er kan onder andere getest worden of een app compatible is met een bepaald besturingssysteem en of er een mogelijkheid is om de app te virtualiseren. Er kunnen ook tests uitgevoerd worden tussen twee of meerdere apps om te controleren op conflicten. Sommige van de gevonden errors kunnen automatisch opgelost worden, voor andere zal een aanpassing nodig zijn van het pakket.
Figuur 2.11: test center Er kunnen nog kleine aanpassingen gemaakt worden aan de pakket info en deployment data zoals bv. command line argumenten. Vanuit de Application Manager kan een pakket ook verstuurd worden met de Distibution wizard.
HOOFDSTUK 2. BESPREKING
2.5.2
12
Repackager
Legacy installations (.exe installations) hebben over het algemeen minder mogelijkheden bij de installatie en er is geen mogelijkheid om aanpassingen aan de installatie te doen. Met de Repackager tool is het mogelijk om deze installers om te vormen tot msi files. Het beste is om repackager remotely te starten op een schone pc: zo is de kans dat er tijdens het repackagen iets misloopt kleiner en ook de kans om een deel van de installatie te missen, verkleint. werkwijze Stap 1: Open Repackager en launch de repackaging wizard. Stap 2: Selecteer een repackaging methode. Er zijn twee mogelijkheden: installation monitoring en het gebruik van snapshots. Bij installation monitoring zal de wizard de veranderingen waarnemen die gemaakt worden tijdens de installatie en deze opslaan in een data file. Bij snapshots wordt eerst een snapshot genomen van de pc voor de installatie en daarna nog een na de voltooiing van de installatie. Nu wordt naar het verschil gekeken tussen deze twee om een data file aan te maken. Gebruik maken van de installation monitoring methode is aangeraden, aangezien deze heel betrouwbaar is en het de minste tijd in beslag neemt.
Figuur 2.12: Repackager methode
HOOFDSTUK 2. BESPREKING Je kan bij advanced settings opgeven welke processen niet gemonitord moeten worden.
Figuur 2.13: Repackager processen Stap 3: Selecteer de te repackage installer en vul de gegevens in.
Figuur 2.14: Repackager gegevens invullen
13
HOOFDSTUK 2. BESPREKING
14
Stap 4: Selecteer de folder waarin de data files moeten worden opgeslagen en start de installatie. Stap 5: In repackager worden nu de veranderingen tijdens de installatie weergegeven. Het is mogelijk om files of register toevoegingen te verwijderen die niet bij de applicatie horen of overbodig zijn. Hierna kan een msi file gemaakt worden door ’build’ te selecteren.
2.5.3
Editor (Installshield)
Installshield is een krachtige tool om aanpassingen te maken aan de msi file of om een transform file te cre¨eren die meer moet kunnen dan Tuner kan bieden (bv. ook een extra script toevoegen). De nieuwe wrapper heb ik ook met deze tool gemaakt.
Figuur 2.15: Installshield mogelijkheden diagram
2.5.4
Tuner
Tuner is een goede tool om mst files te maken voor msi installaties. Je kan aanpassingen maken aan de msi en deze worden dan opgeslagen in de mst file zodat de msi ongewijzigd blijft. Mogelijkheden: Open eerst en vooral een msi file die je wil aanpassen. Je kan ook andere transforms (mst file) openen die al bij deze msi horen. Hou er wel rekening mee dat de volgorde waarvan deze transforms waarin ze worden uitgevoerd belangrijk kan zijn.
HOOFDSTUK 2. BESPREKING
15
Je kan twee verschillende soorten transforms maken in Tuner: een lege transform en dan de aanpassingen doen die je wil en dit dan opslagen of een response transform. Een response transform doorloopt eerst de setup zodat je daarin aanpassingen kan maken die dan in een transform worden opgeslagen.
Figuur 2.16: Tuner create new transform Validation: Hier kan je de msi file vergelijken met een set guide lines om te zien of deze hieraan voldoet. Voor je aanpassingen aan de msi doet, doe je de prevalidation, na je aanpassingen de postvalidation. Zo kan je controleren of je volgens de guide lines hebt gewerkt. ˜ Organization: Hier kan je twee dingen aanpassen: de plaats waar de applicatie geA¯nstalleerd wordt en de bedrijfsnaam. System configuration: Hier kan je volgende zaken aanpassen: • Files and Folders • Registry Entries • Shortcuts • INI Files • NT Services • ODBC Resources
HOOFDSTUK 2. BESPREKING
16
Dialogs: Het is mogelijk om de setup die een gebruiker te zien krijgt tijdens de installatie aan te passen. Je kan hier overbodige dialoogvensters verbergen of dialoogeigenschappen wijzigen. Add/remove programs: Hier is het mogelijk om de verwijderknop in de ”programma’s verwijderen-lijst onbruikbaar te maken.
2.5.5
Quality Monitor
˜ Met Quality monitor kan je een aantal tests uitvoeren op geA¯nstalleerde programma’s (enkel .msi installaties) om te testen of deze correct werken. Zo wordt er onder andere getest of Windows geen restricties oplegt aan het programma waardoor het sommige files of folders niet kan bereiken. Quality monitor is ook in staat hiervoor oplossingen aan te bieden. De applicatie moet ge¨ınstalleerd zijn op de pc’s alvorens het getest kan worden.
Figuur 2.17: Tuner create new transform Nu kan je kiezen welke testen uitgevoerd moeten worden. Het is ook mogelijk alle testen in een keer uit te voeren.
HOOFDSTUK 2. BESPREKING
2.5.6
17
Distribution wizard
Vanuit de application manager kunnen applicaties distribueren via de distributieknop. Dit opent dan de distrubution wizard. Als je Altiris ingesteld hebt als database connectie of een andere deployment agent kan je met deze wizard een applicatie daar naartoe distribueren. Voor je een applicatie distribueert, kan je best controleren of alles juist is ingesteld. Dit is mogelijk in Deployment types tab. Zorg ervoor dat je de aanpassingen voor het juiste distibution system uitvoert als er meerdere zijn.
Figuur 2.18: Deployment tab Open de distribution wizard.
Figuur 2.19: Distribution icoon Kies de applicatie die toegevoegd moet worden aan de deployment agent en kies de server naar waar het verzonden moet worden. Klik next en de applicatie wordt automatisch toegevoegd.
HOOFDSTUK 2. BESPREKING
18
Figuur 2.20: Distribution wizard
2.5.7
OS snapshot wizard
De OS snapshot wizard is een simpele manier om een snapshot te maken van uw OS en zijn ˜ configuraties. Deze snapshot kan geA¯mporteerd worden in de application manager om te testen of er geen conflicten zijn tussen de applicatie en uw configuraties.
Figuur 2.21: OS snapshot wizard Open de application manager nadat de snapshot is aangemaakt en ga naar de environment tab. Hier kan je een snapshot toevoegen (.osc file).
HOOFDSTUK 2. BESPREKING
19
Figuur 2.22: OS snapshot importeren Nadat je een snapshot hebt toegevoegd, kan je deze gebruiken om tests uit te voeren in het test center van de application manager. Launch de conflict manager en selecteer de msi waarop je de test wil uitvoeren en selecteer ook een snapshot.
HOOFDSTUK 2. BESPREKING
20
Figuur 2.23: Testen op conflicten Als je maar een bepaald aantal tests wil uitvoeren, kan je in het option menu selecteren welke tests wel en niet uitgevoerd moeten worden
Figuur 2.24: Testen selecteren
HOOFDSTUK 2. BESPREKING
21
OS snapshots: do’s and don’ts: • Maak enkel een snapshot van een cleane pc • Sluit eerst alle programma’s voor je een snapshot maakt • Hou er rekening mee dat het een tijdje kan duren voor de snapshot is aangemaakt • Maak meerdere snapshots als er in je environment meerdere besturingssystemen aanwezig zijn. • Je kan een exclusion list maken van files die de wizard moet negeren tijden het maken van een snapshot.
2.5.8
Application Isolation wizard
Deze wizard scant msi pakketten en zorgt ervoor dat deze altijd de support files gebruiken die mee ge¨ınstalleerd zijn. Zo kan voorkomen worden dat meerdere applicaties dezelfde files gebruiken en er daardoor conflicten ontstaan bij updates of wanneer een programma verwijderd wordt. Er zijn twee verschillende methoden die ondersteund worden door de wizard. De manifests methode is de aangewezen methode om uw applicatie te isoleren. Het biedt hetzelfde resultaat als de ”windows installer isolation components”methode maar houdt alle informatie uit het register. Het is niet nodig dat de componenten in dezelfde map worden ge¨ınstalleerd als de applicatie.
Figuur 2.25: Isolation wizard
HOOFDSTUK 2. BESPREKING
22
Nadat je een methode gekozen hebt, kan je de applicatie isoleren. Als je niet op de isolate knop kan drukken zal je eerst manueel een assembly moeten aanmaken. Druk op ’modify’ en kies dan ’new’. • Private assemblies worden aangemaakt in de applicatie folder. • Shared assemblies worden aangemaakt in de WinSxS folder. (default) Shared assemblies hebben een digitaal certificaat nodig. Wanneer je een methode geselecteerd hebt, kan je de files selecteren die toegevoegd moeten worden tot de assembly. Klik daarna op ’ok’ en dan ’isolate’. De ge¨ısoleerde msi wordt nu aangemaakt.
Figuur 2.26: Isolation wizard vb.
2.5.9
Process template editor
Met deze editor is het mogelijk om proces templates te maken en workflows te defini¨eren. Deze kunnen gebruikt worden als leidraad voor een uniforme aanpak van een nieuw te maken pakket.
HOOFDSTUK 2. BESPREKING
2.6
23
Werken met Adminstudio
In het vorige hoofdstuk heb ik alle tools beschreven die Adminstudio bezit. Nu is het zaak met deze tools een manier van werken op te stellen die handig is voor het voorbereiden van pakketten die verstuurd moeten worden via Altiris. Eerst en vooral moet er gekeken worden wat voor installer de voor te bereiden software is. Ofwel is het een executable of een windows installer file. Als het een executable file (.exe) is, moet dit eerst omgezet worden naar een windows installer file (.msi): Dit is de door Microsoft geprefereerde methode van installeren en zo kunnen ook gemakkelijker aanpassingen gedaan worden door middel van transforms. Er kunnen ook alleen maar automatische testen uitgevoerd worden op msi files in het test center van de application catalog. Om de executable file om te zetten in een msi file gebruiken we de repackager tool. Meer informatie hierover vind je in het vorige hoofdstuk. Nu je een msi file hebt, kan je hem toevoegen aan de applicatie catalog en er dan in het test center tests op uitvoeren om te zien of er problemen zijn. Zo kan je ook testen of er problemen zijn met een snapshot van je OS configuratie die je genomen hebt met de OS snapshot wizard. Sommige problemen kunnen automatisch aangepast worden en deze worden dan in een transform file opgeslagen. Andere zal je manueel moeten doen. Als alles goed is, kan je (indien nodig) nog extra toevoegingen doen zoals een register key aanpassen zodat er automatische updates worden uitgeschakeld of een bureaublad icoontje toevoegen. Dit kan je doen met behulp van Tuner. Deze bundelt de gemaakte aanpassingen in een transform file. Als je een script wil toevoegen, kan je Installshield gebruiken. Deze voegt dit dan door middel van een transform toe. De originele installer file moet zo nooit worden aangepast. Vooraleer het via Altiris verspreid kan worden, moet de nieuwe wrapper er nog rond voor de uniforme UI en dan is alles klaar voor verspreiding. Als je het pakket met de wrapper terug toevoegt aan de application manager en deze verbinding laat maken met Altiris kan je hier de nodige parameters ingeven zoals de command line argumenten en de succes code. Zo kan je het pakket automatisch toevoegen.
2.6.1
De nieuwe wrapper
De nieuwe wrapper is gemaakt met behulp van Installshield door gebruik te maken van een advanced UI project. Dit wrapt de msi in een exe wat extra mogelijkheden biedt. De wrapper ˜ ren en is gemakkelijk te gebruiken. Ik heb een standaard wrapper gemaakt die je moet kopiA hier kan je dan de msi aan toevoegen. Je moet ook nog enkele kleine aanpassingen doen zoals de naam veranderen.
HOOFDSTUK 2. BESPREKING
24
De wrapper heeft de mogelijkheid om prerequisites toe te voegen. Dit zijn benodigdheden voor ˜ jouw installer zoals een framework. Deze prerequisites checken of deze is geA¯nstalleerd. Zo niet wordt dit eerst uitgevoerd alvorens verder te gaan met de feitelijke installatie. Ook zijn er mogelijkheden om een logfile te maken. Het is wel niet mogelijk om een variabele naam op te geven. Dat heeft als nadeel dat de vorige logfile overschreden wordt als je de installatie meerdere keren uitvoert.
Figuur 2.27: Interface van de nieuwe wrapper
Hoofdstuk
3
Resultaten 3.1
Leren software packagen
Het eerste deel van mijn stage, het leren software packagen op de bestaande manier, is zeker geslaagd door het maken van pakketten die effectief in gebruik zijn genomen zoals die voor doPDF en moviemaker.
3.2
Verbeteren software packaging methode
Het tweede deel bestond uit het verbeteren van het packaging proces door gebruik te maken van Adminstudio. Er zal nog altijd een intake document opgesteld moeten worden als er een software pakket wordt voorbereid. De verspreiding ervan loopt nog steeds via Altiris. Het loggen van software installaties is zelfs een beetje moeilijker dan met de script wrapper aangezien er geen variabelen meegegeven kunnen worden in de naam zoals de datum en tijd. Maar er zijn ook wel een aantal dingen die verbeterd kunnen worden door gebruik te maken van Adminstudio. Door gebruik te maken van Adminstudio kan een groot deel van de tests geautomatiseerd worden. Er zal nog altijd voor de werkelijke verspreiding eerst naar een aantal testers gestuurd moeten worden om te kijken of er geen problemen opduiken. Maar de interne testen kunnen toch op een snellere manier gebeuren. Het gebruik van de software catalog geeft ook een handig overzicht van alle aanwezige programma’s en doordat deze een verbinding kan maken met Altiris kan er tijd bespaard worden met het toevoegen hieraan. Het is wel zo dat de mogelijkheden van toevoegen beperkt zijn: er kunnen alleen beperkte command line opties meegegeven worden. Het grootste deel van instellen gaat dus nog steeds via Altiris zelf moeten gebeuren.
25
HOOFDSTUK 3. RESULTATEN
26
Nu windows 10 voor de deur staat, zullen er ook weer aanpassingen moeten gebeuren aan de oude wrapper. Door de nieuwe te gaan gebruiken kan dit extra werk vermeden worden. Dan moet wel elke installatie een msi zijn. Maar dat mag geen probleem vormen met de repackager tool.
Hoofdstuk
4
Besluit Ik vond het een heel leerrijke stage. Mijn kennis van software packaging was voordien onbestaande en ik kan nu toch zeggen dat ik de werking en het doel ervan begrijp. Ik kan nu ook zelf software voorbereiden voor verspreiding. Ook heb ik een goede kijk gekregen op het bedrijfsleven door zo lang bij Digipolis aanwezig te werken. Ik ben ook tevreden dat ik een manier van werken heb kunnen opstellen met Adminstudio. Niemand bij Digipolis had daar al eerder mee gewerkt en dus heb ik veel aan zelfstudie moeten doen. Maar dat is goed verlopen en ik heb ook altijd feedback gekregen op mijn bevindingen. Het is nu aan de dienst werkplekbeheer wat ze hiermee gaan doen, wat ze hiervan willen gebruiken en wat niet. Ze hebben nu zeker een basis om mee aan de slag te gaan en verder op te bouwen.
27
Bibliografie
[1] Flexera Software AdminStudio 2014 Evaluation Guide blz. 56. [2] Flexera Software AdminStudio 2014 User Guide, blz. 2618 [3] Flexera Software Installshield 2013 userguide blz. 3178 [4] Digipolis interne documentatie uit de wiki
28
Bibliografie
29