Aller au contenu
English

createVercelSandboxProvider

import { createVercelSandboxProvider } from "@elie-laloum/outpost/providers/vercel";

Crée un provider distant sur Vercel Sandbox ; le SDK optionnel @vercel/sandbox se charge à l’acquisition. Chaque acquire crée une sandbox, Outpost y envoie le dépôt puis resynchronise les changements, et release arrête la sandbox.

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

  • optionsOptionnel
    VercelOptions | undefined
    Réglages de création Vercel, racine du workspace, réseau sortant, environnement et conservation des sorties.
  • options.egressOptionnel
    EgressPolicy | undefined
    Politique portable traduite pour le pare-feu Vercel à la création du provider : les domaines sont filtrés par nom de serveur TLS, allowCidrs donne un accès IP à lui seul et denyCidrs est prioritaire. Définir aussi create.networkPolicy échoue avec le code configuration.
  • options.createOptionnel
    NonNullable<(WithPrivate<((BaseCreateSandboxParams & ({ runtime?: RUNTIMES | (string & {}); image?: never; } | { runtime?: never; image?: (string & {}) | "vercel/sandbox/universal" | "vercel/sandbox/node:22" | "vercel/sandbox/node:24" | "vercel/sandbox/node:26" | "vercel/sandbox/python:3.14" | "vercel/sandbox/ubuntu" | "vercel/sandbox/arch"; })) | (Omit<BaseCreateSandboxParams, "source"> & { source: { type: "snapshot"; snapshotId: string; }; runtime?: never; image?: never; })) | (((BaseCreateSandboxParams & ({ runtime?: RUNTIMES | (string & {}); image?: never; } | { runtime?: never; image?: (string & {}) | "vercel/sandbox/universal" | "vercel/sandbox/node:22" | "vercel/sandbox/node:24" | "vercel/sandbox/node:26" | "vercel/sandbox/python:3.14" | "vercel/sandbox/ubuntu" | "vercel/sandbox/arch"; })) | (Omit<BaseCreateSandboxParams, "source"> & { source: { type: "snapshot"; snapshotId: string; }; runtime?: never; image?: never; })) & Credentials)> & WithFetchOptions) | undefined> | undefined
    Options passées à Sandbox.create() de @vercel/sandbox ; Outpost ajoute l’environnement de la sandbox à env.
  • options.variablesOptionnel
    Readonly<Record<string, string>> | undefined
    Variables d’environnement définies pour chaque commande de la sandbox, en valeurs littérales. Une clé aussi déclarée par l’agent échoue avec le code configuration.
  • options.rootOptionnel
    string | undefined
    Répertoire du dépôt dans la sandbox, /vercel/sandbox/outpost par défaut.
  • options.retainOptionnel
    number | undefined
    Octets de fin de sortie conservés par flux, 65536 par défaut.
  • connectOptionnel
    ((config: VercelOptions["create"]) => Promise<Sandbox>) | undefined
    Remplace le Sandbox.create() par défaut de @vercel/sandbox ; reçoit les options de création avec la politique réseau et env appliqués.

SandboxProvider

import type { Sandbox } from "@vercel/sandbox";

export declare function createVercelSandboxProvider(
  options?: VercelOptions,
  connect?: (config: VercelOptions["create"]) => Promise<Sandbox>,
): SandboxProvider;