flingit 0.0.12 → 0.0.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.
- package/README.md +8 -1
- package/dist/cli/commands/db.d.ts +11 -0
- package/dist/cli/commands/db.d.ts.map +1 -1
- package/dist/cli/commands/db.js +60 -48
- package/dist/cli/commands/db.js.map +1 -1
- package/dist/cli/commands/dev.d.ts +9 -0
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +96 -100
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/feedback.d.ts +23 -0
- package/dist/cli/commands/feedback.d.ts.map +1 -1
- package/dist/cli/commands/feedback.js +60 -73
- package/dist/cli/commands/feedback.js.map +1 -1
- package/dist/cli/commands/init.d.ts +9 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +96 -107
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/launch.d.ts +11 -1
- package/dist/cli/commands/launch.d.ts.map +1 -1
- package/dist/cli/commands/launch.js +32 -36
- package/dist/cli/commands/launch.js.map +1 -1
- package/dist/cli/commands/login.d.ts +30 -0
- package/dist/cli/commands/login.d.ts.map +1 -1
- package/dist/cli/commands/login.js +71 -58
- package/dist/cli/commands/login.js.map +1 -1
- package/dist/cli/commands/logout.js +1 -1
- package/dist/cli/commands/logs.d.ts +39 -0
- package/dist/cli/commands/logs.d.ts.map +1 -1
- package/dist/cli/commands/logs.js +121 -90
- package/dist/cli/commands/logs.js.map +1 -1
- package/dist/cli/commands/onboard.d.ts +1 -1
- package/dist/cli/commands/onboard.d.ts.map +1 -1
- package/dist/cli/commands/onboard.js +97 -42
- package/dist/cli/commands/onboard.js.map +1 -1
- package/dist/cli/commands/plugin.d.ts +43 -0
- package/dist/cli/commands/plugin.d.ts.map +1 -1
- package/dist/cli/commands/plugin.js +229 -211
- package/dist/cli/commands/plugin.js.map +1 -1
- package/dist/cli/commands/project.d.ts +27 -0
- package/dist/cli/commands/project.d.ts.map +1 -1
- package/dist/cli/commands/project.js +101 -85
- package/dist/cli/commands/project.js.map +1 -1
- package/dist/cli/commands/push.d.ts +39 -0
- package/dist/cli/commands/push.d.ts.map +1 -1
- package/dist/cli/commands/push.js +152 -118
- package/dist/cli/commands/push.js.map +1 -1
- package/dist/cli/commands/register.js +1 -1
- package/dist/cli/commands/storage.d.ts +32 -0
- package/dist/cli/commands/storage.d.ts.map +1 -1
- package/dist/cli/commands/storage.js +180 -140
- package/dist/cli/commands/storage.js.map +1 -1
- package/dist/cli/commands/tunnel.d.ts +41 -0
- package/dist/cli/commands/tunnel.d.ts.map +1 -0
- package/dist/cli/commands/tunnel.js +210 -0
- package/dist/cli/commands/tunnel.js.map +1 -0
- package/dist/cli/commands/upgrade.d.ts +15 -0
- package/dist/cli/commands/upgrade.d.ts.map +1 -0
- package/dist/cli/commands/upgrade.js +82 -0
- package/dist/cli/commands/upgrade.js.map +1 -0
- package/dist/cli/index.js +35 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/utils/cli-io-impl.d.ts +64 -0
- package/dist/cli/utils/cli-io-impl.d.ts.map +1 -0
- package/dist/cli/utils/cli-io-impl.js +521 -0
- package/dist/cli/utils/cli-io-impl.js.map +1 -0
- package/dist/cli/utils/cli-io.d.ts +350 -0
- package/dist/cli/utils/cli-io.d.ts.map +1 -0
- package/dist/cli/utils/cli-io.js +13 -0
- package/dist/cli/utils/cli-io.js.map +1 -0
- package/dist/cli/utils/config.d.ts +60 -2
- package/dist/cli/utils/config.d.ts.map +1 -1
- package/dist/cli/utils/config.js +158 -37
- package/dist/cli/utils/config.js.map +1 -1
- package/dist/cli/utils/project.d.ts +60 -0
- package/dist/cli/utils/project.d.ts.map +1 -1
- package/dist/cli/utils/project.js +112 -2
- package/dist/cli/utils/project.js.map +1 -1
- package/dist/cli/utils/prompt-new-project.d.ts +1 -1
- package/dist/cli/utils/prompt-new-project.d.ts.map +1 -1
- package/dist/cli/utils/registry.d.ts +2 -2
- package/dist/cli/utils/registry.d.ts.map +1 -1
- package/dist/cli/utils/registry.js +13 -3
- package/dist/cli/utils/registry.js.map +1 -1
- package/dist/runtime/log.d.ts.map +1 -1
- package/dist/runtime/log.js +8 -4
- package/dist/runtime/log.js.map +1 -1
- package/dist/runtime/storage.js +1 -1
- package/dist/runtime/storage.js.map +1 -1
- package/package.json +3 -2
- package/templates/default/CLAUDE.md +1 -0
- package/templates/default/skills/fling/.hash +1 -0
- package/templates/default/skills/fling/SKILL.md +12 -4
- /package/templates/default/skills/{discord/SKILL.md → fling/DISCORD.md} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* fling push - Deploy to Cloudflare Workers via Fling platform
|
|
3
3
|
*/
|
|
4
4
|
import { Command } from "commander";
|
|
5
|
-
import {
|
|
5
|
+
import { readFileSync } from "node:fs";
|
|
6
6
|
import { join, dirname } from "node:path";
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
8
8
|
import { Readable } from "node:stream";
|
|
@@ -16,7 +16,11 @@ import { bundleForPlatform } from "../deploy/bundler.js";
|
|
|
16
16
|
import { checkForUpdates, } from "../utils/version-check.js";
|
|
17
17
|
import { collectAssets, buildManifest, validateAssetSizes, } from "../deploy/assets.js";
|
|
18
18
|
import { createBucketUploadStream } from "../deploy/bucket-stream.js";
|
|
19
|
+
import { consoleIO, processIO, fileIOWithRead } from "../utils/cli-io-impl.js";
|
|
19
20
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
21
|
+
// ═══════════════════════════════════════════════════════
|
|
22
|
+
// DEFAULT IMPLEMENTATIONS
|
|
23
|
+
// ═══════════════════════════════════════════════════════
|
|
20
24
|
/**
|
|
21
25
|
* Create real dependencies for version checking.
|
|
22
26
|
* Reads version from package.json and fetches latest from npm registry.
|
|
@@ -53,25 +57,48 @@ function createVersionCheckDeps() {
|
|
|
53
57
|
},
|
|
54
58
|
};
|
|
55
59
|
}
|
|
60
|
+
export function createDefaultPushDeps() {
|
|
61
|
+
return {
|
|
62
|
+
console: consoleIO,
|
|
63
|
+
process: processIO,
|
|
64
|
+
file: fileIOWithRead,
|
|
65
|
+
spawn,
|
|
66
|
+
platformFetch,
|
|
67
|
+
isLoggedIn,
|
|
68
|
+
hasWorkerEntry,
|
|
69
|
+
getProjectName,
|
|
70
|
+
loadLocalSecrets,
|
|
71
|
+
bundleForPlatform,
|
|
72
|
+
collectAssets,
|
|
73
|
+
buildManifest,
|
|
74
|
+
validateAssetSizes,
|
|
75
|
+
createVersionCheckDeps,
|
|
76
|
+
checkForUpdates,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
export const defaultPushDeps = createDefaultPushDeps();
|
|
80
|
+
// ═══════════════════════════════════════════════════════
|
|
81
|
+
// CORE FUNCTIONS (with DI)
|
|
82
|
+
// ═══════════════════════════════════════════════════════
|
|
56
83
|
/**
|
|
57
84
|
* Sync local secrets to production.
|
|
58
85
|
* Reads from .fling/secrets and uploads to the platform API.
|
|
59
86
|
*/
|
|
60
|
-
async function syncSecrets(verbose) {
|
|
61
|
-
const secrets = loadLocalSecrets();
|
|
87
|
+
async function syncSecrets(verbose, deps) {
|
|
88
|
+
const secrets = deps.loadLocalSecrets();
|
|
62
89
|
if (secrets.size === 0) {
|
|
63
90
|
if (verbose) {
|
|
64
|
-
console.log("[verbose] No secrets to sync");
|
|
91
|
+
deps.console.log("[verbose] No secrets to sync");
|
|
65
92
|
}
|
|
66
93
|
return;
|
|
67
94
|
}
|
|
68
|
-
console.log(`Syncing ${secrets.size} secret${secrets.size === 1 ? "" : "s"}...`);
|
|
95
|
+
deps.console.log(`Syncing ${secrets.size} secret${secrets.size === 1 ? "" : "s"}...`);
|
|
69
96
|
for (const [key, value] of secrets) {
|
|
70
97
|
if (verbose) {
|
|
71
|
-
console.log(`[verbose] Setting secret: ${key}`);
|
|
98
|
+
deps.console.log(`[verbose] Setting secret: ${key}`);
|
|
72
99
|
}
|
|
73
|
-
const projectName = getProjectName();
|
|
74
|
-
const response = await platformFetch(`/project/${encodeURIComponent(projectName)}/secrets/${key}`, {
|
|
100
|
+
const projectName = deps.getProjectName();
|
|
101
|
+
const response = await deps.platformFetch(`/project/${encodeURIComponent(projectName)}/secrets/${key}`, {
|
|
75
102
|
method: "PUT",
|
|
76
103
|
headers: { "Content-Type": "application/json" },
|
|
77
104
|
body: JSON.stringify({ value }),
|
|
@@ -81,23 +108,23 @@ async function syncSecrets(verbose) {
|
|
|
81
108
|
throw new Error(`Failed to sync secret ${key}: ${data.error ?? `API error: ${response.status}`}`);
|
|
82
109
|
}
|
|
83
110
|
}
|
|
84
|
-
console.log("Secrets synced.\n");
|
|
111
|
+
deps.console.log("Secrets synced.\n");
|
|
85
112
|
}
|
|
86
113
|
/**
|
|
87
114
|
* Run Vite build to generate frontend assets.
|
|
88
115
|
* If basePath is provided, sets VITE_BASE env var for path-based routing.
|
|
89
116
|
*/
|
|
90
|
-
async function runViteBuild(projectDir, verbose, basePath) {
|
|
91
|
-
console.log("Building frontend with Vite...\n");
|
|
92
|
-
const env = { ...process.env };
|
|
117
|
+
async function runViteBuild(projectDir, verbose, deps, basePath) {
|
|
118
|
+
deps.console.log("Building frontend with Vite...\n");
|
|
119
|
+
const env = { ...deps.process.env };
|
|
93
120
|
if (basePath) {
|
|
94
121
|
env["VITE_BASE"] = basePath;
|
|
95
122
|
if (verbose) {
|
|
96
|
-
console.log(`[verbose] Setting VITE_BASE=${basePath} for path-based routing`);
|
|
123
|
+
deps.console.log(`[verbose] Setting VITE_BASE=${basePath} for path-based routing`);
|
|
97
124
|
}
|
|
98
125
|
}
|
|
99
126
|
await new Promise((resolve, reject) => {
|
|
100
|
-
const build = spawn("npm", ["run", "build"], {
|
|
127
|
+
const build = deps.spawn("npm", ["run", "build"], {
|
|
101
128
|
cwd: projectDir,
|
|
102
129
|
env,
|
|
103
130
|
stdio: verbose ? "inherit" : ["ignore", "pipe", "pipe"],
|
|
@@ -123,7 +150,7 @@ async function runViteBuild(projectDir, verbose, basePath) {
|
|
|
123
150
|
});
|
|
124
151
|
build.on("close", (code) => {
|
|
125
152
|
if (code === 0) {
|
|
126
|
-
console.log("Frontend build complete.\n");
|
|
153
|
+
deps.console.log("Frontend build complete.\n");
|
|
127
154
|
resolve();
|
|
128
155
|
}
|
|
129
156
|
else {
|
|
@@ -143,31 +170,31 @@ async function runViteBuild(projectDir, verbose, basePath) {
|
|
|
143
170
|
* Upload static assets to the platform.
|
|
144
171
|
* Returns the completion JWT to include in code deployment.
|
|
145
172
|
*/
|
|
146
|
-
async function uploadAssets(assets, verbose) {
|
|
173
|
+
async function uploadAssets(assets, verbose, deps) {
|
|
147
174
|
if (assets.length === 0) {
|
|
148
175
|
return undefined;
|
|
149
176
|
}
|
|
150
177
|
// Validate sizes
|
|
151
|
-
validateAssetSizes(assets);
|
|
178
|
+
deps.validateAssetSizes(assets);
|
|
152
179
|
const totalSize = assets.reduce((sum, a) => sum + a.size, 0);
|
|
153
180
|
const totalSizeKB = totalSize / 1024;
|
|
154
181
|
const totalSizeMB = totalSizeKB / 1024;
|
|
155
182
|
if (totalSizeMB >= 1) {
|
|
156
|
-
console.log(`Static assets: ${assets.length} files (${totalSizeMB.toFixed(2)} MB)`);
|
|
183
|
+
deps.console.log(`Static assets: ${assets.length} files (${totalSizeMB.toFixed(2)} MB)`);
|
|
157
184
|
}
|
|
158
185
|
else {
|
|
159
|
-
console.log(`Static assets: ${assets.length} files (${totalSizeKB.toFixed(1)} KB)`);
|
|
186
|
+
deps.console.log(`Static assets: ${assets.length} files (${totalSizeKB.toFixed(1)} KB)`);
|
|
160
187
|
}
|
|
161
188
|
if (verbose) {
|
|
162
189
|
for (const asset of assets) {
|
|
163
|
-
console.log(` ${asset.path} (${(asset.size / 1024).toFixed(1)} KB)`);
|
|
190
|
+
deps.console.log(` ${asset.path} (${(asset.size / 1024).toFixed(1)} KB)`);
|
|
164
191
|
}
|
|
165
192
|
}
|
|
166
193
|
// Step 1: Create upload session (with retry for transient Cloudflare errors)
|
|
167
|
-
const manifest = buildManifest(assets);
|
|
168
|
-
const projectName = getProjectName();
|
|
194
|
+
const manifest = deps.buildManifest(assets);
|
|
195
|
+
const projectName = deps.getProjectName();
|
|
169
196
|
const { sessionJwt, buckets } = await withRetry(async () => {
|
|
170
|
-
const sessionRes = await platformFetch(`/project/${encodeURIComponent(projectName)}/deploy/assets`, {
|
|
197
|
+
const sessionRes = await deps.platformFetch(`/project/${encodeURIComponent(projectName)}/deploy/assets`, {
|
|
171
198
|
method: "POST",
|
|
172
199
|
headers: { "Content-Type": "application/json" },
|
|
173
200
|
body: JSON.stringify({ manifest }),
|
|
@@ -179,11 +206,11 @@ async function uploadAssets(assets, verbose) {
|
|
|
179
206
|
return (await sessionRes.json());
|
|
180
207
|
}, { label: "Asset upload session", verbose });
|
|
181
208
|
if (verbose) {
|
|
182
|
-
console.log(`[verbose] Upload session created, ${buckets.length} bucket(s) to upload`);
|
|
209
|
+
deps.console.log(`[verbose] Upload session created, ${buckets.length} bucket(s) to upload`);
|
|
183
210
|
}
|
|
184
211
|
// If buckets is empty, all files already cached - sessionJwt serves as completion JWT
|
|
185
212
|
if (buckets.length === 0) {
|
|
186
|
-
console.log("All assets already cached");
|
|
213
|
+
deps.console.log("All assets already cached");
|
|
187
214
|
return sessionJwt;
|
|
188
215
|
}
|
|
189
216
|
// Step 2: Upload each bucket (with retry for transient Cloudflare errors)
|
|
@@ -191,17 +218,17 @@ async function uploadAssets(assets, verbose) {
|
|
|
191
218
|
for (const [i, bucket] of buckets.entries()) {
|
|
192
219
|
const bucketAssets = assets.filter((a) => bucket.includes(a.hash));
|
|
193
220
|
if (verbose) {
|
|
194
|
-
console.log(`[verbose] Uploading bucket ${i + 1}/${buckets.length} (${bucketAssets.length} files)`);
|
|
221
|
+
deps.console.log(`[verbose] Uploading bucket ${i + 1}/${buckets.length} (${bucketAssets.length} files)`);
|
|
195
222
|
}
|
|
196
223
|
else {
|
|
197
|
-
console.log(`Uploading assets: ${i + 1}/${buckets.length}`);
|
|
224
|
+
deps.console.log(`Uploading assets: ${i + 1}/${buckets.length}`);
|
|
198
225
|
}
|
|
199
226
|
const result = await withRetry(async () => {
|
|
200
227
|
// Create streaming multipart body (must be recreated on retry since streams are consumed)
|
|
201
228
|
const { stream } = createBucketUploadStream(bucketAssets);
|
|
202
229
|
// Convert Node stream to Web stream for fetch
|
|
203
230
|
const webStream = Readable.toWeb(stream);
|
|
204
|
-
const uploadRes = await platformFetch(`/project/${encodeURIComponent(projectName)}/deploy/assets/upload`, {
|
|
231
|
+
const uploadRes = await deps.platformFetch(`/project/${encodeURIComponent(projectName)}/deploy/assets/upload`, {
|
|
205
232
|
method: "POST",
|
|
206
233
|
headers: {
|
|
207
234
|
"Content-Type": "application/octet-stream",
|
|
@@ -234,11 +261,11 @@ async function uploadAssets(assets, verbose) {
|
|
|
234
261
|
* Deploy via the Fling platform (when logged in).
|
|
235
262
|
* Uses streaming upload for memory efficiency with large bundles.
|
|
236
263
|
*/
|
|
237
|
-
async function deployViaPlatform(projectDir, verbose
|
|
264
|
+
async function deployViaPlatform(projectDir, verbose, deps) {
|
|
238
265
|
// Get project name from local package.json (defaults to "default" for backwards compatibility)
|
|
239
|
-
const projectName = getProjectName(projectDir);
|
|
266
|
+
const projectName = deps.getProjectName(projectDir);
|
|
240
267
|
// Fetch user info (needed for asset hashing)
|
|
241
|
-
const meRes = await platformFetch("/me");
|
|
268
|
+
const meRes = await deps.platformFetch("/me");
|
|
242
269
|
if (!meRes.ok) {
|
|
243
270
|
throw new Error("Failed to fetch user info");
|
|
244
271
|
}
|
|
@@ -254,9 +281,9 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
254
281
|
// This is needed for path-based routing (private platforms)
|
|
255
282
|
if (!existingProject) {
|
|
256
283
|
if (verbose) {
|
|
257
|
-
console.log(`[verbose] Project ${projectName} doesn't exist, creating...`);
|
|
284
|
+
deps.console.log(`[verbose] Project ${projectName} doesn't exist, creating...`);
|
|
258
285
|
}
|
|
259
|
-
const createRes = await platformFetch(`/project/${encodeURIComponent(projectName)}`, {
|
|
286
|
+
const createRes = await deps.platformFetch(`/project/${encodeURIComponent(projectName)}`, {
|
|
260
287
|
method: "POST",
|
|
261
288
|
});
|
|
262
289
|
// 201 = created, 409 = already exists (both are fine)
|
|
@@ -265,7 +292,7 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
265
292
|
projectUrl = createData.url;
|
|
266
293
|
projectSlug = createData.slug;
|
|
267
294
|
if (verbose) {
|
|
268
|
-
console.log(`[verbose] Project ${createRes.status === 201 ? "created" : "exists"} with slug: ${projectSlug}`);
|
|
295
|
+
deps.console.log(`[verbose] Project ${createRes.status === 201 ? "created" : "exists"} with slug: ${projectSlug}`);
|
|
269
296
|
}
|
|
270
297
|
}
|
|
271
298
|
else {
|
|
@@ -279,7 +306,7 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
279
306
|
if (parsed.pathname !== "/" && parsed.pathname.startsWith(`/${projectSlug}`)) {
|
|
280
307
|
basePath = `/${projectSlug}/`;
|
|
281
308
|
if (verbose) {
|
|
282
|
-
console.log(`[verbose] Detected path-based routing, base: ${basePath}`);
|
|
309
|
+
deps.console.log(`[verbose] Detected path-based routing, base: ${basePath}`);
|
|
283
310
|
}
|
|
284
311
|
}
|
|
285
312
|
}
|
|
@@ -288,31 +315,31 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
288
315
|
}
|
|
289
316
|
}
|
|
290
317
|
// Step 1: Run Vite build
|
|
291
|
-
await runViteBuild(projectDir, verbose, basePath);
|
|
318
|
+
await runViteBuild(projectDir, verbose, deps, basePath);
|
|
292
319
|
// Step 2: Check for and upload static assets
|
|
293
320
|
const assetsDir = join(projectDir, "dist", "client");
|
|
294
321
|
let assetsJwt;
|
|
295
|
-
if (
|
|
296
|
-
const assets = await collectAssets(projectDir, userId, projectName);
|
|
322
|
+
if (deps.file.exists(assetsDir)) {
|
|
323
|
+
const assets = await deps.collectAssets(projectDir, userId, projectName);
|
|
297
324
|
if (assets.length > 0) {
|
|
298
|
-
assetsJwt = await uploadAssets(assets, verbose);
|
|
299
|
-
console.log(""); // Blank line before bundling
|
|
325
|
+
assetsJwt = await uploadAssets(assets, verbose, deps);
|
|
326
|
+
deps.console.log(""); // Blank line before bundling
|
|
300
327
|
}
|
|
301
328
|
}
|
|
302
329
|
// Step 3: Bundle the code
|
|
303
|
-
console.log("Bundling for platform deployment...\n");
|
|
330
|
+
deps.console.log("Bundling for platform deployment...\n");
|
|
304
331
|
if (verbose) {
|
|
305
|
-
console.log(
|
|
306
|
-
console.log("[verbose] Calling bundleForPlatform...");
|
|
332
|
+
deps.console.log(`[verbose] projectDir: ${projectDir}`);
|
|
333
|
+
deps.console.log("[verbose] Calling bundleForPlatform...");
|
|
307
334
|
}
|
|
308
|
-
const { code, cronSchedules, discordCommands, wasmModules } = await bundleForPlatform(projectDir, verbose);
|
|
335
|
+
const { code, cronSchedules, discordCommands, wasmModules } = await deps.bundleForPlatform(projectDir, verbose);
|
|
309
336
|
const sizeKB = code.length / 1024;
|
|
310
337
|
const sizeMB = sizeKB / 1024;
|
|
311
338
|
if (sizeMB >= 1) {
|
|
312
|
-
console.log(`Bundle size: ${sizeMB.toFixed(2)} MB`);
|
|
339
|
+
deps.console.log(`Bundle size: ${sizeMB.toFixed(2)} MB`);
|
|
313
340
|
}
|
|
314
341
|
else {
|
|
315
|
-
console.log(`Bundle size: ${sizeKB.toFixed(1)} KB`);
|
|
342
|
+
deps.console.log(`Bundle size: ${sizeKB.toFixed(1)} KB`);
|
|
316
343
|
}
|
|
317
344
|
// Display WASM modules if any
|
|
318
345
|
if (wasmModules.length > 0) {
|
|
@@ -320,39 +347,39 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
320
347
|
const wasmSizeKB = wasmTotalSize / 1024;
|
|
321
348
|
const wasmSizeMB = wasmSizeKB / 1024;
|
|
322
349
|
if (wasmSizeMB >= 1) {
|
|
323
|
-
console.log(`WASM modules: ${wasmModules.length} (${wasmSizeMB.toFixed(2)} MB)`);
|
|
350
|
+
deps.console.log(`WASM modules: ${wasmModules.length} (${wasmSizeMB.toFixed(2)} MB)`);
|
|
324
351
|
}
|
|
325
352
|
else {
|
|
326
|
-
console.log(`WASM modules: ${wasmModules.length} (${wasmSizeKB.toFixed(1)} KB)`);
|
|
353
|
+
deps.console.log(`WASM modules: ${wasmModules.length} (${wasmSizeKB.toFixed(1)} KB)`);
|
|
327
354
|
}
|
|
328
355
|
if (verbose) {
|
|
329
356
|
for (const mod of wasmModules) {
|
|
330
|
-
console.log(` ${mod.importPath} (${(mod.content.length / 1024).toFixed(1)} KB)`);
|
|
357
|
+
deps.console.log(` ${mod.importPath} (${(mod.content.length / 1024).toFixed(1)} KB)`);
|
|
331
358
|
}
|
|
332
359
|
}
|
|
333
360
|
}
|
|
334
361
|
// Display cron jobs if any
|
|
335
362
|
const cronCount = Object.keys(cronSchedules).length;
|
|
336
363
|
if (cronCount > 0) {
|
|
337
|
-
console.log(`Cron jobs: ${cronCount}`);
|
|
364
|
+
deps.console.log(`Cron jobs: ${cronCount}`);
|
|
338
365
|
if (verbose) {
|
|
339
366
|
for (const [name, schedule] of Object.entries(cronSchedules)) {
|
|
340
|
-
console.log(` ${name}: ${schedule}`);
|
|
367
|
+
deps.console.log(` ${name}: ${schedule}`);
|
|
341
368
|
}
|
|
342
369
|
}
|
|
343
370
|
}
|
|
344
371
|
// Display Discord commands if any
|
|
345
372
|
const discordCommandCount = discordCommands.length;
|
|
346
373
|
if (discordCommandCount > 0) {
|
|
347
|
-
console.log(`Discord commands: ${discordCommandCount}`);
|
|
374
|
+
deps.console.log(`Discord commands: ${discordCommandCount}`);
|
|
348
375
|
if (verbose) {
|
|
349
376
|
for (const cmd of discordCommands) {
|
|
350
|
-
console.log(` /${cmd.name}: ${cmd.description}`);
|
|
377
|
+
deps.console.log(` /${cmd.name}: ${cmd.description}`);
|
|
351
378
|
}
|
|
352
379
|
}
|
|
353
380
|
}
|
|
354
381
|
// Step 4: Deploy via API
|
|
355
|
-
console.log("\nDeploying to Fling platform...\n");
|
|
382
|
+
deps.console.log("\nDeploying to Fling platform...\n");
|
|
356
383
|
let response;
|
|
357
384
|
if (wasmModules.length > 0) {
|
|
358
385
|
// New format: multi-part deployment with WASM modules
|
|
@@ -389,10 +416,10 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
389
416
|
headers["X-Cron-Schedules"] = JSON.stringify(cronSchedules);
|
|
390
417
|
}
|
|
391
418
|
if (verbose) {
|
|
392
|
-
console.log("[verbose] Using multi-part deployment with WASM");
|
|
393
|
-
console.log(
|
|
419
|
+
deps.console.log("[verbose] Using multi-part deployment with WASM");
|
|
420
|
+
deps.console.log(`[verbose] X-Deploy-Parts: ${partsHeader}`);
|
|
394
421
|
}
|
|
395
|
-
response = await platformFetch(`/project/${encodeURIComponent(projectName)}/deploy`, {
|
|
422
|
+
response = await deps.platformFetch(`/project/${encodeURIComponent(projectName)}/deploy`, {
|
|
396
423
|
method: "POST",
|
|
397
424
|
headers,
|
|
398
425
|
body,
|
|
@@ -412,7 +439,7 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
412
439
|
if (cronCount > 0) {
|
|
413
440
|
headers["X-Cron-Schedules"] = JSON.stringify(cronSchedules);
|
|
414
441
|
}
|
|
415
|
-
response = await platformFetch(`/project/${encodeURIComponent(projectName)}/deploy`, {
|
|
442
|
+
response = await deps.platformFetch(`/project/${encodeURIComponent(projectName)}/deploy`, {
|
|
416
443
|
method: "POST",
|
|
417
444
|
headers,
|
|
418
445
|
body: code,
|
|
@@ -422,25 +449,25 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
422
449
|
if (!response.ok) {
|
|
423
450
|
throw new Error(data.error ?? "Deployment failed");
|
|
424
451
|
}
|
|
425
|
-
console.log("Deployed successfully!");
|
|
426
|
-
console.log(`URL: ${data.url}`);
|
|
427
|
-
console.log(`Version: ${data.version}`);
|
|
428
|
-
console.log("");
|
|
452
|
+
deps.console.log("Deployed successfully!");
|
|
453
|
+
deps.console.log(`URL: ${data.url}`);
|
|
454
|
+
deps.console.log(`Version: ${data.version}`);
|
|
455
|
+
deps.console.log("");
|
|
429
456
|
// Show tip about customizing slug on first deploy or for auto-generated slugs
|
|
430
457
|
const urlSlug = data.url?.split("//")[1]?.split(".")[0];
|
|
431
458
|
const isAutoGeneratedSlug = urlSlug?.startsWith("proj-");
|
|
432
459
|
const isFirstDeploy = data.version === 1;
|
|
433
460
|
if (isFirstDeploy || isAutoGeneratedSlug) {
|
|
434
|
-
console.log("Tip: Want a custom URL? Run: fling project slug:set my-custom-slug");
|
|
435
|
-
console.log("");
|
|
461
|
+
deps.console.log("Tip: Want a custom URL? Run: fling project slug:set my-custom-slug");
|
|
462
|
+
deps.console.log("");
|
|
436
463
|
}
|
|
437
464
|
// Step 5: Sync Discord commands if any
|
|
438
465
|
if (discordCommands.length > 0) {
|
|
439
466
|
if (verbose) {
|
|
440
|
-
console.log("[verbose] Syncing Discord commands...");
|
|
467
|
+
deps.console.log("[verbose] Syncing Discord commands...");
|
|
441
468
|
}
|
|
442
469
|
try {
|
|
443
|
-
const syncRes = await platformFetch("/discord/commands/sync", {
|
|
470
|
+
const syncRes = await deps.platformFetch("/discord/commands/sync", {
|
|
444
471
|
method: "POST",
|
|
445
472
|
headers: { "Content-Type": "application/json" },
|
|
446
473
|
body: JSON.stringify({ commands: discordCommands }),
|
|
@@ -448,32 +475,82 @@ async function deployViaPlatform(projectDir, verbose = false) {
|
|
|
448
475
|
if (syncRes.ok) {
|
|
449
476
|
const syncData = (await syncRes.json());
|
|
450
477
|
if (syncData.synced > 0) {
|
|
451
|
-
console.log(`Discord commands synced to ${syncData.synced} server(s)`);
|
|
478
|
+
deps.console.log(`Discord commands synced to ${syncData.synced} server(s)`);
|
|
452
479
|
}
|
|
453
480
|
if (syncData.errors && syncData.errors.length > 0) {
|
|
454
|
-
console.warn("Discord sync warnings:");
|
|
481
|
+
deps.console.warn("Discord sync warnings:");
|
|
455
482
|
for (const err of syncData.errors) {
|
|
456
|
-
console.warn(` - ${err}`);
|
|
483
|
+
deps.console.warn(` - ${err}`);
|
|
457
484
|
}
|
|
458
485
|
}
|
|
459
|
-
console.log("");
|
|
486
|
+
deps.console.log("");
|
|
460
487
|
}
|
|
461
488
|
else if (syncRes.status !== 401 && syncRes.status !== 503) {
|
|
462
489
|
// Only warn if it's not a "Discord not configured" error
|
|
463
490
|
const syncErr = (await syncRes.json());
|
|
464
|
-
console.warn(`Discord command sync warning: ${syncErr.error ?? "Unknown error"}`);
|
|
465
|
-
console.log("");
|
|
491
|
+
deps.console.warn(`Discord command sync warning: ${syncErr.error ?? "Unknown error"}`);
|
|
492
|
+
deps.console.log("");
|
|
466
493
|
}
|
|
467
494
|
}
|
|
468
495
|
catch (err) {
|
|
469
496
|
// Skip Discord sync errors - plugin may not be installed
|
|
470
497
|
if (verbose) {
|
|
471
|
-
console.log(`[verbose] Discord sync skipped: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
498
|
+
deps.console.log(`[verbose] Discord sync skipped: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
472
499
|
}
|
|
473
500
|
}
|
|
474
501
|
}
|
|
475
502
|
// Step 6: Sync secrets to production
|
|
476
|
-
await syncSecrets(verbose);
|
|
503
|
+
await syncSecrets(verbose, deps);
|
|
504
|
+
}
|
|
505
|
+
/**
|
|
506
|
+
* Run the push command.
|
|
507
|
+
* Exported for testing with injected dependencies.
|
|
508
|
+
*/
|
|
509
|
+
export async function runPush(options, deps = defaultPushDeps) {
|
|
510
|
+
const verbose = options.verbose ?? false;
|
|
511
|
+
if (verbose) {
|
|
512
|
+
deps.console.log("[verbose] Starting push command");
|
|
513
|
+
deps.console.log(`[verbose] __dirname: ${__dirname}`);
|
|
514
|
+
deps.console.log(`[verbose] process.cwd(): ${deps.process.cwd()}`);
|
|
515
|
+
deps.console.log(`[verbose] isLoggedIn: ${deps.isLoggedIn()}`);
|
|
516
|
+
}
|
|
517
|
+
const cwd = deps.process.cwd();
|
|
518
|
+
// Check if project is initialized
|
|
519
|
+
if (!deps.file.exists(join(cwd, ".fling"))) {
|
|
520
|
+
deps.console.error("Error: Not a Fling project. Run 'fling init' first.");
|
|
521
|
+
deps.process.exit(1);
|
|
522
|
+
}
|
|
523
|
+
// Check for worker entry point
|
|
524
|
+
if (!deps.hasWorkerEntry(cwd)) {
|
|
525
|
+
deps.console.error("Error: src/worker/index.ts not found.\n");
|
|
526
|
+
deps.console.error("This file is your backend API entry point.");
|
|
527
|
+
deps.console.error("Run 'fling init' to create a new project with the correct structure.");
|
|
528
|
+
deps.process.exit(1);
|
|
529
|
+
}
|
|
530
|
+
// Must be logged in to deploy
|
|
531
|
+
if (!deps.isLoggedIn()) {
|
|
532
|
+
deps.console.error("Error: Not logged in.\n");
|
|
533
|
+
deps.console.error("To deploy, you need to authenticate first.\n");
|
|
534
|
+
deps.console.error("Options:");
|
|
535
|
+
deps.console.error(" fling onboard Interactive setup (recommended)");
|
|
536
|
+
deps.console.error(" fling login <token> If you have an API token");
|
|
537
|
+
deps.console.error(" fling register <invite> If you have an invite link\n");
|
|
538
|
+
deps.console.error("Don't have credentials? Contact Fling to get an invite.");
|
|
539
|
+
deps.process.exit(1);
|
|
540
|
+
}
|
|
541
|
+
try {
|
|
542
|
+
if (verbose)
|
|
543
|
+
deps.console.log("[verbose] Using platform deployment");
|
|
544
|
+
await deployViaPlatform(cwd, verbose, deps);
|
|
545
|
+
// Check for CLI updates (non-blocking, failures are silent)
|
|
546
|
+
await deps.checkForUpdates(verbose, deps.createVersionCheckDeps());
|
|
547
|
+
}
|
|
548
|
+
catch (error) {
|
|
549
|
+
deps.console.error(`Deployment failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
550
|
+
if (verbose)
|
|
551
|
+
deps.console.error(`[verbose] Full error: ${error instanceof Error ? error.stack : String(error)}`);
|
|
552
|
+
deps.process.exit(1);
|
|
553
|
+
}
|
|
477
554
|
}
|
|
478
555
|
export const pushCommand = new Command("push")
|
|
479
556
|
.description("Bundle and deploy your project to Cloudflare Workers")
|
|
@@ -504,49 +581,6 @@ Examples:
|
|
|
504
581
|
fling push --verbose Deploy with detailed output
|
|
505
582
|
`)
|
|
506
583
|
.action(async (options) => {
|
|
507
|
-
|
|
508
|
-
if (verbose) {
|
|
509
|
-
console.log("[verbose] Starting push command");
|
|
510
|
-
console.log("[verbose] __dirname:", __dirname);
|
|
511
|
-
console.log("[verbose] process.cwd():", process.cwd());
|
|
512
|
-
console.log("[verbose] isLoggedIn:", isLoggedIn());
|
|
513
|
-
}
|
|
514
|
-
const cwd = process.cwd();
|
|
515
|
-
// Check if project is initialized
|
|
516
|
-
if (!existsSync(join(cwd, ".fling"))) {
|
|
517
|
-
console.error("Error: Not a Fling project. Run 'fling init' first.");
|
|
518
|
-
process.exit(1);
|
|
519
|
-
}
|
|
520
|
-
// Check for worker entry point
|
|
521
|
-
if (!hasWorkerEntry(cwd)) {
|
|
522
|
-
console.error("Error: src/worker/index.ts not found.\n");
|
|
523
|
-
console.error("This file is your backend API entry point.");
|
|
524
|
-
console.error("Run 'fling init' to create a new project with the correct structure.");
|
|
525
|
-
process.exit(1);
|
|
526
|
-
}
|
|
527
|
-
// Must be logged in to deploy
|
|
528
|
-
if (!isLoggedIn()) {
|
|
529
|
-
console.error("Error: Not logged in.\n");
|
|
530
|
-
console.error("To deploy, you need to authenticate first.\n");
|
|
531
|
-
console.error("Options:");
|
|
532
|
-
console.error(" fling onboard Interactive setup (recommended)");
|
|
533
|
-
console.error(" fling login <token> If you have an API token");
|
|
534
|
-
console.error(" fling register <invite> If you have an invite link\n");
|
|
535
|
-
console.error("Don't have credentials? Contact Fling to get an invite.");
|
|
536
|
-
process.exit(1);
|
|
537
|
-
}
|
|
538
|
-
try {
|
|
539
|
-
if (verbose)
|
|
540
|
-
console.log("[verbose] Using platform deployment");
|
|
541
|
-
await deployViaPlatform(cwd, verbose);
|
|
542
|
-
// Check for CLI updates (non-blocking, failures are silent)
|
|
543
|
-
await checkForUpdates(verbose, createVersionCheckDeps());
|
|
544
|
-
}
|
|
545
|
-
catch (error) {
|
|
546
|
-
console.error("Deployment failed:", error.message);
|
|
547
|
-
if (verbose)
|
|
548
|
-
console.error("[verbose] Full error:", error);
|
|
549
|
-
process.exit(1);
|
|
550
|
-
}
|
|
584
|
+
await runPush(options);
|
|
551
585
|
});
|
|
552
586
|
//# sourceMappingURL=push.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/cli/commands/push.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/cli/commands/push.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,7 +55,7 @@ Getting an invite token:
|
|
|
55
55
|
What it does:
|
|
56
56
|
- Creates a new Fling account with your email and name
|
|
57
57
|
- Creates your first project with an auto-generated slug (e.g. proj-abc123)
|
|
58
|
-
- Logs you in automatically (stores token in ~/.fling/token)
|
|
58
|
+
- Logs you in automatically (stores token in ~/.config/fling/token)
|
|
59
59
|
|
|
60
60
|
Non-interactive mode (for CI/scripts):
|
|
61
61
|
Provide --email and --name to skip all prompts.
|