UNPKG

@metacall/faas

Version:

Reimplementation of MetaCall FaaS platform written in TypeScript.

33 lines (32 loc) 1.31 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.deploy = void 0; const os_1 = require("os"); const appError_1 = __importDefault(require("../utils/appError")); const app_1 = require("../app"); const deploy_1 = require("../utils/deploy"); const install_1 = require("../utils/install"); const catch_1 = require("./catch"); exports.deploy = catch_1.catchAsync(async (req, res, next) => { try { const application = app_1.Applications[req.body.suffix]; // Check if the application exists and it is stored if (!(application === null || application === void 0 ? void 0 : application.resource)) { throw new appError_1.default(`Invalid deployment id: ${req.body.suffix}`, 400); } const resource = await application.resource; await install_1.installDependencies(resource); await deploy_1.deployProcess(resource); return res.status(200).json({ prefix: os_1.hostname(), suffix: resource === null || resource === void 0 ? void 0 : resource.id, version: 'v1' }); } catch (err) { return next(err); } });