Skip to content

📑 Projektit: lähtötilanne

⚙️ Repostage Automation: Ecosystem Discovery Engine

Repostagen kehitys alkaa tästä: Tämä Python-pohjainen automaatio on Repostagen "moottori". Se suorittaa projektien etsinnän (Discovery), metadatan keräämisen ja automaattisen dokumentaation generoinnin. Se muuttaa staattiset repositorio-listat dynaamiseksi ja eläväksi tietoportaaliksi.

🚀 Skriptin ydinliiketoimintalogiikka

Skripti toteuttaa Repostagen kolme pääperiaatetta, jotka varmistavat portaalin skaalautuvuuden:

  1. Aggregointi: Yhdistää hajautetut GitLab- ja GitHub-projektit yhteen navigoitavaan näkymään, poistaen tekniset siilot.
  2. Kategorisointi: Käyttää älykästä Regex-pohjaista tunnistusta (CATEGORY_REGEX) ryhmittelemään projektit loogisiin kokonaisuuksiin (esim. infra, ml, devops).
  3. Dokumentaation rikastaminen: Ei tyydy vain tekniseen API-dataan, vaan hakee projektin todellisen tarkoituksen lukemalla paikallisen README.md-tiedoston sisällön kuvaukseksi.

📊 Automaattisesti generoitu "Project Ecosystem" -näkymä

Automaatio tuottaa _autogenerated.md -tiedoston, joka toimii koko organisaation ohjelmistoportfolion digitaalisena näyteikkunana.

Rakenteen analyysi:

  • Source Branding: Käyttäjä näkee välittömästi, sijaitseeko koodi GitLabissa vai GitHubissa.
  • Tech Stack: get_languages-funktiot tunnistavat käytetyt ohjelmointikielet ja tägit, helpottaen asiantuntijoiden löytämistä.
  • Hierarkia: Rakentaa selkeän hierarkian kategorioittain (esim. DATA, APPS, INFRA), mikä parantaa kokonaiskuvan hahmottamista.

🛠️ Tekninen työnjako skriptissä

Tämä työnjako varmistaa, että automaatio tukee organisaation hallintamallia (Governance):

Funktio Tehtävä Governance-arvo
extract_category Tunnistaa projektin tyypin nimestä. Palkitsee nimeämisstandardien noudattamisesta.
get_local_description Lukee repon todellisen README-tiedoston. Kannustaa tiimejä laadukkaaseen sisällöntuotantoon koodin vieressä.
nav_entries.append Rakentaa .pages-navigaation dynaamisesti. Poistaa manuaalisen työn; uusi tieto on heti kaikkien saatavilla.
shutil.copy2 Kopioi README-tiedostot koottuun portaaliin. Varmistaa, että Source of Truth säilyy repossa, mutta näkyvyys on keskitetty.

đź’ˇ Tulevaisuuden laajennusmahdollisuudet (Security & Quality)

Skripti on suunniteltu laajennettavaksi. Se voi toimia aktiivisena laatuporttina integroimalla seuraavat ominaisuudet:

Security Status Badges

Lisäämällä dynaamista URL-logiikkaa, skripti voi visualisoida kunkin projektin tietoturvastatuksen suoraan ekosysteemi-taulukkoon:

# Esimerkki: Lisätään dynaaminen badge taulukkoon
repo_link = f"[{proj['repo_name']}]({proj['url']})"
security_badge = f"![Security](https://img.shields.io/badge/security-scanned-brightgreen)"
f.write(f"| {proj['source']} | {repo_link} | {security_badge} | {proj['langs']} | {proj['desc']} |\n")

Automaattinen laatuindikaattori

Skripti voi analysoida dokumentaation tuoreutta ja koodin testikattavuutta, nostaen parhaiten hoidetut projektit esikuviksi muille.


Tämä automaatiomoottori on ensimmäinen askel kohti tiedolla johtamista ohjelmistokehityksessä. Se tekee näkyväksi sen, mitä organisaatio todellisuudessa rakentaa.