enterprise_ai.packs.publish
Source : sdks/python/src/enterprise_ai/packs/publish.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.
Fonctions
skill_digests
skill_digests(root: Path) -> dict[str, str]
Nom de chaque skill (en-tête) vers le sha256 de son SKILL.md, le condensat que le Skill Registry vérifie.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
root | Path | oui | Dossier du pack ; chaque skills/*/SKILL.md est lu. |
Retour : dict[str, str]. Dict du nom de skill vers le sha256:<hex> de son SKILL.md.
sign_build
sign_build(build: BuildResult, key: str | Path, signer: str, password: str | None = None) -> dict[str, Any]
Signe le condensat de l'archive et celui de chaque SKILL.md ; écrit <name>-<version>.pack.json à côté de l'archive.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
build | BuildResult | oui | Résultat de build_pack. | |
key | str | Path | oui | Chemin de la clé privée cosign. | |
signer | str | oui | Identité du signataire enregistrée avec la signature. | |
password | str | None | None | non | Mot de passe de la clé ; par défaut la variable d'environnement COSIGN_PASSWORD. |
Retour : dict[str, Any]. Le descripteur : name, version, digest, archive, signature {value, signer}, skill_signatures, sbom, sbom_digest.
descriptor_path
descriptor_path(archive: Path) -> Path
Chemin du descripteur signé d'une archive : <name>-<version>.pack.json à côté d'elle.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
archive | Path | oui | Chemin de l'archive .tar.gz. |
Retour : Path. Chemin se terminant par .pack.json.
canonical_digest
canonical_digest(document: dict) -> str
sha256 du JSON canonique (clés triées, sans espaces) : le condensat que le Control Plane recalcule.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
document | dict | oui | Document JSON à hacher. |
Retour : str. Texte sha256:<hex>.
provenance_statement
provenance_statement(archive: Path, descriptor: dict, sbom: dict, reports: dict[str, dict]) -> dict[str, Any]
Statement in-toto v1 avec un prédicat de provenance SLSA v1 : sujet = le condensat de l'archive du pack, sous-produits = le SBOM et chaque rapport lié au même condensat.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
archive | Path | oui | Chemin de l'archive du pack, sujet de la déclaration. | |
descriptor | dict | oui | Descripteur signé de sign_build (name, version, digest). | |
sbom | dict | oui | SBOM SPDX de la construction, ajouté comme sous-produit sbom. | |
reports | dict[str, dict] | oui | Rapports par nom (tests, évaluations, analyse), chacun ajouté comme sous-produit avec son condensat canonique. |
Retour : dict[str, Any]. La déclaration in-toto sous forme de dict.
sign_provenance
sign_provenance(statement: dict, key: str | Path, signer: str, password: str | None = None) -> dict[str, Any]
Signe avec cosign le condensat canonique d'une déclaration de provenance.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
statement | dict | oui | Déclaration produite par provenance_statement. | |
key | str | Path | oui | Chemin de la clé privée cosign. | |
signer | str | oui | Identité du signataire enregistrée avec la signature. | |
password | str | None | None | non | Mot de passe de la clé ; par défaut la variable d'environnement COSIGN_PASSWORD. |
Retour : dict[str, Any]. Dict {statement, signature: {value, signer}}.
publication_body
publication_body(archive: Path, descriptor: dict, sbom: dict, scan: dict, tests: dict, evaluations: dict, oci: dict | None = None, provenance: dict | None = None) -> dict[str, Any]
Construit le corps de POST /v1/marketplace/packages : l'archive en base64, ses signatures, le SBOM et les rapports.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
archive | Path | oui | Chemin de l'archive du pack, intégrée en base64. | |
descriptor | dict | oui | Descripteur signé de sign_build, source de signature et skill_signatures. | |
sbom | dict | oui | SBOM SPDX de la construction. | |
scan | dict | oui | Rapport de scan, envoyé comme vulnerability_scan. | |
tests | dict | oui | Rapport de run_tests, envoyé comme test_report. | |
evaluations | dict | oui | Rapport de run_evaluations, envoyé comme evaluation_report. | |
oci | dict | None | None | non | Copie OCI {ref, digest} de push, facultative. |
provenance | dict | None | None | non | Provenance signée de sign_provenance, facultative. |
Retour : dict[str, Any]. Corps JSON, avec provenance et oci seulement s'ils sont fournis.