Funkcie buildu
Feature je pomenovaný build modul. Záznam v registri môže deklarovať balíky pre jednu alebo viac rodín distribúcií a môže tiež obsahovať build hooks, aliasy, metadata capability a guest assertions.
Pridanie feature vyjadruje zámer. Samo o sebe nepreukazuje, že bol k dispozícii každý balík, že prebehol každý hook, alebo že výsledné správanie na cieľovom obraze funguje. Validácia receptu, dokončenie buildu a overenie guest sú oddelené brány.
Nájdite aktuálnu sadu feature
Použite feature selector alebo feature-catalog API v nasadenej verzii OpenFactory. Tento výstup je záväzný pre bežiacu verziu. Statické zoznamy rýchlo zastarajú a niektoré záznamy registra sú skryté, pretože podporujú interné fixtures alebo neúplné integrácie.
Pred výberom feature skontrolujte:
- či je viditeľná a povolená pre váš účet;
- či deklaruje balíky pre rodinu distribúcie receptu;
- či sú externé zdroje pripnuté a dostupné;
- či má assertions, ktoré preukazujú správanie, ktoré potrebujete; a
- či koliduje s iným požadovaným modulom.
Reprezentatívne kategórie
Register aktuálne obsahuje moduly v kategóriách ako:
| Kategória | Príklady | Požadovaný dôkaz |
|---|---|---|
| Desktop | desktop-kde, desktop-gnome-minimal, krita, kdenlive | typ relácie, nainštalované balíky, správanie launcheru a skutočný desktop smoke test |
| Príkazový riadok a vývoj | git, curl, python, nodejs, rust | inventár balíkov/verzií a smoke testy executable |
| Infraštruktúra | nginx, postgresql, redis, docker, ansible | konfigurácia služby, stav enabled/running, porty a health na úrovni aplikácie |
| Security | firewall, audit-logging, security-hardening, apparmor | vygenerovaná policy, aktívny runtime stav, negatívne testy a zdokumentované výnimky |
| Zamerané na compliance | cis-benchmarks, gxp, disa-stig, nist-800-53 | presný zdroj benchmark/control, použiteľnosť, výsledky po control a ľudské posúdenie |
| Nástroje AI | ollama, alpaca, aider, codex-cli | pripnutá provenance source/package, hranica sťahovania modelu, test spustenia a požiadavky na zdroje |
Príklady netvoria maticu kompatibility. Názov feature môže existovať, zatiaľ čo implementácia pre konkrétnu distribúciu zostáva čiastočná.
Feature, balík a služba sú rôzne veci
os.featuresvyberá registrované build moduly.os.packagesžiada natívny package manager o konkrétne balíky.os.servicesdodáva pomenovaný zámer zapnutia a konfigurácie.
Napríklad:
{
"os": {
"features": ["ssh", "firewall"],
"packages": ["curl", "jq"],
"services": [
{
"name": "ssh",
"enabled": true,
"config": {
"port": 22,
"disable_password_auth": true
}
}
]
}
}Platná konfigurácia služby môže stále obsahovať kľúč, ktorý generátor nespracováva. Prezrite normalizovaný recept a otestujte vygenerovaného guest.
Štítky security a compliance
security-hardening inštaluje a konfiguruje všeobecnú hardening baseline. Nie je synonymom CIS profilu. hardening_level v recepte je konfiguračný štítok, ktorý interpretujú generátory pre konkrétny cieľ; nie je certifikáciou ani univerzálnym mapovaním na CIS Level 1 alebo Level 2.
Feature cis-benchmarks má špecifickejšiu remediation cestu pre Ubuntu 24.04 Level 1. Iné base image ju v rovnakej úlohe nedostávajú. Presnú hranicu popisuje CIS benchmark evidence.
Rovnako zapnutie feature pomenovaného pre GxP, HIPAA, SOC 2, PCI DSS, NIST alebo DISA nezakladá organizačnú compliance. Môže pridať balíky, konfiguráciu a testy, ktoré prispievajú dôkazom pre samostatne riadené hodnotenie.
Bezpečné kombinovanie feature
- Začnite najmenšou sadou, ktorá vyjadruje požadované správanie.
- Validujte recept a prezrite normalizovaný výstup kvôli zahodeným alebo odvodeným poliam.
- Skontrolujte rozšírený plán balíkov a hookov.
- Build spustite raz a sledujte jeho trvalé build ID.
- Spustite assertions špecifické pre feature v nabootovanom guest.
- Zlyhania a zámerné výnimky zaznamenajte explicitne.
- Ďalšiu feature pridávajte až po pochopení aktuálnej baseline.
Kanonický tvar JSON popisuje Recipe Schema.