enterprise_ai.packs.build
Source : sdks/python/src/enterprise_ai/packs/build.py. Retour à l'index de la référence du SDK Python.
Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.
Modèle BuildResult
Résultat de build_pack : archive, condensat, SBOM, rapport de validation et condensats des fichiers.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
archive | Path | oui | Le pack .tar.gz, encodé en base64 (12 Mio de texte au plus). |
digest | str | oui | SHA-256 de la preuve (commandes, enregistrement), 100 caractères au plus. |
sbom | dict[str, Any] | oui | Nomenclature logicielle (SBOM) du pack. |
sbom_path | Path | oui | Chemin du fichier <name>-<version>.spdx.json écrit. |
report | PackReport | oui | Rapport de validation du pack (PackReport). |
files | dict[str, str] | oui | Fichiers à importer (1 à 200). |
BuildResult.to_dict
to_dict() -> dict[str, Any]
Le résultat sous forme de résumé prêt pour JSON.
Cet élément ne prend aucun paramètre.
Retour : dict[str, Any]. Dict {archive, digest, sbom, files, name, version} : chemins en texte, files est le nombre de fichiers.
Fonctions
sha256_bytes
sha256_bytes(data: bytes) -> str
Condensat SHA-256 d'octets, préfixé par sha256:.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
data | bytes | oui | Octets à hacher. |
Retour : str. Texte sha256:<64 caractères hexadécimaux>.
source_date_epoch
source_date_epoch() -> int
Date fixe des entrées de l'archive et du SBOM, lue dans la variable d'environnement SOURCE_DATE_EPOCH.
Cet élément ne prend aucun paramètre.
Retour : int. Heure Unix en secondes ; 0 si la variable n'est pas définie.
archive_bytes
archive_bytes(root: Path) -> tuple[bytes, dict[str, str]]
Construit en mémoire l'archive tar gzip reproductible du pack : entrées triées, mode 0644 ou 0755, propriétaire 0, date SOURCE_DATE_EPOCH.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
root | Path | oui | Dossier du pack ; les fichiers sont choisis par pack_files. |
Retour : tuple[bytes, dict[str, str]]. Tuple (octets de l'archive, {chemin relatif: sha256:<hex>}).
spdx_sbom
spdx_sbom(report: PackReport, digest: str, files: dict[str, str]) -> dict[str, Any]
Document JSON SPDX 2.3 : le paquet du pack, chaque fichier avec son SHA-256 et les dépendances d'exécution épinglées.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
report | PackReport | oui | Rapport de validation du pack : nom, version, licence et propriétaire viennent de son manifeste ; les lignes épinglées de requirements.txt deviennent des dépendances. | |
digest | str | oui | Condensat sha256:<hex> de l'archive, utilisé dans l'espace de noms et la somme de contrôle du paquet. | |
files | dict[str, str] | oui | Chemin relatif vers sha256:<hex> de chaque fichier de l'archive. |
Retour : dict[str, Any]. Document SPDX 2.3 sous forme de dict.
build_pack
build_pack(path: str | Path, out_dir: str | Path | None = None) -> BuildResult
Valide, puis écrit <name>-<version>.tar.gz et <name>-<version>.spdx.json dans out_dir.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
path | str | Path | oui | Dossier du pack à construire ; un pack invalide lève ValueError avec la liste des erreurs. | |
out_dir | str | Path | None | None | non | Dossier de sortie, créé s'il manque ; par défaut dist dans le pack. |
Retour : BuildResult. Un BuildResult avec le chemin de l'archive, son condensat sha256: et le SBOM.
Erreurs levées : ValueError.