The Last Spike Online / 2026. július 15.

A játék még alig élt, de már volt reproducible dev és release workflow-ja

A Last Spike-nál nem hagytuk a deploymentet a projekt végére. A fejlesztői és release Docker workflow már a korai verziónál bekerült, hogy minden későbbi funkció ugyanazon a pályán menjen productionig.

2 perc olvasás
The Last Spike Online
DockerCI/CDreleaseDX

A helyzet

Kis projektben könnyű azt mondani, hogy előbb legyen kész a játék, majd később konténerizáljuk és deployoljuk. Ez rövid távon gyorsabbnak tűnik, de minden új funkció egy csak lokálisan ismert runtime-ra épül. Mire eljön a release, egyszerre kell alkalmazást és infrastruktúrát debugolni. Ezt a kockázatot már a projekt elején ki akartam venni.

A megoldási út

Külön Docker workflow készült fejlesztésre és release-re, közös, verziózott runtime-feltételekkel. A lokális környezet gyors iterációt kapott, a release image pedig minimális, kiszámítható kiszolgálási réteget. Nem ugyanazt a compose fájlt próbáltam minden helyzetre ráerőltetni; a közös alapot és a környezetspecifikus felelősségeket választottam szét.

Mi lett belőle

Mire a multiplayer és a production domain megjelent, a build/deploy út már nem új probléma volt. A CI ugyanazt a kódot tudta csomagolni, amit lokálisan teszteltünk, és a production változtatásoknál nem kellett kézi szerverállapotot feltételezni. A release engineering a fejlesztés része lett, nem utolsó hétvégi feladat.