Bir süredir(28 gündür) üzerinde çalıştığım Mozilla'nın bir ürünü olan Balrog'dan ve katkı sürecinde neler yaptığımdan bahsedeceğim.
Balrog, Firefox ve diğer Mozilla ürünleri tarafından kullanılan güncelleme sisteminin sunucu taraflı bileşenini çalıştıran yazılımdır. AUS(Application Update Service) devamıdır.
Mevcut gereksinimlerimiz, yeni iş gereksinimlerimize uyum sağlamamıza izin vermedi veya buna göre ölçeklendirilmedi diyelim; balrog daha hızlı ve daha esnek bir şekilde güncelleme yapmamıza yardımcı oluyor. :)
Veritabanı modeli "Rules" ve "Release" olarak iki grup şeklindedir.
Rules -> Gelen güncelleme isteklerini ürüne, kanala ve diğer alanlara göre filtrelememize ve bu bilgileri doğru yanıt vermek için kullanmamıza izin veriyor.
Release -> Balrog'un diğer önemli kısımlarıdır. Bunlar gönderdiğimiz bir dizi ikili dosyalar kümesi hakkında meta verileri(platformlar, yerel ayarlar, yük yükleme URL'leri vb.) içeren modellerdir.
Şimdi gelelim Balrog'a nasıl katkı verdiğime ve hangi kaynakları kullandığıma :)
Proje iki kısımdan oluşuyor : "Frontend" ve "Backend". Ben "Frontend" kısmı ile ilgilendiğim için adımları ona göre anlatacağım.
- Öncelikle Balrog'un reposunu Github adresinden (https://github.com/mozilla/balrog) forklamamız gerekiyor. Umut ediyorum ki Github hesabımız var ve Git kullanmayı biliyoruz :)
- git clone https://github.com/USER_NAME/balrog.git
- cd ui/
- sudo npm install
- sudo npm install -g lineman
- sudo docker-compose up
- Browserımızı açıp 127.0.0.1:8080 yazıyoruz ve artık Balrog Admin sayfasını görebiliriz. :)
Şimdi Balrog'un bilgisayarımızda çalışır halde olduğunu gördükten sonra yapmamız gerekenler var:
- Balrog ile ilgili hata kayıtlarını görebilmek için https://bugzilla.mozilla.org/ adresinden Balrog'u ve hangi kısmında çalışacaksak ( Backend ya da Frontend) filtreleme yaptıktan sonra size uyan hatayı seçiyoruz.
- Bugzilla da hata kaydını üzerinize kendiniz alamıyorsunuz, mentöre bu yama ile ilgilendiğinizi bildiren mail atabilir ya da hata kaydının altına ilgilendiğinizi belirtebilirsiniz.
- Mentörlerle saat farkından dolayı haberleşmek biraz heyecanlı geçiyor. :) Biraz değil bence çok heyecanlı geçti. Oyüzden mentör ile haberleşirken onun IRC kanalında hangi zamanlarda online olduğunu keşfedip( ona danışmak daha az atraksiyonlu olabilir :D ) oradan yazışmanız daha kolay olabilir.
- Balrog'un IRC kanalı irc://irc.mozilla.org/#balrog 'dur.
- Hatayı seçtikten ve gerekli çözüme kavuşturduktan sonra Pull Request(PR) oluşturmamız gerekiyor.
- Balrog ile ilgili detaylı bilgiyi http://mozilla-balrog.readthedocs.io/en/latest/index.html bu adresten öğrenebilirsiniz. Hatta şu şekilde bir güzellik yapmışlar. Contributorler için http://mozilla-balrog.readthedocs.io/en/latest/contribute.html#irc-best-practices bu sayfadaki adımları takip edebilirsiniz.
Hep özgür ve yardımsever kalmadınız dileğiyle 😇
Hiç yorum yok:
Yorum Gönder