Popis izvajalnega okolja

kazalo

Bralnik popisa izvajalnega okolja je aditivna, bralna plast: bere dejstva o

gostitelju, ne da bi karkoli spremenil. Je vhod za razporejevalnik (ali lahko

ta gostitelj izvede opravilo?) in za matični register (kaj ta gostitelj je?).

crates/colibri-runtime-inventory/src/lib.rs

Odločitve

Aditivno, ne konfiguracijsko

Bralnik odkrije dejstva, ne uveljavlja stanja. Če manjka pi ali zot, to

zabeleži — ne namesti. Če je prisotnih več različic Node.js, jih navede vse.

Če je ZFS odklopljen, to zabeleži — ne uvozi bazena. Operater se odloči, kaj

storiti s popisom.

Bralni vmesnik, specifičen za platformo

HostInfo je skupen struct. Vsaka platforma implementira HostReader trait.

FreeBSD-jev bralnik uporablja pkg, sysctl, zfs, kldstat in pciconf.

Linuxov bralnik uporablja uname, /proc, lsblk in lspci. Skupna

struktura pomeni, da razporejevalnik in mati vidita isto obliko ne glede na

OS.

crates/colibri-runtime-inventory/src/platform.rs

Rezultat je JSON, konzumirajo ga trije porabniki

Popis se serializira v clawdie.runtime-version-inventory.v1. Trije porabniki:

Brez pisanja — integracije so samo za branje

Bralnik ne piše v podatkovno zbirko, ne spreminja konfiguracije in ne

spreminja stanja demona. Je čista funkcija HostReader::read() → HostInfo.

To pomeni, da je varno zagnati ga v cronu, ob zagonu ali ročno brez stranskih

učinkov.

contracts (shema) | mother-hive