Een release uitrollen
Elke week komt er een nieuwe CoreCP-versie: 0.51.0, 0.52.0, enzovoort. Die wordt voor je klaargezet en getest; jij beslist of hij naar je servers gaat, en jij rolt hem uit. Deze pagina beschrijft jouw deel van die week, van het lezen van he
Geschreven voor: Beheerder
Elke week komt er een nieuwe CoreCP-versie: 0.51.0, 0.52.0, enzovoort. Die wordt voor je klaargezet en getest; jij beslist of hij naar je servers gaat, en jij rolt hem uit. Deze pagina beschrijft jouw deel van die week, van het lezen van het releasedossier tot de laatste golf servers.
Wat er vóór jouw beurt gebeurt, hoef je niet zelf te doen, maar het is goed om te weten:
- Maandag wordt de kandidaat gemaakt: een testversie van alles wat die week af is, bijvoorbeeld
0.51.0~rc.1. Die wordt op de testopstelling geïnstalleerd zoals een echte server hem installeert — uit pakketten — en de volledige controleronde draait erop. - Dinsdag, na een dag op de testopstelling, wordt de release zelf gemaakt (
0.51.0) en ligt er een releasedossier voor je klaar. - Woensdag 09:00 rol jij uit.
Op vrijdag, zaterdag en zondag wordt er niet gewoon uitgerold. Loopt de controleronde op maandag uit, dan schuift de uitrol naar donderdag — nooit naar vrijdag.
Het releasedossier lezen (dinsdag)
Het dossier is één pagina per versie, in docs/release-decisions/ van de broncode, met de datum en het versienummer in de naam. Je krijgt het pad toegestuurd. Lees het in deze volgorde; dat kost vijf tot tien minuten:
- Status bovenaan: staat er "waiting for the owner's decision", dan is de release klaar voor jouw besluit.
- Gate evidence: welke kandidaat is getest, hoeveel controles slaagden, en de vingerafdruk van het logboek. Dit is hetzelfde bewijs dat je paneel straks controleert bij het uitrollen.
- Go/no-go record: negen stukken bewijs, elk met met, not met of not measured, en een aanbeveling. Een aanbeveling is geen besluit.
- Rollback: hoe je terug kunt naar de vorige versie, mocht dat nodig zijn.
- Open points: punten die nog iemand moet afhandelen.
Je besluit schrijf je op de regel Decision in het dossier: GO, GO WITH CONDITIONS, NO-GO of DEFER. Niemand anders vult die regel in.
Uitrollen op het paneel (woensdag)
Een uitrol gaat altijd in dezelfde volgorde: eerst je pakketbron en het paneel zelf, daarna de servers in golven.
1. De release op je eigen pakketbron zetten
- Ga naar Releases → Productiebron.
- Controleer in het vak dat de werksleutel geldig is. Staat er dat hij verlopen of ingetrokken is, dan kan uitrollen niet; volg dan het draaiboek sleutelbeheer.
- Vul bij Releaseset de versie in, bijvoorbeeld
0.51.0, en bij Reden een korte zin, bijvoorbeeld "weekrelease 0.51". - Klik Uitrollen. Het paneel vraagt je tweede factor.
- In het logvak zie je drie stappen: ophalen, controleren en publiceren. Bij controleren kijkt het paneel of de set ondertekend is door de bouwserver, of elk pakket klopt, en of het poortbewijs het bewijs is dat in het dossier stond. Klopt er iets niet, dan wordt de set geweigerd met de reden erbij en blijft de vorige versie op je bron staan.
Na klaar kunnen je servers de nieuwe versie ophalen. Er is dan nog niets geïnstalleerd.
2. Het paneel zelf bijwerken
Het paneel moet altijd minstens zo nieuw zijn als de servers die het beheert. Het werkt zichzelf bij op de paneelserver (zie Vanaf de terminal hieronder). Onder Releases → Uitrolplan zie je daarna bij Het paneel de nieuwe versie en de uitkomst van de bijwerking.
3. De servers in golven
- Blijf op Releases → Uitrolplan. Het plan staat er al: eerst het paneel, dan golf 1 met de testserver, dan golf 2, dan golf 3.
- Klik Uitrol volgens plan starten. Het paneel weigert dat zolang het zelf nog niet voorop loopt — werk dan eerst stap 2 af.
- Volg de uitrol op het releasebord. De eerste golf is de kanarie: pas als die gezond is, gaat de volgende golf.
- Een server die vóór de uitrol al niet gezond was, wordt overgeslagen met de reden erbij. Los dat op en start daarna een herstel-uitrol.
Is de laatste golf bijgewerkt, dan ben je klaar. Informeer je klanten via de statuspagina en de kanalen van je eigen bedrijf; CoreCP stuurt zelf alleen meldingen in het paneel en per mail.
Terug naar de vorige versie
Gaat er iets mis, dan staat in het dossier onder Rollback precies wat je doet. In het kort:
- Op Releases → Productiebron vul je de vorige versie in en klik je Uitrollen: je bron houdt de huidige en drie vorige versies bij.
- Het paneel zet zichzelf terug zolang de laatste databasestap niet gedraaid heeft.
- Servers die de nieuwe versie al hebben, zet je per server terug.
Een fout die niet tot volgende week kan wachten, gaat via een reparatie of een spoeduitgave: zie Patch en noodupdate.
Vanaf de terminal
Op de paneelserver, als root:
# Wat de bron serveert, welke sleutel tekent, of uitrollen kan
corecp-panel dist status
# De release ophalen, controleren en publiceren (hetzelfde als de knop Uitrollen)
corecp-panel dist publish 0.51.0 --reason "weekrelease 0.51"
# Het paneel zelf bijwerken: back-up, wisselen, controleren, afronden
corecp-panel self-update --to 0.51.0
corecp-panel self-update status
# Terug naar het vorige paneelpakket, zolang de laatste databasestap niet gedraaid heeft
corecp-panel self-update --rollbackOp een server zie je welke versie draait en welke bron hij vertrouwt:
corectl --version
corectl update trustZie ook
- Releases beheren — het releasebord, het uitrolplan en de noodbaan.
- Patch en noodupdate — een reparatie tussen twee weekreleases door.
- Hoe CoreCP-versies werken — wat de cijfers en de staartjes betekenen.