UNPKG

faastjs

Version:

Serverless batch computing made simple.

72 lines 8.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const ava_1 = tslib_1.__importDefault(require("ava")); const index_1 = require("../index"); const funcs = tslib_1.__importStar(require("./fixtures/functionsPackage")); const util_1 = require("./fixtures/util"); const uuid_1 = require("uuid"); async function testPackage(t, provider, options) { const opts = { ...options, gc: "off", packageJson: { name: "package-test", version: "0.0.2", description: "package dependency test", repository: "foo", license: "ISC", dependencies: { "fs-extra": "^7.0.1", tslib: "^1.9.1" } }, useDependencyCaching: false, description: t.title }; const faastModule = await (0, index_1.faast)(provider, funcs, opts); const remote = faastModule.functions; try { t.is(await remote.isDir("."), true); } finally { await faastModule.cleanup(); } } for (const provider of index_1.providers) { for (const config of util_1.configs) { (0, ava_1.default)((0, util_1.title)(provider, "package dependencies", config), testPackage, provider, config); } } (0, ava_1.default)("remote aws package dependencies with lambda layer caching", async (t) => { const packageJson = { // Need unique name to avoid problems with communication between // concurrent tests, esp on aws node8 + node10 copies of the testsuite. name: (0, uuid_1.v4)(), version: "0.0.2", description: "aws layer test", license: "ISC", dependencies: { tslib: "^1.9.1" } }; const faastModule = await (0, index_1.faastAws)(funcs, { gc: "off", packageJson, description: t.title }); try { const faastModule2 = await (0, index_1.faastAws)(funcs, { gc: "off", packageJson, description: t.title }); t.not(faastModule.state.resources.layer, undefined); t.deepEqual(faastModule.state.resources.layer, faastModule2.state.resources.layer); await faastModule2.cleanup(); } finally { await faastModule.cleanup({ deleteCaches: true }); } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFja2FnZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9wYWNrYWdlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQTZDO0FBQzdDLG9DQUErRTtBQUMvRSwyRUFBcUQ7QUFDckQsMENBQWlEO0FBQ2pELCtCQUFrQztBQUVsQyxLQUFLLFVBQVUsV0FBVyxDQUN0QixDQUFtQixFQUNuQixRQUFrQixFQUNsQixPQUFzQjtJQUV0QixNQUFNLElBQUksR0FBa0I7UUFDeEIsR0FBRyxPQUFPO1FBQ1YsRUFBRSxFQUFFLEtBQUs7UUFDVCxXQUFXLEVBQUU7WUFDVCxJQUFJLEVBQUUsY0FBYztZQUNwQixPQUFPLEVBQUUsT0FBTztZQUNoQixXQUFXLEVBQUUseUJBQXlCO1lBQ3RDLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsWUFBWSxFQUFFO2dCQUNWLFVBQVUsRUFBRSxRQUFRO2dCQUNwQixLQUFLLEVBQUUsUUFBUTthQUNsQjtTQUNKO1FBQ0Qsb0JBQW9CLEVBQUUsS0FBSztRQUMzQixXQUFXLEVBQUUsQ0FBQyxDQUFDLEtBQUs7S0FDdkIsQ0FBQztJQUNGLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBQSxhQUFLLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN2RCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDO0lBQ3JDLElBQUksQ0FBQztRQUNELENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7WUFBUyxDQUFDO1FBQ1AsTUFBTSxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDaEMsQ0FBQztBQUNMLENBQUM7QUFFRCxLQUFLLE1BQU0sUUFBUSxJQUFJLGlCQUFTLEVBQUUsQ0FBQztJQUMvQixLQUFLLE1BQU0sTUFBTSxJQUFJLGNBQU8sRUFBRSxDQUFDO1FBQzNCLElBQUEsYUFBSSxFQUNBLElBQUEsWUFBSyxFQUFDLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLENBQUMsRUFDL0MsV0FBVyxFQUNYLFFBQVEsRUFDUixNQUFNLENBQ1QsQ0FBQztJQUNOLENBQUM7QUFDTCxDQUFDO0FBRUQsSUFBQSxhQUFJLEVBQUMsMkRBQTJELEVBQUUsS0FBSyxFQUFDLENBQUMsRUFBQyxFQUFFO0lBQ3hFLE1BQU0sV0FBVyxHQUFHO1FBQ2hCLGdFQUFnRTtRQUNoRSx1RUFBdUU7UUFDdkUsSUFBSSxFQUFFLElBQUEsU0FBSSxHQUFFO1FBQ1osT0FBTyxFQUFFLE9BQU87UUFDaEIsV0FBVyxFQUFFLGdCQUFnQjtRQUM3QixPQUFPLEVBQUUsS0FBSztRQUNkLFlBQVksRUFBRTtZQUNWLEtBQUssRUFBRSxRQUFRO1NBQ2xCO0tBQ0osQ0FBQztJQUNGLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBQSxnQkFBUSxFQUFDLEtBQUssRUFBRTtRQUN0QyxFQUFFLEVBQUUsS0FBSztRQUNULFdBQVc7UUFDWCxXQUFXLEVBQUUsQ0FBQyxDQUFDLEtBQUs7S0FDdkIsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxDQUFDO1FBQ0QsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFBLGdCQUFRLEVBQUMsS0FBSyxFQUFFO1lBQ3ZDLEVBQUUsRUFBRSxLQUFLO1lBQ1QsV0FBVztZQUNYLFdBQVcsRUFBRSxDQUFDLENBQUMsS0FBSztTQUN2QixDQUFDLENBQUM7UUFDSCxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQUMsU0FBUyxDQUNQLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssRUFDakMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUNyQyxDQUFDO1FBQ0YsTUFBTSxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakMsQ0FBQztZQUFTLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdGVzdCwgeyBFeGVjdXRpb25Db250ZXh0IH0gZnJvbSBcImF2YVwiO1xuaW1wb3J0IHsgQ29tbW9uT3B0aW9ucywgZmFhc3QsIFByb3ZpZGVyLCBwcm92aWRlcnMsIGZhYXN0QXdzIH0gZnJvbSBcIi4uL2luZGV4XCI7XG5pbXBvcnQgKiBhcyBmdW5jcyBmcm9tIFwiLi9maXh0dXJlcy9mdW5jdGlvbnNQYWNrYWdlXCI7XG5pbXBvcnQgeyBjb25maWdzLCB0aXRsZSB9IGZyb20gXCIuL2ZpeHR1cmVzL3V0aWxcIjtcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tIFwidXVpZFwiO1xuXG5hc3luYyBmdW5jdGlvbiB0ZXN0UGFja2FnZShcbiAgICB0OiBFeGVjdXRpb25Db250ZXh0LFxuICAgIHByb3ZpZGVyOiBQcm92aWRlcixcbiAgICBvcHRpb25zOiBDb21tb25PcHRpb25zXG4pIHtcbiAgICBjb25zdCBvcHRzOiBDb21tb25PcHRpb25zID0ge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBnYzogXCJvZmZcIixcbiAgICAgICAgcGFja2FnZUpzb246IHtcbiAgICAgICAgICAgIG5hbWU6IFwicGFja2FnZS10ZXN0XCIsXG4gICAgICAgICAgICB2ZXJzaW9uOiBcIjAuMC4yXCIsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJwYWNrYWdlIGRlcGVuZGVuY3kgdGVzdFwiLFxuICAgICAgICAgICAgcmVwb3NpdG9yeTogXCJmb29cIixcbiAgICAgICAgICAgIGxpY2Vuc2U6IFwiSVNDXCIsXG4gICAgICAgICAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgICAgICAgICAgICBcImZzLWV4dHJhXCI6IFwiXjcuMC4xXCIsXG4gICAgICAgICAgICAgICAgdHNsaWI6IFwiXjEuOS4xXCJcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgdXNlRGVwZW5kZW5jeUNhY2hpbmc6IGZhbHNlLFxuICAgICAgICBkZXNjcmlwdGlvbjogdC50aXRsZVxuICAgIH07XG4gICAgY29uc3QgZmFhc3RNb2R1bGUgPSBhd2FpdCBmYWFzdChwcm92aWRlciwgZnVuY3MsIG9wdHMpO1xuICAgIGNvbnN0IHJlbW90ZSA9IGZhYXN0TW9kdWxlLmZ1bmN0aW9ucztcbiAgICB0cnkge1xuICAgICAgICB0LmlzKGF3YWl0IHJlbW90ZS5pc0RpcihcIi5cIiksIHRydWUpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAgIGF3YWl0IGZhYXN0TW9kdWxlLmNsZWFudXAoKTtcbiAgICB9XG59XG5cbmZvciAoY29uc3QgcHJvdmlkZXIgb2YgcHJvdmlkZXJzKSB7XG4gICAgZm9yIChjb25zdCBjb25maWcgb2YgY29uZmlncykge1xuICAgICAgICB0ZXN0KFxuICAgICAgICAgICAgdGl0bGUocHJvdmlkZXIsIFwicGFja2FnZSBkZXBlbmRlbmNpZXNcIiwgY29uZmlnKSxcbiAgICAgICAgICAgIHRlc3RQYWNrYWdlLFxuICAgICAgICAgICAgcHJvdmlkZXIsXG4gICAgICAgICAgICBjb25maWdcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbnRlc3QoXCJyZW1vdGUgYXdzIHBhY2thZ2UgZGVwZW5kZW5jaWVzIHdpdGggbGFtYmRhIGxheWVyIGNhY2hpbmdcIiwgYXN5bmMgdCA9PiB7XG4gICAgY29uc3QgcGFja2FnZUpzb24gPSB7XG4gICAgICAgIC8vIE5lZWQgdW5pcXVlIG5hbWUgdG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBjb21tdW5pY2F0aW9uIGJldHdlZW5cbiAgICAgICAgLy8gY29uY3VycmVudCB0ZXN0cywgZXNwIG9uIGF3cyBub2RlOCArIG5vZGUxMCBjb3BpZXMgb2YgdGhlIHRlc3RzdWl0ZS5cbiAgICAgICAgbmFtZTogdXVpZCgpLFxuICAgICAgICB2ZXJzaW9uOiBcIjAuMC4yXCIsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBcImF3cyBsYXllciB0ZXN0XCIsXG4gICAgICAgIGxpY2Vuc2U6IFwiSVNDXCIsXG4gICAgICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgICAgICAgdHNsaWI6IFwiXjEuOS4xXCJcbiAgICAgICAgfVxuICAgIH07XG4gICAgY29uc3QgZmFhc3RNb2R1bGUgPSBhd2FpdCBmYWFzdEF3cyhmdW5jcywge1xuICAgICAgICBnYzogXCJvZmZcIixcbiAgICAgICAgcGFja2FnZUpzb24sXG4gICAgICAgIGRlc2NyaXB0aW9uOiB0LnRpdGxlXG4gICAgfSk7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZmFhc3RNb2R1bGUyID0gYXdhaXQgZmFhc3RBd3MoZnVuY3MsIHtcbiAgICAgICAgICAgIGdjOiBcIm9mZlwiLFxuICAgICAgICAgICAgcGFja2FnZUpzb24sXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogdC50aXRsZVxuICAgICAgICB9KTtcbiAgICAgICAgdC5ub3QoZmFhc3RNb2R1bGUuc3RhdGUucmVzb3VyY2VzLmxheWVyLCB1bmRlZmluZWQpO1xuICAgICAgICB0LmRlZXBFcXVhbChcbiAgICAgICAgICAgIGZhYXN0TW9kdWxlLnN0YXRlLnJlc291cmNlcy5sYXllcixcbiAgICAgICAgICAgIGZhYXN0TW9kdWxlMi5zdGF0ZS5yZXNvdXJjZXMubGF5ZXJcbiAgICAgICAgKTtcbiAgICAgICAgYXdhaXQgZmFhc3RNb2R1bGUyLmNsZWFudXAoKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgICBhd2FpdCBmYWFzdE1vZHVsZS5jbGVhbnVwKHsgZGVsZXRlQ2FjaGVzOiB0cnVlIH0pO1xuICAgIH1cbn0pO1xuIl19