Azure és .NET alapú GitHub integrációs webalkalmazás továbbfejlesztése

2021-2022 tavasz

Szoftver

Téma leírása

A téma konkrét hallgató számára lett kiírva.

Téma

A tanszéken oktatási eszközként támaszkodunk a GitHub platformra. A GitHub nagyon jó bizonyos célokra, de például egy házi feladat beadásához munkafolyamati segítséggel nem rendelkezik. Munkafolyamat alatt olyan szabályokat értünk, amelyeknek a betartását elvárjuk, például, hogy a master/main ágra ne kerüljön kommit. Ugyan a GitHub az un. branch protection rule-ok segítségével képes az ágakra megkötéseket tenni, ezen szabályokat létre kell hozni.

A fentiekhez hasonló "kényelmi" ellenőrzésekhez egy GitHub integrációs alkalmazást használunk, amely Azure Function-ben fut. Az alkalmazás értesül bizonyos eseményekről, és ezekre reagál - például egy házi feladat repository létrehozásakor alkalmazza a szükséges branch protection szabályokat. A feladat ezen rendszer továbbfejlesztése.

Konkrét feladat

A jelenlegi megoldás Azure Function-ökben futó .NET alkalmazásokból áll, amelyek mikroszolgáltatás jelleggel a feladat egyes aspektusait kezelik. Egy szolgáltatás kezeli péládul a GitHub-tól érkező eseményeket, egy másik pedig a munka oktatói értékelésének eredményét rögzíti. A feladat a rendszer továbbfejlesztése és oktatói adminisztrációs felület elkészítése Blazor technológiával:

  1. Új Blazor webfelület és bejelentkezés (pl. Azure AD használatával)
  2. Létrejövő git repository-k rögzítése, beadott mgeoldások követése (listák, egyszerű statisztikák)
  3. Elakadt folyamatok (nem beadott, folyamatilag nem követett, stb) listázása
  4. Eredmények exportálása (UI csak, API létezik)
  5. Mindez autentikációval, autorizációval és házi feladatonként külön-külön

Maximális létszám: 1 fő