hatchkit 0.1.12 → 0.1.14

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.
@@ -51,7 +51,7 @@ export declare function wireProjectIntoCoolify(input: WireUpInput): Promise<Wire
51
51
  * conventions produce, in priority order:
52
52
  * · `<name>-server` + `<name>-client` → starter split layout
53
53
  * · `<name>` → adopt single-app layout
54
- * · `<name>-web` / `<name>-app` / `<name>-api` → setup-coolify-stack.sh
54
+ * · `<name>-web` / `<name>-app` / `<name>-api` → `runCoolifySetup`
55
55
  * defaults (treated as single-app, no SERVER/CLIENT label).
56
56
  *
57
57
  * Returns an empty array when Coolify isn't configured or no app
@@ -301,7 +301,7 @@ function inferZone(domain) {
301
301
  * conventions produce, in priority order:
302
302
  * · `<name>-server` + `<name>-client` → starter split layout
303
303
  * · `<name>` → adopt single-app layout
304
- * · `<name>-web` / `<name>-app` / `<name>-api` → setup-coolify-stack.sh
304
+ * · `<name>-web` / `<name>-app` / `<name>-api` → `runCoolifySetup`
305
305
  * defaults (treated as single-app, no SERVER/CLIENT label).
306
306
  *
307
307
  * Returns an empty array when Coolify isn't configured or no app
@@ -10,7 +10,7 @@
10
10
  *
11
11
  * Flow:
12
12
  * 1. Resolve the Coolify project_uuid (it was created by
13
- * `setup-coolify-stack.sh` with the project name).
13
+ * `runCoolifySetup` with the project name).
14
14
  * 2. Resolve the server_uuid by IP (Hetzner deploys carry the IP)
15
15
  * or fall back to the first listed server.
16
16
  * 3. POST /databases/mongodb with `instant_deploy: true`.
@@ -1,4 +1,30 @@
1
1
  import type { ProjectConfig } from "../prompts.js";
2
- /** Run the Coolify setup script for the project. */
3
- export declare function runCoolifySetup(config: ProjectConfig, repoRoot: string): Promise<void>;
2
+ export interface RunCoolifySetupOptions {
3
+ /** GitHub repository URL required when creating a new application
4
+ * (Coolify's `git_repository` field). Existing apps are matched by
5
+ * name and reused without it. */
6
+ repoUrl?: string;
7
+ /** Server-side container port. Coolify routes incoming traffic to
8
+ * this port via Traefik. The starter's Express server listens here
9
+ * in production (it also serves the built client assets). */
10
+ serverPort?: number;
11
+ /** Client dev port — currently unused by Coolify (no Vite dev server
12
+ * in production). Accepted for symmetry with `scaffoldInfra` and so
13
+ * future build-time / preview deploys have it. */
14
+ clientPort?: number;
15
+ }
16
+ export interface RunCoolifySetupResult {
17
+ /** Coolify uuid of the created (or reused) application. The caller
18
+ * records this in the run ledger so a partial-create rollback can
19
+ * delete it via `CoolifyApi.deleteApplication`. */
20
+ appUuid: string;
21
+ /** Coolify uuid of the project the app lives in. Recorded only for
22
+ * diagnostics — projects are NOT auto-deleted on rollback because
23
+ * they may already host other apps. */
24
+ projectUuid: string;
25
+ }
26
+ /** Create the Coolify project + application for this hatchkit project,
27
+ * idempotent across re-runs. Throws on hard failures so the caller's
28
+ * failure handler can offer a tailored cleanup. */
29
+ export declare function runCoolifySetup(config: ProjectConfig, options?: RunCoolifySetupOptions): Promise<RunCoolifySetupResult>;
4
30
  //# sourceMappingURL=coolify.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coolify.d.ts","sourceRoot":"","sources":["../../src/deploy/coolify.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,oDAAoD;AACpD,wBAAsB,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB5F"}
