Verschillende omgevingen hebben niet altijd hetzelfde pakketformaat of dezelfde release op hetzelfde moment nodig. Microwave Pie scheidt gedeelde applicatiebroncode, herbruikbare releases, pakketten, licenties en geïnstalleerde instanties, zodat elk onderdeel bewust kan bewegen.
🌱Gedeelde broncode
Begin met een gemeenschappelijke Git-bron en bewaar de exacte commit en gebruiksvriendelijke versie die bij een release horen. Verschillende implementatietypen kunnen onafhankelijk vooruitgaan terwijl ze gekoppeld blijven aan dezelfde bronhistorie.
📦Bronpakketten
Lever de toepassing als broncode wanneer transparantie, directe runtime-implementatie of platformspecifieke Python-installatie beter past. Bronpakketten behouden hetzelfde release- en licentiemodel als gecompileerde pakketten.
⚙️Gecompileerde pakketten
Lever een gecompileerd applicatiepakket wanneer een meer zelfstandige runtime gewenst is. Compilatie is een leveringskeuze, geen aparte productlijn, zodat de herkomst van de release consistent blijft.
🔐Pakket- en licentiebeheer
Geef een pakket uit waaraan de licentie en doelcontext van de implementatie al zijn gekoppeld. Pakketlevenscyclus, licentiestatus, downloads, installaties, updates, intrekking en afsluiting kunnen samen worden beheerd in plaats van later te worden gereconstrueerd.
🧭Doelspecifieke releasekeuzes
Raspberry Pi-, GCP-, broncode- en gecompileerde implementatietypen kunnen op verschillende releaselevels blijven wanneer daar een reden voor is. Ontbrekende Git-commits kunnen zowel per implementatietype als voor de hele toepassing worden bekeken.
🔄Updates beheerd via de interface
Beheerde toepassingen kunnen automatisch tonen wanneer een goedgekeurde update beschikbaar is zonder die af te dwingen. Een beheerder kiest wanneer de update in de applicatie-interface wordt voorbereid en toegepast; na een herstart kan de geïnstalleerde release worden bevestigd aan de gedeelde leveringsservice terwijl de relatie tussen pakket en licentie behouden blijft.