UNPKG

@riddance/deploy

Version:

19 lines 5.48 kB
import { reflect } from '@riddance/host/reflect'; import { Resolver } from './lib/aws/resolve.js'; import { getCurrentState, sync } from './lib/aws/sync.js'; import { getGlue } from './lib/glue.js'; import { stage } from './lib/stage.js'; export async function deploy(context, envName, path, glueFile, stagePath) { const resolver = new Resolver(context); const [{ service, implementations, publishTopics, corsSites, env, ...provider }, reflection] = await Promise.all([getGlue(path, envName, resolver, glueFile), reflect(path)]); const [currentState, code] = await Promise.all([ getCurrentState(context, envName, service), stage(context.log, stagePath, path, reflection.revision, implementations, service, Object.fromEntries([ ...reflection.http.map(fn => [fn.name, 'http']), ...reflection.timers.map(fn => [fn.name, 'timer']), ...reflection.events.map(fn => [fn.name, 'event']), ])), ]); return await sync(context, envName, service, currentState, reflection, publishTopics, corsSites, await env, Object.fromEntries(code.map(c => [c.fn, c.code])), provider); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSxNQUFNLENBQ3hCLE9BT0MsRUFDRCxPQUFlLEVBQ2YsSUFBWSxFQUNaLFFBQWlCLEVBQ2pCLFNBQWtCO0lBRWxCLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ3RDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxRQUFRLEVBQUUsRUFBRSxVQUFVLENBQUMsR0FDeEYsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDbEYsTUFBTSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDM0MsZUFBZSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQzFDLEtBQUssQ0FDRCxPQUFPLENBQUMsR0FBRyxFQUNYLFNBQVMsRUFDVCxJQUFJLEVBQ0osVUFBVSxDQUFDLFFBQVEsRUFDbkIsZUFBZSxFQUNmLE9BQU8sRUFDUCxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQ2YsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxNQUFNLENBQVUsQ0FBQztZQUN4RCxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBVSxDQUFDO1lBQzNELEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFVLENBQUM7U0FDOUQsQ0FBQyxDQUNMO0tBQ0osQ0FBQyxDQUFBO0lBRUYsT0FBTyxNQUFNLElBQUksQ0FDYixPQUFPLEVBQ1AsT0FBTyxFQUNQLE9BQU8sRUFDUCxZQUFZLEVBQ1osVUFBVSxFQUNWLGFBQWEsRUFDYixTQUFTLEVBQ1QsTUFBTSxHQUFHLEVBQ1QsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ2pELFFBQVEsQ0FDWCxDQUFBO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlZmxlY3QgfSBmcm9tICdAcmlkZGFuY2UvaG9zdC9yZWZsZWN0J1xuaW1wb3J0IHsgUmVzb2x2ZXIgfSBmcm9tICcuL2xpYi9hd3MvcmVzb2x2ZS5qcydcbmltcG9ydCB7IGdldEN1cnJlbnRTdGF0ZSwgc3luYyB9IGZyb20gJy4vbGliL2F3cy9zeW5jLmpzJ1xuaW1wb3J0IHsgZ2V0R2x1ZSB9IGZyb20gJy4vbGliL2dsdWUuanMnXG5pbXBvcnQgeyBzdGFnZSB9IGZyb20gJy4vbGliL3N0YWdlLmpzJ1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVwbG95KFxuICAgIGNvbnRleHQ6IHtcbiAgICAgICAgbG9nOiB7XG4gICAgICAgICAgICB0cmFjZTogKG1lc3NhZ2U6IHN0cmluZykgPT4gdm9pZFxuICAgICAgICAgICAgd2FybjogKG1lc3NhZ2U6IHN0cmluZykgPT4gdm9pZFxuICAgICAgICAgICAgZXJyb3I6IChtZXNzYWdlOiBzdHJpbmcpID0+IHZvaWRcbiAgICAgICAgfVxuICAgICAgICBlbnY6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgdW5kZWZpbmVkIH1cbiAgICB9LFxuICAgIGVudk5hbWU6IHN0cmluZyxcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgZ2x1ZUZpbGU/OiBzdHJpbmcsXG4gICAgc3RhZ2VQYXRoPzogc3RyaW5nLFxuKSB7XG4gICAgY29uc3QgcmVzb2x2ZXIgPSBuZXcgUmVzb2x2ZXIoY29udGV4dClcbiAgICBjb25zdCBbeyBzZXJ2aWNlLCBpbXBsZW1lbnRhdGlvbnMsIHB1Ymxpc2hUb3BpY3MsIGNvcnNTaXRlcywgZW52LCAuLi5wcm92aWRlciB9LCByZWZsZWN0aW9uXSA9XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFtnZXRHbHVlKHBhdGgsIGVudk5hbWUsIHJlc29sdmVyLCBnbHVlRmlsZSksIHJlZmxlY3QocGF0aCldKVxuICAgIGNvbnN0IFtjdXJyZW50U3RhdGUsIGNvZGVdID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICBnZXRDdXJyZW50U3RhdGUoY29udGV4dCwgZW52TmFtZSwgc2VydmljZSksXG4gICAgICAgIHN0YWdlKFxuICAgICAgICAgICAgY29udGV4dC5sb2csXG4gICAgICAgICAgICBzdGFnZVBhdGgsXG4gICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgcmVmbGVjdGlvbi5yZXZpc2lvbixcbiAgICAgICAgICAgIGltcGxlbWVudGF0aW9ucyxcbiAgICAgICAgICAgIHNlcnZpY2UsXG4gICAgICAgICAgICBPYmplY3QuZnJvbUVudHJpZXMoW1xuICAgICAgICAgICAgICAgIC4uLnJlZmxlY3Rpb24uaHR0cC5tYXAoZm4gPT4gW2ZuLm5hbWUsICdodHRwJ10gYXMgY29uc3QpLFxuICAgICAgICAgICAgICAgIC4uLnJlZmxlY3Rpb24udGltZXJzLm1hcChmbiA9PiBbZm4ubmFtZSwgJ3RpbWVyJ10gYXMgY29uc3QpLFxuICAgICAgICAgICAgICAgIC4uLnJlZmxlY3Rpb24uZXZlbnRzLm1hcChmbiA9PiBbZm4ubmFtZSwgJ2V2ZW50J10gYXMgY29uc3QpLFxuICAgICAgICAgICAgXSksXG4gICAgICAgICksXG4gICAgXSlcblxuICAgIHJldHVybiBhd2FpdCBzeW5jKFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBlbnZOYW1lLFxuICAgICAgICBzZXJ2aWNlLFxuICAgICAgICBjdXJyZW50U3RhdGUsXG4gICAgICAgIHJlZmxlY3Rpb24sXG4gICAgICAgIHB1Ymxpc2hUb3BpY3MsXG4gICAgICAgIGNvcnNTaXRlcyxcbiAgICAgICAgYXdhaXQgZW52LFxuICAgICAgICBPYmplY3QuZnJvbUVudHJpZXMoY29kZS5tYXAoYyA9PiBbYy5mbiwgYy5jb2RlXSkpLFxuICAgICAgICBwcm92aWRlcixcbiAgICApXG59XG4iXX0=