1
+ {"version":3,"file":"coolify.d.ts","sourceRoot":"","sources":["../../src/deploy/coolify.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,MAAM,WAAW,sBAAsB;IACrC;;sCAEkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;kEAE8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;uDAEmD;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC;;wDAEoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB;;4CAEwC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;oDAEoD;AACpD,wBAAsB,eAAe,CACnC,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,qBAAqB,CAAC,CA8HhC"}
@@ -1,20 +1,175 @@
1
- import { join } from "node:path";
1
+ /*
2
+ * Coolify project + application provisioning. Replaces the old
3
+ * `infra/scripts/setup-coolify-stack.sh`, which spoke an obsolete
4
+ * dialect of the Coolify REST API (`POST /databases` instead of
5
+ * `/databases/mongodb`, single-key `POST /envs` instead of bulk
6
+ * `PATCH /envs/bulk`) and silently swallowed db-creation failures.
7
+ *
8
+ * What this module owns:
9
+ * 1. Project create-or-reuse (idempotent on project name).
10
+ * 2. Server resolution (prefers `config.serverUuid` from the prompt
11
+ * flow; falls back to ip-keyed lookup or first server).
12
+ * 3. Application create-or-reuse (`<name>-web`, public-repo flavour).
13
+ * 4. Multi-domain routing (frontend + api subdomain + path-based API
14
+ * and websocket — the same five-host strategy the old script used).
15
+ * 5. Minimal env vars on the application (NODE_ENV / PORT /
16
+ * FRONTEND_URL). App secrets and DB URLs go into encrypted
17
+ * .env.production via dotenvx — not directly onto the Coolify app
18
+ * — so the keyholder is the only one who sees plaintext, and
19
+ * redeploys don't require touching the Coolify UI.
20
+ *
21
+ * What this module does NOT own:
22
+ * · MongoDB / Redis containers — `provisionCoolifyMongo` (and a
23
+ * future Redis sibling) handle those, called separately by the
24
+ * create flow after the app exists.
25
+ * · GitHub Actions deploy secrets — `setCoolifyDeploySecrets` runs
26
+ * after we return, once we know the app uuid.
27
+ */
2
28
  import chalk from "chalk";
29
+ import ora from "ora";
3
30
  import { getCoolifyConfig } from "../config.js";
4
- import { execStream } from "../utils/exec.js";
5
- /** Run the Coolify setup script for the project. */
6
- export async function runCoolifySetup(config, repoRoot) {
7
- const coolifyConfig = await getCoolifyConfig();
8
- const envFile = join(repoRoot, "stacks", `${config.name}.env`);
31
+ import { CoolifyApi } from "../utils/coolify-api.js";
32
+ /** Create the Coolify project + application for this hatchkit project,
33
+ * idempotent across re-runs. Throws on hard failures so the caller's
34
+ * failure handler can offer a tailored cleanup. */
35
+ export async function runCoolifySetup(config, options = {}) {
36
+ const cfg = await getCoolifyConfig();
37
+ if (!cfg) {
38
+ throw new Error("Coolify is not configured. Run `hatchkit config add coolify` first.");
39
+ }
40
+ const api = new CoolifyApi({ url: cfg.url, token: cfg.token });
9
41
  console.log(chalk.bold("\n ── Coolify Setup ─────────────────────────────────────────\n"));
10
- const env = {};
11
- if (coolifyConfig?.token) {
12
- env.COOLIFY_TOKEN = coolifyConfig.token;
42
+ const verify = ora(`Connecting to Coolify at ${cfg.url}`).start();
43
+ try {
44
+ const version = await api.getVersion();
45
+ verify.succeed(`Connected to Coolify v${version}`);
46
+ }
47
+ catch (err) {
48
+ verify.fail();
49
+ throw new Error(`Cannot reach Coolify API at ${cfg.url}: ${err.message}`);
50
+ }
51
+ const serverUuid = await resolveServerUuid(api, config);
52
+ // Project: reuse one with the same name when present. The old bash
53
+ // script always created a new one, which left orphan empty projects
54
+ // behind on every retry.
55
+ let projectUuid;
56
+ const existingProject = await api.findProjectByName(config.name);
57
+ if (existingProject) {
58
+ projectUuid = existingProject.uuid;
59
+ console.log(chalk.dim(` Using existing Coolify project ${config.name} (${projectUuid})`));
60
+ }
61
+ else {
62
+ const project = await api.createProject(config.name);
63
+ projectUuid = project.uuid;
64
+ console.log(chalk.green(` ✓ Project created: ${config.name} (${projectUuid})`));
65
+ }
66
+ // Domain routing: five hosts on one container.
67
+ // · https://<domain> — frontend
68
+ // · https://api.<domain> — API subdomain
69
+ // · https://<domain>/api — path-based API (same-origin → no CORS)
70
+ // · https://<domain>/api/ws — websocket via path
71
+ // · https://api.<domain>/ws — websocket via subdomain
72
+ // Traefik forwards all five to the same Coolify app; the app's
73
+ // Express router decides what to do based on Host + path.
74
+ const apiDomain = `api.${config.domain}`;
75
+ const domains = [
76
+ `https://${config.domain}`,
77
+ `https://${apiDomain}`,
78
+ `https://${config.domain}/api`,
79
+ `https://${config.domain}/api/ws`,
80
+ `https://${apiDomain}/ws`,
81
+ ];
82
+ console.log(chalk.dim(" Domain routing:"));
83
+ console.log(chalk.dim(` Frontend: https://${config.domain}`));
84
+ console.log(chalk.dim(` Backend: ${domains.slice(1).join(", ")}`));
85
+ // Application: reuse-by-name. `findApplicationByName` matches across
86
+ // every project the user can see; first hit wins. Within a single
87
+ // hatchkit-managed Coolify install, project names are unique enough
88
+ // that a hit means "the same app" — same assumption coolify-mongo
89
+ // makes when it resolves the project.
90
+ const appName = `${config.name}-web`;
91
+ let appUuid;
92
+ const existingApp = await api.findApplicationByName(appName);
93
+ if (existingApp) {
94
+ appUuid = existingApp.uuid;
95
+ console.log(chalk.dim(` Using existing Coolify application ${appName} (${appUuid})`));
13
96
  }
14
- const exitCode = await execStream(join(repoRoot, "scripts", "setup-coolify-stack.sh"), ["--config", envFile], { cwd: repoRoot, env });
15
- if (exitCode !== 0) {
16
- throw new Error("Coolify setup failed");
97
+ else {
98
+ if (!options.repoUrl) {
99
+ throw new Error("No GitHub repo URL — can't create the Coolify application. Did the GitHub step run?");
100
+ }
101
+ const create = ora(`Creating application ${appName}`).start();
102
+ try {
103
+ const created = await api.createApplicationFromPublicRepo({
104
+ projectUuid,
105
+ serverUuid,
106
+ environmentName: "production",
107
+ gitRepository: options.repoUrl,
108
+ gitBranch: "main",
109
+ // Canonical pipeline: GitHub Actions builds → pushes to GHCR →
110
+ // Coolify pulls via docker-compose.yml (scaffolded at the repo
111
+ // root by `scaffoldBuildPipeline`). `dockerfile` here would
112
+ // ignore that compose file and try to build the repo directly,
113
+ // which fails on the monorepo layout.
114
+ buildPack: "dockercompose",
115
+ // Coolify exposes one container port. The starter's server
116
+ // listens on `serverPort` and serves client assets in prod —
117
+ // that's the right port to route to. The client dev port is a
118
+ // build-time concern only.
119
+ portsExposes: String(options.serverPort ?? 3000),
120
+ name: appName,
121
+ domains,
122
+ // First deploy lands via GitHub Actions on first push, so we
123
+ // don't need Coolify to start the (empty) container right now.
124
+ instantDeploy: false,
125
+ });
126
+ appUuid = created.uuid;
127
+ create.succeed(`Application created: ${appName} (${appUuid})`);
128
+ }
129
+ catch (err) {
130
+ create.fail();
131
+ throw err;
132
+ }
17
133
  }
134
+ // Env vars on the Coolify application. Keep this list minimal —
135
+ // anything secret (DB URLs, S3 creds, JWT secrets, …) goes into
136
+ // .env.production and is decrypted at runtime via the dotenvx
137
+ // private key that `hatchkit keys push` puts on Coolify. That keeps
138
+ // prod secrets out of Coolify's UI.
139
+ const envs = {
140
+ NODE_ENV: "production",
141
+ PORT: String(options.serverPort ?? 3000),
142
+ FRONTEND_URL: `https://${config.domain}`,
143
+ };
144
+ await api.setAppEnv(appUuid, envs);
145
+ console.log(chalk.green(` ✓ Set ${Object.keys(envs).length} env vars on application (${Object.keys(envs).join(", ")})`));
18
146
  console.log(chalk.green("\n ✓ Coolify app stack created"));
147
+ return { appUuid, projectUuid };
148
+ }
149
+ /** Resolve the Coolify server uuid for this project. The prompt flow
150
+ * populates `config.serverUuid` for `existing` deploys; for new
151
+ * Hetzner deploys (or older cached configs) we fall back to ip- or
152
+ * first-server lookup. */
153
+ async function resolveServerUuid(api, config) {
154
+ if (config.serverUuid)
155
+ return config.serverUuid;
156
+ if (config.serverIp) {
157
+ const found = await api.findServer({ ip: config.serverIp });
158
+ if (found)
159
+ return found.uuid;
160
+ }
161
+ const servers = await api.listServers();
162
+ const first = servers[0];
163
+ if (!first) {
164
+ throw new Error("No Coolify servers configured. Add one in the Coolify dashboard first.");
165
+ }
166
+ // listServers returns the numeric `id` only; resolve the uuid via
167
+ // findServer (Coolify's /servers includes both fields, our typed
168
+ // wrapper just doesn't expose uuid in the list shape).
169
+ const found = await api.findServer({ ip: first.ip });
170
+ if (!found) {
171
+ throw new Error(`Couldn't resolve Coolify uuid for server "${first.name}" (${first.ip}).`);
172
+ }
173
+ return found.uuid;
19
174
  }
20
175
  //# sourceMappingURL=coolify.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coolify.js","sourceRoot":"","sources":["../../src/deploy/coolify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,oDAAoD;AACpD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAqB,EAAE,QAAgB;IAC3E,MAAM,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC;IAE/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC,CAAC;IAE5F,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,IAAI,aAAa,EAAE,KAAK,EAAE,CAAC;QACzB,GAAG,CAAC,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC;IAC1C,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAC/B,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,wBAAwB,CAAC,EACnD,CAAC,UAAU,EAAE,OAAO,CAAC,EACrB,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CACvB,CAAC;IAEF,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"coolify.js","sourceRoot":"","sources":["../../src/deploy/coolify.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../src/deploy/pages.ts"],"names":[],"mappings":"AAqDA,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuC9D"}
1
+ {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../src/deploy/pages.ts"],"names":[],"mappings":"AAsDA,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuC9D"}
@@ -3,6 +3,7 @@ import { join } from "node:path";
3
3
  import { confirm, input, select } from "@inquirer/prompts";
4
4
  import chalk from "chalk";
5
5
  import { ensureDns, getDnsConfig } from "../config.js";
6
+ import { CloudflareApi } from "../utils/cloudflare-api.js";
6
7
  import { exec } from "../utils/exec.js";
7
8
  import { parseDomain, validateDomain } from "../utils/validate.js";
8
9
  // GitHub's apex A records (docs: configuring-a-custom-domain-for-your-github-pages-site)
@@ -507,54 +508,32 @@ function printManualDnsRecords(baseDomain, subdomain, target, isApex) {
507
508
  }
508
509
  console.log(chalk.dim(`\n Zone: ${baseDomain}\n`));
509
510
  }
510
- async function cfApi(token, path, init) {
511
- const res = await fetch(`https://api.cloudflare.com/client/v4${path}`, {
512
- method: init?.method ?? "GET",
513
- headers: {
514
- Authorization: `Bearer ${token}`,
515
- "Content-Type": "application/json",
516
- },
517
- body: init?.body ? JSON.stringify(init.body) : undefined,
518
- });
519
- const data = (await res.json());
520
- if (!data.success) {
521
- throw new Error(`Cloudflare API ${path} failed: ${data.errors.map((e) => `${e.code} ${e.message}`).join(", ")}`);
522
- }
523
- return data.result;
524
- }
525
511
  async function configureCloudflareDns(token, baseDomain, subdomain, target, isApex) {
526
- const zones = await cfApi(token, `/zones?name=${encodeURIComponent(baseDomain)}`);
527
- if (zones.length === 0) {
512
+ const api = new CloudflareApi({ token });
513
+ const zone = await api.getZoneByName(baseDomain);
514
+ if (!zone) {
528
515
  console.log(chalk.yellow(` ⚠ No Cloudflare zone found for ${baseDomain}. Falling back to manual records.`));
529
516
  printManualDnsRecords(baseDomain, subdomain, target, isApex);
530
517
  return;
531
518
  }
532
- const zone = zones[0];
533
519
  const recordName = isApex ? baseDomain : `${subdomain}.${baseDomain}`;
520
+ // GitHub Pages apex needs A records for all four IPs (round-robin
521
+ // redundancy). For a subdomain, one CNAME to the github.io target
522
+ // is enough. Both flavours run with proxied=false because Cloudflare's
523
+ // orange cloud breaks GitHub Pages' Let's Encrypt cert issuance.
534
524
  const records = isApex
535
- ? GITHUB_APEX_A.map((ip) => ({ type: "A", name: recordName, content: ip, proxied: false }))
536
- : [{ type: "CNAME", name: recordName, content: target, proxied: false }];
525
+ ? GITHUB_APEX_A.map((ip) => ({ type: "A", content: ip }))
526
+ : [{ type: "CNAME", content: target }];
537
527
  for (const rec of records) {
538
- const existing = await cfApi(token, `/zones/${zone.id}/dns_records?type=${rec.type}&name=${encodeURIComponent(rec.name)}`);
539
- const match = existing.find((r) => r.content === rec.content);
540
- if (match) {
541
- console.log(chalk.dim(` ${rec.type} ${rec.name} → ${rec.content} (already set)`));
542
- continue;
543
- }
544
- // A different record with the same name+type update in place to
545
- // keep the zone tidy.
546
- const stale = existing[0];
547
- if (stale) {
548
- await cfApi(token, `/zones/${zone.id}/dns_records/${stale.id}`, {
549
- method: "PUT",
550
- body: rec,
551
- });
552
- console.log(chalk.green(` ✓ ${rec.type} ${rec.name} → ${rec.content} (updated)`));
553
- }
554
- else {
555
- await cfApi(token, `/zones/${zone.id}/dns_records`, { method: "POST", body: rec });
556
- console.log(chalk.green(` ✓ ${rec.type} ${rec.name} → ${rec.content} (created)`));
557
- }
528
+ const result = await api.upsertRecord(zone.id, {
529
+ type: rec.type,
530
+ name: recordName,
531
+ content: rec.content,
532
+ proxied: false,
533
+ });
534
+ const status = result.created ? "created" : result.updated ? "updated" : "already set";
535
+ const line = ` ${rec.type} ${recordName} → ${rec.content} (${status})`;
536
+ console.log(result.created || result.updated ? chalk.green(`✓ ${line.trimStart()}`) : chalk.dim(line));
558
537
  }
559
538
  }
560
539
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../src/deploy/pages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../src/deploy/pages.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -657,7 +657,12 @@ async function handleCreate() {
657
657
  }
658
658
  // Step 6: Coolify setup
659
659
  if (config.runDeployment) {
660
- await runCoolifySetup(config, INFRA_ROOT);
660
+ const coolifyResult = await runCoolifySetup(config, {
661
+ repoUrl: repoUrl ?? undefined,
662
+ serverPort: scaffoldResult?.ports.server,
663
+ clientPort: scaffoldResult?.ports.client,
664
+ });
665
+ ledger?.record({ kind: "coolifyApp", uuid: coolifyResult.appUuid });
661
666
  // Provision a per-project MongoDB container on Coolify when the
662
667
  // user picked that path. Best-effort: a failure here doesn't undo
663
668
  // the app deploy — we surface clear instructions instead.
@@ -665,7 +670,8 @@ async function handleCreate() {
665
670
  try {
666
671
  const { provisionCoolifyMongo } = await import("./deploy/coolify-mongo.js");
667
672
  const serverEnvDir = join(appDir, "packages/server");
668
- await provisionCoolifyMongo(config, serverEnvDir);
673
+ const mongoResult = await provisionCoolifyMongo(config, serverEnvDir);
674
+ ledger?.record({ kind: "coolifyDb", uuid: mongoResult.databaseUuid });
669
675
  }
670
676
  catch (err) {
671
677
  console.log(chalk.yellow(` Couldn't auto-provision MongoDB: ${err.message}`));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cloudflare-api.d.ts","sourceRoot":"","sources":["../../src/utils/cloudflare-api.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiBD,kCAAkC;AAClC,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,OAAO,EAAE,oBAAoB;YAK3B,OAAO;IAoBrB,iDAAiD;IAC3C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IA2B5C,gEAAgE;IAC1D,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAOjE,6DAA6D;IACvD,UAAU,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,GAC3B,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAQhG;;;qEAGiE;IAC3D,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAAC;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,GACA,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CA6B/D"}
1
+ {"version":3,"file":"cloudflare-api.d.ts","sourceRoot":"","sources":["../../src/utils/cloudflare-api.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiBD,kCAAkC;AAClC,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,OAAO,EAAE,oBAAoB;YAK3B,OAAO;IAoBrB,iDAAiD;IAC3C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IA2B5C,gEAAgE;IAC1D,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAOjE,6DAA6D;IACvD,UAAU,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,GAC3B,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAQhG;;;qEAGiE;IAC3D,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAAC;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,GACA,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CA6B/D"}
@@ -1,14 +1,16 @@
1
1
  // Cloudflare REST API client.
2
2
  //
3
- // Minimal wrapper used by the `hatchkit dns link-to-cloudflare` command
4
- // to verify a token and list the zones in an account so we can
5
- // cross-reference them against domains registered at INWX. The DNS record
6
- // creation itself goes through Terraform (modules/cloudflare-dns) during
7
- // a normal `hatchkit create` flow this client is for the standalone
8
- // migration / reconciliation command.
3
+ // Used by:
4
+ // · `hatchkit dns link-to-cloudflare` verifies a token and lists
5
+ // zones so we can cross-reference them against domains registered
6
+ // at INWX (standalone migration / reconciliation).
7
+ // · `hatchkit gh-pages` — upserts apex A records (or a subdomain
8
+ // CNAME) for a GitHub Pages site, with proxied=false because the
9
+ // orange cloud breaks Pages' Let's Encrypt cert issuance.
9
10
  //
10
- // NB: `hatchkit gh-pages` has its own inline Cloudflare DNS helper for
11
- // record CRUD. That path is separate and doesn't share this class.
11
+ // During a normal `hatchkit create` flow the DNS records themselves
12
+ // go through Terraform (modules/cloudflare-dns) this client is for
13
+ // command-line paths that don't run a full Terraform stack.
12
14
  const API_BASE = "https://api.cloudflare.com/client/v4";
13
15
  /** Cloudflare REST API client. */
14
16
  export class CloudflareApi {
@@ -1 +1 @@
1
- {"version":3,"file":"cloudflare-api.js","sourceRoot":"","sources":["../../src/utils/cloudflare-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloudflare-api.js","sourceRoot":"","sources":["../../src/utils/cloudflare-api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hatchkit",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "packageManager": "pnpm@10.33.2",
5
5
  "description": "Interactive CLI for scaffolding full-stack projects and provisioning observability/email clients",
6
6
  "type": "module",
@@ -24,9 +24,9 @@
24
24
  "check": "pnpm run typecheck && pnpm run lint && pnpm run test",
25
25
  "install-local": "pnpm run build && npm install -g .",
26
26
  "release": "pnpm run release:patch",
27
- "release:patch": "node scripts/release-prep.mjs && npm version patch -m \"chore: release v%s\" && pnpm run _release:finish",
28
- "release:minor": "node scripts/release-prep.mjs && npm version minor -m \"chore: release v%s\" && pnpm run _release:finish",
29
- "release:major": "node scripts/release-prep.mjs && npm version major -m \"chore: release v%s\" && pnpm run _release:finish",
27
+ "release:patch": "node scripts/release-prep.mjs && node scripts/release-bump.mjs patch && pnpm run _release:finish",
28
+ "release:minor": "node scripts/release-prep.mjs && node scripts/release-bump.mjs minor && pnpm run _release:finish",
29
+ "release:major": "node scripts/release-prep.mjs && node scripts/release-bump.mjs major && pnpm run _release:finish",
30
30
  "_release:finish": "pnpm run build && pnpm run typecheck && npm publish --access public && git push --follow-tags && npm install -g .",
31
31
  "prepublishOnly": "pnpm run build"
32
32
  },
@@ -0,0 +1,62 @@
1
+ #!/usr/bin/env node
2
+ /*
3
+ * release-bump — bump cli/package.json + commit + tag, atomically.
4
+ *
5
+ * Replaces `npm version <bump> -m "..."` because npm's built-in
6
+ * version command silently skips the commit/tag step in this monorepo
7
+ * layout (cli/ is a workspace member, not the repo root, and the lock
8
+ * file npm tries to stage doesn't exist anymore — pnpm-lock.yaml at
9
+ * the workspace root is the source of truth). The result: every
10
+ * release left cli/package.json modified-but-uncommitted, the publish
11
+ * succeeded against an untracked version, and the release machinery
12
+ * drifted from git history.
13
+ *
14
+ * Doing the three steps ourselves is unambiguous: bump, stage, commit,
15
+ * tag. release-prep.mjs has already verified the working tree is
16
+ * clean before this runs, so the commit only contains the version bump.
17
+ *
18
+ * Usage: node scripts/release-bump.mjs <patch|minor|major>
19
+ */
20
+ import { execSync } from "node:child_process";
21
+ import { readFileSync, writeFileSync } from "node:fs";
22
+ import { dirname, join } from "node:path";
23
+ import { fileURLToPath } from "node:url";
24
+
25
+ const here = dirname(fileURLToPath(import.meta.url));
26
+ const cliDir = join(here, "..");
27
+ const pkgPath = join(cliDir, "package.json");
28
+
29
+ const bumpKind = process.argv[2];
30
+ if (!["patch", "minor", "major"].includes(bumpKind)) {
31
+ console.error(`release-bump: expected patch|minor|major, got ${bumpKind ?? "(nothing)"}`);
32
+ process.exit(1);
33
+ }
34
+
35
+ function sh(cmd, opts = {}) {
36
+ return execSync(cmd, { encoding: "utf-8", ...opts }).trim();
37
+ }
38
+
39
+ const repoRoot = sh("git rev-parse --show-toplevel");
40
+
41
+ const pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
42
+ const current = pkg.version;
43
+ const [maj, min, pat] = current.split(".").map((n) => Number(n) || 0);
44
+ const next =
45
+ bumpKind === "major"
46
+ ? `${maj + 1}.0.0`
47
+ : bumpKind === "minor"
48
+ ? `${maj}.${min + 1}.0`
49
+ : `${maj}.${min}.${pat + 1}`;
50
+
51
+ pkg.version = next;
52
+ // npm's `npm version` keeps a trailing newline; preserve that so diffs
53
+ // stay 1 line and don't churn whitespace.
54
+ writeFileSync(pkgPath, `${JSON.stringify(pkg, null, 2)}\n`, "utf-8");
55
+ console.log(` release-bump: ${current} → ${next}`);
56
+
57
+ // Stage + commit + tag from the repo root so the path in the commit
58
+ // is `cli/package.json` regardless of where the script was invoked.
59
+ sh(`git add ${JSON.stringify(join("cli", "package.json"))}`, { cwd: repoRoot });
60
+ sh(`git commit -m ${JSON.stringify(`chore: release v${next}`)}`, { cwd: repoRoot });
61
+ sh(`git tag ${JSON.stringify(`v${next}`)}`, { cwd: repoRoot });
62
+ console.log(` release-bump: committed + tagged v${next}`);
@@ -8,11 +8,10 @@
8
8
  * same baseline.
9
9
  *
10
10
  * ALSO refuses when the local cli/package.json version is at-or-
11
- * behind the version published to npm. `npm version patch` increments
12
- * from the LOCAL version, not the registry's, so drift between the
13
- * two leads to the script generating a number that's already taken
14
- * and the publish step crashing after build/typecheck. Catch it up
15
- * front instead.
11
+ * behind the version published to npm. release-bump.mjs increments
12
+ * from the LOCAL version, so drift between local and registry leads
13
+ * to the bump generating a number that's already taken and the
14
+ * publish step crashing after build/typecheck. Catch it up front.
16
15
  *
17
16
  * Skip with RELEASE_SKIP_PREP=1 (e.g. a CI-driven release that's
18
17
  * already vouched for cleanliness). RELEASE_SKIP_NPM_CHECK=1 only
@@ -118,13 +117,13 @@ function checkNpmDrift(repoRoot) {
118
117
  return [
119
118
  `local ${name}@${local} is behind the registry's ${registry}.`,
120
119
  "",
121
- " `npm version patch` increments from the LOCAL version, so a release now",
120
+ " release-bump.mjs increments from the LOCAL version, so a release now",
122
121
  " would try to publish a version that's already taken. Sync first:",
123
122
  "",
124
123
  ` cd ${join(repoRoot, "cli")}`,
125
124
  ` npm version ${registry} --no-git-tag-version # match the registry`,
126
125
  ` cd ${repoRoot}`,
127
- ` git add cli/package.json cli/package-lock.json`,
126
+ ` git add cli/package.json`,
128
127
  ` git commit -m "chore: release v${registry}"`,
129
128
  ` git tag v${registry}`,
130
129
  "",