diff --git a/tools/deploy/index.ts b/tools/deploy/index.ts index 5bfd8d7c..327ddc9f 100644 --- a/tools/deploy/index.ts +++ b/tools/deploy/index.ts @@ -49,12 +49,7 @@ program const aq = new script.ActionQueue; for (const src of files) { - try { - script.runOnFile(scr, src, aq); - } catch(e) { - // Move to script.runOnFile? - aq.throw(e); - } + script.runOnFile(scr, src, aq); } runAq(aq, link, outputDir, verbose); @@ -69,13 +64,8 @@ program const aq = new script.ActionQueue; for (const file of scripts) { - try { - const scr = new script.Script(file, 'file'); - script.run(scr, nodePath.dirname(file), aq); - } catch(e) { - // Move to script.run? - aq.throw(e); - } + const scr = new script.Script(file, 'file'); + script.run(scr, nodePath.dirname(file), aq); } runAq(aq, link, outputDir, verbose); diff --git a/tools/deploy/script.ts b/tools/deploy/script.ts index df54ff50..c7199189 100644 --- a/tools/deploy/script.ts +++ b/tools/deploy/script.ts @@ -167,20 +167,28 @@ function makeEnv(srcDir : string, queue: ActionQueue) { } export function runOnFile(scr : Script, src : string, queue: ActionQueue) { - const input = pathlib.path(src, {dir: ""}); - const result = scr.runInNewContext({ - __proto__: ENV_PROTO, - path: input, - ...input - }); - if (result === undefined) { - throw new Error(`undefined output on ${src}`); + try { + const input = pathlib.path(src, {dir: ""}); + const result = scr.runInNewContext({ + __proto__: ENV_PROTO, + path: input, + ...input + }); + if (result === undefined) { + throw new Error(`undefined output on ${src}`); + } + const output = pathlib.update(input, result); + const dst = pathlib.format(output); + queue.copy(src, dst); + } catch(e) { + queue.throw(e); } - const output = pathlib.update(input, result); - const dst = pathlib.format(output); - queue.copy(src, dst); } export function run(scr : Script, srcDir : string, queue : ActionQueue) { - scr.runInNewContext(makeEnv(srcDir, queue)); + try { + scr.runInNewContext(makeEnv(srcDir, queue)); + } catch(e) { + queue.throw(e); + } }