summaryrefslogtreecommitdiff
path: root/mod.ts
blob: 81a2bc24555f9cea312e4d6c4a5edc8164558cee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env -S deno run --allow-env --allow-net

import { argv } from "@emprespresso/pengueno";
import { runServer } from "@emprespresso/ci_server";

const main = (_argv = Deno.args) => {
  const defaults = {
    "--port": "9000",
    "--host": "0.0.0.0",
  };
  const _args = argv(["--run-server", "--port", "--host"], defaults, _argv);
  const args = _args.fold((err, args) => {
    if (!args || err) throw err;
    return {
      server_mode: "--run-server" in args,
      port: parseInt(args["--port"]),
      host: args["--host"],
    };
  });

  const promises: Array<Promise<void>> = [];
  if (args.server_mode) {
    promises.push(runServer(args.port, args.host));
  }

  return Promise.all(promises);
};

if (import.meta.main) {
  await main();
}