Bu meta depoyu tüm projelerde ortak olarak kullanılabilecek bilgi, kural ve dosyaların (betik, grafik, yapılandırma vb) kayıtlanması için kullanıyoruz. Bu depodaki alt dizinleri değerlendirirken kurumdan bağımsız olarak kurgulanan omu/debian deposunu da dikkate alın. Genel ilke:
-
Kuruma özgü olmayan genel nitelikte içerik omu/debian deposunda
-
Kuruma özgü her şey bu depoda
-
Sistem yönetimiyle ilgili içerik omu/root deposunda
Dokümanları bu depoya koymuyoruz, dokümanlar Notion'da ve kısmen G-Suite veya Dropbox'ta paylaşılıyor.
Geliştiricilerin kullanabileceği ve sistem yönetimi türünde olmayan ortak betikler.
Kuruma özgü (ama konağa özgü olmayan) provizyonlama betikleri, yani omu/debian deposundaki lib/scripts
'in kurumsal
karşılığı.
Kuruma özgü şablonlar.
Sözlükler.
Sınıflanamayan dosyalar.
Geliştiriciler tarafından kullanılabilecek ortak yapılandırmalar; her uygulama bir alt dizinde düzeniyle (ör.
/etc/tmux
)
Planlanmış projeler kod adlarıyla birlikte aşağıda listelenmiştir. Proje adları Türkçe karakter içermeyen Türkçe kelimelerden seçilir. İsim havuzu için sözlüğe başvurabilirsiniz. Her iş için ayrı bir depo açmak yerine birbiriyle ilişkili işleri konsolide eden "mono repo"lar tercih edilmelidir.
Kod adı | Proje |
---|---|
aktar |
Otomasyon adaptörleri (mono repo) |
birim |
Birim editörü |
fil |
Lisans öğrenci otomasyonu |
garson |
RPC servisleri (mono repo) |
hamal |
Arka plan görevleri (mono repo) |
joker |
Destek kitaplıkları (mono repo) |
kalem |
Kalite otomasyonu |
piyon |
Lisansüstü öğrenci otomasyonu |
taban |
Otomasyon çekirdeği |
ultrason |
Yönetici paneli |
vezir |
Personel otomasyonu |
Onay | Açıklama | Rozet |
---|---|---|
Seed | Fikir aşamasında yazılım | |
Beta | Beta yazılım | |
Legacy | Eski yazılım | |
Work | Onaylı yazılım | |
Product | Tam onaylı yazılım |
Bir yazılım projesinin onay alması için ("Work") aşağıdaki asgari koşulları sağlaması gerekir:
- Sunulan kurum alt yapısı üzerinde konuşlandırılmış olmalı
- CI ile entegre edilmiş temel "entegrasyon" testlerinden geçiyor (test yoksa eklenmeli, birim testler atlanabilir)
- CI ile entegre edilmiş lint denetimlerinden geçiyor (legacy yazılımlarda lintleme kural/dosya seçerek yapılmalı)
- Geliştirme süreci korunmuş dallarda PR'larla gerçekleşiyor (review koşul değil fakat CI testleri yeşillenmeli)
- Dış servis erişimlerini kendi olanaklarıyla değil sunulan kurum alt yapısıyla gerçekleştiriyor
- Arka plan görevlerinde sunulan kurum alt yapısını kullanıyor
Yazılım projesinin tam onay alması için ("Product") yukarıdaki koşullara ilave olarak şu koşulları sağlaması gerekiyor:
- Kurumsal temayı kullanıyor
- İlgili dil/framework için bildirilen kurallara uyuyor
- PR'lar en az bir geliştiricinin onayından geçiyor
- Kurumsal SSO arkasında çalışıyor
- Diğer uygulamalarla RPC üzerinden haberleşiyor
- Çok kiracılı mimariyi destekliyor
- Çok dilliliği destekliyor
- Birim test code coverage değeri en az %80 olmalı
Yol haritası sırayla numaralandırılmış ve isimlendirilmiş duraklardan oluşur. Durak isimleri için sırasıyla Türkiye şehir adları ve dünya şehir adları kullanılır. Duraklar kendi içinde bütünlük taşıyan bir veya birden fazla alt durak içerir. Her alt durak için ilgili depolar listelenir ve durak geçmiş zaman kipinde pozitif dille yazılmış bir cümleyle ifade edilir. Bu ifade basit bir iş listesiyle detaylandırılabilir.
Bir durakta herhangi bir alt durak tamamlanmışsa, duruma göre diğerlerini beklemeden bir sonraki durağın ilişkili alt
durağıyla devam edilebilir. Ör. Adana
durağında omu/root
ile ilişkili alt durak tamamlanmışsa, Adıyaman
durağında
omu/root
ile ilişkili alt durağa geçilebilir.
omu/root
- Kafka
- Faktory
- RPC
omu/omu
- Kafka
- Faktory
- RPC
omu/taban
, omu/hamal
- Kimliklendirme refaktör
- LDAP consumer
omu/ultrason
- Proje açıldı
- Uygulama konuşlandı
- Rektör için (başlangıç düzeyinde) bir pano görüntülendi
omu/vezir
, omu/taban
- Mevcut personel verisi temiz şekilde aktarılmış
- Telefon doğrulama ve parola sıfırlama yapılabiliyor
- Personel profilini görüntüleyebiliyor
omu/garson
- SMS
omu/ultrason
- TODO
omu/root
- Kafka production
- Faktory production
omu/taban
, omu/vezir
- İki servis birbiriyle konuşabiliyor
omu/garson
- YÖKSİS
- DETSİS
- KPS
- ÖSYM
- MEKSİS
omu/ultrason
- Kimlik ile entegre
- SSO arkasında
- Personelle haberleşiyor
omu/root
- Kafka
- Faktory
- LDAP
omu/vezir
- Aday ("prospective") personel süreciyle yeni personel kaydı açılabiliyor
- Personel izinleri uygulama üzerinden alınabiliyor
- Personel görevlendirmeleri uygulama üzerinden yönetilebiliyor
omu/ultrason
omu/root
- Nomad
Henüz yol haritasında duraklandırılmamış hedefler bu bölümde listelenmiştir. Özet olarak tek maddede yazılan bu hedefler duraklandırıldığında birden fazla alt hedefe bölünecektir.
- omu/ais: legacy → work
- omu/yatay-gecis: legacy → work
- omu/ozelyetenek: legacy → work
- omu/mbs: legacy → work
- omu/tbs: legacy → work
- omu/kalite: product
- UNIPA aktarım modülü hazır
- Lisans üstü modülü hazır
- Öğrenci otomasyonu hazır
- EYP entegrasyonu hazır
- Ölçeklenmiş alt yapı (Nomad) kuruldu
- Yapılandırmalarda Terraform kullanılıyor
- Teyp yedeklemeleri aktif
- FaaS fizibilite çalışmaları tamamlandı
- FaaS kurulumu tamamlandı
Lütfen katkı sağlama kılavuzunu okuyun.