Chocolatey

Chocolatey er en pakkebehandler for Windows som ligner på det man er vant med i Linux-verdenen. Den har en gratis-versjon og en betalt versjon - vi bruker førstnevnte.

Vårt oppsett

Vi bruker to pakkerepositories. Ekstern programvare henter vi fra Chocolatey sitt offisielle repository, som i stor grad distribuerer up-to-date programvare. For intern programvare har vi et privat repository i cassarossa:/export/cassarossa/ymse/choco10/packages, som deles via Samba\\samba.samfundet.no\choco10. Her har vi ikke særlig mange programmer brukeren forholder seg til, men hvis vi ønsker å kjøre bestemte PowerShell-skript kan vi pakke dem inn og legge dem her.

Lage en ny pakke

Chocolatey er egentlig bare en wrapper rundt NuGet, som er et verktøy for å installere og holde styr på .NET-biblioteker. Pakker må derfor være zippede arkiver med endelsen .nupkg, og innholdet må følge en bestemt standard. For vårt bruk må følgende være til stede:

./[Content_Types].xml
XML-fil som definerer MIME-typer.
./example.nuspec
XML-fil som definerer pakkens navn, beskrivelse osv.
./_rels/.rels
XML-fil som definerer pakkens filer.
./tools/
Filer brukt av installeren.

For at Chocolatey skal vite hvordan pakken skal installeres må man også ha med et PowerShell-skript:

./tools/chocolateyInstall.ps1
Et PowerShell-skript som kjøres av installeren.

Til slutt, hvis pakken skal autoinstalleres, må den defineres i cassarossa:/export/cassarossa/ymse/choco10/packages.config.

Når du skal lage en ny pakke starter du i cassarossa:/export/cassarossa/ymse/choco10

cp -r source/example source/pakkenavn
cd source/pakkenavn
vim example.nuspec # endre metadata. versjonnummer skal være ÅRMÅNEDDATO.SEKVENS
# kopier inn nødvendige filer til ./tools
vim tools/chocolateyInstall.ps1 # endre installasjonsskript
vim _rels/.rels # hvis du har fjernet eller lagt til filer
zip -r pakkenavn.versjonnummer.nupkg * # lager .nupkg-filen. viktig at versjonnummer tilsvarer det i pakkenavn.nuspec!
install pakkenavn.versjonnummer.nupkg –owner=chocolatey –group=itk –mode=400 ../../packages/ # flytt til rett sted
cd ../../ # gå tilbake til chocolateys rotnivå
vim packages.config # legg til en linje med pakkenavn og kilde hvis pakken skal autoinstalleres

Lenker: Start, suwi10

Mail: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2019-01-17 23:13 | Revisjon: 6 (historie, blame) | Totalt: 1497 kB | Rediger