create-svc 0.1.50 → 0.1.52
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.
package/package.json
CHANGED
package/src/scaffold.test.ts
CHANGED
|
@@ -320,6 +320,8 @@ test("scaffolds the workers target with wrangler lifecycle commands", async () =
|
|
|
320
320
|
expect(wranglerConfig).toContain('binding = "HYPERDRIVE"');
|
|
321
321
|
expect(wranglerConfig).toContain('AUTH_ENABLED = "true"');
|
|
322
322
|
expect(wranglerConfig).toContain('AUTH_AUDIENCE = "api://dns-api"');
|
|
323
|
+
expect(wranglerConfig).not.toContain("[triggers]");
|
|
324
|
+
expect(wranglerConfig).not.toContain("crons");
|
|
323
325
|
const authSource = await Bun.file(join(generatedRoot, "src", "auth.ts")).text();
|
|
324
326
|
expect(authSource).toContain('alg === "EdDSA"');
|
|
325
327
|
expect(authSource).toContain('name: "Ed25519"');
|
|
@@ -285,7 +285,7 @@ async function deleteHyperdrive() {
|
|
|
285
285
|
if (!id) {
|
|
286
286
|
return;
|
|
287
287
|
}
|
|
288
|
-
run("wrangler", ["hyperdrive", "delete", id
|
|
288
|
+
run("wrangler", ["hyperdrive", "delete", id], { allowFailure: true });
|
|
289
289
|
}
|
|
290
290
|
|
|
291
291
|
async function resolveDatabaseUrl(options: { preferRemote?: boolean } = {}) {
|
|
@@ -382,9 +382,9 @@ async function resolveNeonTarget(apiKey: string) {
|
|
|
382
382
|
}
|
|
383
383
|
|
|
384
384
|
async function deleteNeonDatabase() {
|
|
385
|
-
const apiKey =
|
|
385
|
+
const apiKey = resolveNeonApiKey();
|
|
386
386
|
if (!apiKey) {
|
|
387
|
-
log.step("Skipping Neon database deletion because NEON_API_KEY is not
|
|
387
|
+
log.step("Skipping Neon database deletion because NEON_API_KEY or a readable Vault Neon provider path is not available");
|
|
388
388
|
return;
|
|
389
389
|
}
|
|
390
390
|
|
|
@@ -489,13 +489,6 @@ async function runDoctor() {
|
|
|
489
489
|
}
|
|
490
490
|
return "name and custom domain route configured";
|
|
491
491
|
});
|
|
492
|
-
await record(results, "Cron Trigger", "fail", async () => {
|
|
493
|
-
const text = await Bun.file("./wrangler.toml").text();
|
|
494
|
-
if (!text.includes("[triggers]") || !text.includes("crons")) {
|
|
495
|
-
throw new Error("wrangler.toml is missing a cron trigger");
|
|
496
|
-
}
|
|
497
|
-
return "cron trigger configured";
|
|
498
|
-
});
|
|
499
492
|
await record(results, "Hyperdrive binding", "warn", async () => {
|
|
500
493
|
const text = await Bun.file("./wrangler.toml").text();
|
|
501
494
|
if (!text.includes('binding = "HYPERDRIVE"')) {
|
|
@@ -7,7 +7,6 @@ This `{{PROFILE}}` profile targets `{{RUNTIME}} + {{FRAMEWORK}}` on Cloudflare W
|
|
|
7
7
|
- one `wrangler.toml`
|
|
8
8
|
- a lightweight waitlist/launch API
|
|
9
9
|
- the `service` CLI for create, deploy, doctor, dashboards, DNS, and destroy
|
|
10
|
-
- Cron Trigger wiring for scheduled follow-up work
|
|
11
10
|
- a Hyperdrive binding for Neon-backed Postgres persistence
|
|
12
11
|
- a production API origin at `https://{{API_HOSTNAME}}`
|
|
13
12
|
|
|
@@ -62,7 +61,7 @@ configured in `wrangler.toml`:
|
|
|
62
61
|
https://{{API_HOSTNAME}}
|
|
63
62
|
```
|
|
64
63
|
|
|
65
|
-
Use `service doctor` after create to verify Wrangler auth, route config,
|
|
64
|
+
Use `service doctor` after create to verify Wrangler auth, route config,
|
|
66
65
|
Hyperdrive, dashboard tooling, auth tooling, and deployed health.
|
|
67
66
|
|
|
68
67
|
{{PRODUCTION_PROTECTED_CHECKS}}
|