dokku-compose 0.6.7 → 0.6.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +49 -18
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -541,6 +541,18 @@ function parseBuildArgs(dockerOptsBuild) {
541
541
  for (const m of matches) args[m[1]] = m[2];
542
542
  return args;
543
543
  }
544
+ function buildConfigFromReports(builderReport, dockerfileReport, appJsonReport, dockerOptsBuild) {
545
+ const config = {};
546
+ if (dockerfileReport["dockerfile-path"])
547
+ config.dockerfile = dockerfileReport["dockerfile-path"];
548
+ if (appJsonReport["selected"])
549
+ config.app_json = appJsonReport["selected"];
550
+ if (builderReport["build-dir"])
551
+ config.context = builderReport["build-dir"];
552
+ const args = parseBuildArgs(dockerOptsBuild);
553
+ if (Object.keys(args).length > 0) config.args = args;
554
+ return config;
555
+ }
544
556
  var Builder = {
545
557
  key: "build",
546
558
  async read(ctx, target) {
@@ -550,23 +562,35 @@ var Builder = {
550
562
  ctx.query("app-json:report", target),
551
563
  ctx.query("docker-options:report", target)
552
564
  ]);
553
- const config = {};
554
- const builderReport = parseReport(builderRaw, "builder");
555
- const dockerfileReport = parseReport(dockerfileRaw, "builder-dockerfile");
556
- const appJsonReport = parseReport(appJsonRaw, "app-json");
557
- const dockerOptsReport = parseReport(dockerOptsRaw, "docker-options");
558
- if (dockerfileReport["dockerfile-path"])
559
- config.dockerfile = dockerfileReport["dockerfile-path"];
560
- if (appJsonReport["selected"])
561
- config.app_json = appJsonReport["selected"];
562
- if (builderReport["build-dir"])
563
- config.context = builderReport["build-dir"];
564
- const args = parseBuildArgs(dockerOptsReport["build"] ?? "");
565
- if (Object.keys(args).length > 0) config.args = args;
566
- return config;
565
+ return buildConfigFromReports(
566
+ parseReport(builderRaw, "builder"),
567
+ parseReport(dockerfileRaw, "builder-dockerfile"),
568
+ parseReport(appJsonRaw, "app-json"),
569
+ parseReport(dockerOptsRaw, "docker-options")["build"] ?? ""
570
+ );
571
+ },
572
+ async readAll(ctx) {
573
+ const [builderRaw, dockerfileRaw, appJsonRaw, dockerOptsRaw] = await Promise.all([
574
+ ctx.query("builder:report"),
575
+ ctx.query("builder-dockerfile:report"),
576
+ ctx.query("app-json:report"),
577
+ ctx.query("docker-options:report")
578
+ ]);
579
+ const builderBulk = parseBulkReport(builderRaw, "builder");
580
+ const dockerfileBulk = parseBulkReport(dockerfileRaw, "builder-dockerfile");
581
+ const appJsonBulk = parseBulkReport(appJsonRaw, "app-json");
582
+ const dockerOptsBulk = parseBulkReport(dockerOptsRaw, "docker-options");
583
+ const result = /* @__PURE__ */ new Map();
584
+ for (const app of builderBulk.keys()) {
585
+ result.set(app, buildConfigFromReports(
586
+ builderBulk.get(app) ?? {},
587
+ dockerfileBulk.get(app) ?? {},
588
+ appJsonBulk.get(app) ?? {},
589
+ dockerOptsBulk.get(app)?.["build"] ?? ""
590
+ ));
591
+ }
592
+ return result;
567
593
  },
568
- // No readAll — builder-dockerfile:report and docker-options:report
569
- // don't support bulk mode (no app arg) on all Dokku installations
570
594
  async onChange(ctx, target, { after }) {
571
595
  if (after.dockerfile)
572
596
  await ctx.run("builder-dockerfile:set", target, "dockerfile-path", after.dockerfile);
@@ -606,8 +630,15 @@ var DockerOptions = {
606
630
  const raw = await ctx.query("docker-options:report", target);
607
631
  return dockerOptsFromReport(parseReport(raw, "docker-options"));
608
632
  },
609
- // No readAll — docker-options:report doesn't support bulk mode (no app arg)
610
- // on all Dokku installations due to basher environment issues
633
+ async readAll(ctx) {
634
+ const raw = await ctx.query("docker-options:report");
635
+ const bulk = parseBulkReport(raw, "docker-options");
636
+ const result = /* @__PURE__ */ new Map();
637
+ for (const [app, report] of bulk) {
638
+ result.set(app, dockerOptsFromReport(report));
639
+ }
640
+ return result;
641
+ },
611
642
  async onChange(ctx, target, { before, after }) {
612
643
  for (const phase of PHASES) {
613
644
  const prev = new Set(before[phase] ?? []);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dokku-compose",
3
- "version": "0.6.7",
3
+ "version": "0.6.9",
4
4
  "description": "Docker Compose for Dokku — declare your entire server in a single YAML file.",
5
5
  "main": "dist/index.js",
6
6
  "exports": "./dist/index.js",