Aller au contenu
English

readArtifact

import { readArtifact } from "@elie-laloum/outpost";

Lit l’artefact publié par une dépendance déclarée : prend sa référence dans context.value(), rejette avec Artifact dependency producer mismatch si une autre exécution ou une autre tâche l’a produite, puis la vérifie et la décode comme readStoredArtifact() sous le signal de la tâche.

Exemple complet et règles détaillées.

  • contextRequis
    TaskContext
    Contexte de la tâche en cours ; fournit la sortie de la dépendance, l’id d’exécution et le signal d’annulation.
  • dependencyRequis
    Task<ArtifactReference>
    Tâche d’artefact listée dans le after de cette tâche ; sa sortie est la référence à lire. Une dépendance non déclarée lève une erreur.
  • contractRequis
    ArtifactContract<T>
    Contrat attendu ; doit correspondre au nom, à la version et à l’encodage de la référence.
  • storeRequis
    ArtifactStore
    Store qui contient les octets de l’artefact.

Promise<T>

export declare function readArtifact<T>(
  context: TaskContext,
  dependency: Task<ArtifactReference>,
  contract: ArtifactContract<T>,
  store: ArtifactStore,
): Promise<T>;