top of page

Git etiketinden canlı sunucuya: sürüm hattımız

Yazarın fotoğrafı: Marcel Dütscher
Marcel Dütscher
7 Tem
1 dakikada okunur

Blocks Beyond The Stars'ın bir sürümü bugün tek bir komuttan oluşuyor: bir git etiketi göndermek. Sonrasında her şeyi makine yapıyor. Bu yazıda CI/CD hattımızı gösteriyorum ve bir hobi projesi için bile emeğin neden karşılığını verdiğini anlatıyorum.


Sürüm iş akışı. v0.7.4 gibi bir etiket gönderilir gönderilmez GitHub Actions eksiksiz paketi derliyor: Windows yükleyicileri (kurulum, taşınabilir, MSI), bir Linux derlemesi, tarayıcı için bir WebGL derlemesi ve sunucu için bir Docker imajı; tek bir etiketten altı çıktı. Sürüm numarası etiketin kendisinden geliyor; tek bir doğruluk kaynağı var.


Dağıtım iş akışı. İkinci bir iş akışı yeni sürümleri sunucuya taşıyor. Bizim için önemli olan bir üretim kapısı idi: dağıtım yalnızca açıkça onaylandıktan sonra başlıyor. "Eyvah, bu üretimdi" kazaları yok. Sunucunun kendisi oyun sürümünü bir yapılandırma dosyasında sabitliyor; yeni uyanan her dünya otomatik olarak yeni sürümle başlıyor, çalışan dünyalar ise kesintiye uğramıyor.


Öğrenmemiz gereken bir ders: Oyun istemcisindeki düzeltmeler oyunculara yalnızca gerçek bir sürümle ulaşır. İstemcimiz Velopack ile kendini güncelliyor; oyunu kuran herkes yalnızca biz yeni sürüm yayımladığımızda güncelleme alıyor. Ana dala birleştirilmiş bir hata düzeltmesi, etiket gelmedikçe kimseye yardım etmiyor. Bariz geliyor, ama "düzeltilmiş" bir hatanın neden hâlâ orada olduğunu birden fazla kez merak ettik.


Peki ya tarayıcı? WebGL derlemesi sunucuya ZIP olarak bırakılıyor ve bir dizin takasıyla etkinleştiriliyor; eski dizin yedek olarak duruyor. Küçük bir version.txt şu anda neyin canlı olduğunu gösteriyor.


Tüm bu düzenek birkaç hafta sonuna mal oldu ve her sürümle kendini yeniden amorti ediyor.

Son Yazılar

Hepsini Gör
Yeni sürüm neden 2026.7.19 ve neden 0.9.2 değil 🗓️

Bugün güncelleyen herkes 0.9.1 sürümünden 2026.7.19 sürümüne atlıyor. Yazım hatası gibi görünüyor ama bilinçli bir karar: sürümleme düzenimizi “anlamsal” sürümlerden tarih tabanlı sürümlere (yıl.ay.sa

 
 

Yorumlar


Bu gönderiye yorum yapmak artık mümkün değil. Daha fazla bilgi için site sahibiyle iletişime geçin.
bottom of page