pkgsync
Etter litt irritasjon (bl.a. fra sure gamle panger ;-) ) mht. hva som er installert på hvilke arbeidsstasjoner osv., har jeg (Steinar) laget et lite system for å holde pakkene på boksene våre mest mulig i sync (primært basert på aptitude foreløpig).
Systemet baserer seg på tre lister i /etc/pkgsync/ (disse distes via [puppet fra cassarossa, se under om klassebasert pkgsync), som basically inneholder følgende:
- `musthave' – pakker som skal være tilgjengelige på samtlige arbeidsstasjoner. Din favoritt-WM, -editor eller annet uvurderlige verktøy havner her. Pakker som er i musthave men som ikke er i systemet vil bli installert når pkgsync kjører. Du trenger ikke å ta med avhengigheter; systemet ordner slikt selv.
- `mayhave' – pakker som ikke vil bli fjernet, men heller ikke automatisk installert. Ting skal ikke være i mayhave med mindre du har en veldig god grunn!
- `maynothave' – pakker som ikke skal være på noen bokser, går her (typisk ppp, pcmcia-cs, o.l.). Pakker som er i mustnothave men som er i systemet vil bli fjernet.
Pakkelistene er basert på den listen som var i wikien før; dersom du savner din favorittpakke er det ditt problem og ikke minst ditt ansvar å slenge den inn selv. :-) Pakkelistene støtter kommentarlinjer (men ikke kommentarer på slutten av linja), wildcards (f.eks. kernel-image-2.6.[78]-1-*) og blanke linjer.
Etter at alle disse listene er prosessert, gjør systemet en "aptitude dist-upgrade" som samtidig fjerner alt av `cruft', dvs. pakker som den ikke vet hva er. Alt som ikke er enten sentrale basepakker i systemet eller i musthave/mayhave, eller som er dependencies eller recommends av disse, ryker mao. ut (de blir dog ikke purget). På denne måten slipper vi at vi har alt for mye ræl inne på arbeidsstasjonene, og folk faller mindre for fristelsen for å apt-gette inn noe på én maskin når det egentlig burde være på alle ;-)
pkgsync kjører fra cron hver natt via cron.daily (dvs. ca. seks om morgenen). Dersom noe går galt (dvs. en av kommandoene underveis tryner) blir hele loggen cat-et ut til cron, og vi vil få en mail til RT.
pkgsync kommer som Debian-pakke og distribueres via Debians ordinære speilarkitektur (med meg som maintainer). Systemet kjører på alle ITKs arbeidsstasjoner, og er relativt stabilt. pkgsync er tilgjengelig fra sarge og nyere, selv om en del logikk og opsjoner kun er tilgjengelig i etch/sid.
Klassebasert pkgsync
TODO! Her må noen skrive noe fornuftig om puppet og pksync. Før var det et avsnitt om cfengine og klassebasert pkgsync her.
Eksterne linker
- Bugliste for pkgsync i Debian.
Lenker: Start, arkiv, utdatert dokumentasjon
Epost: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2007-11-03 18:27 | Revisjon: 9 (historie, blame) | Totalt: 1905 kB | Rediger