@jahed/terraform
Version:
A wrapper which downloads and runs Terraform locally via npm.
19 lines (18 loc) • 843 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.install = install;
const debug_1 = require("./debug");
const downloadTerraformToFile_1 = require("./downloadTerraformToFile");
const fileExists_1 = require("./fileExists");
const makeExecutable_1 = require("./makeExecutable");
const setupOutputDirectory_1 = require("./setupOutputDirectory");
async function install(outputs) {
if (await (0, fileExists_1.fileExists)(outputs.path)) {
return outputs.path;
}
const outdir = await (0, setupOutputDirectory_1.setupOutputDirectory)(outputs);
const filePath = await (0, downloadTerraformToFile_1.downloadTerraformToFile)({ outputs, outdir });
await (0, makeExecutable_1.makeExecutable)(filePath);
(0, debug_1.debug)("installed terraform", { path: filePath });
return filePath;
}