@prisma/compute-sdk 0.18.0 → 0.20.0
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/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +24 -8
- package/dist/api-client.js.map +1 -1
- package/dist/archive.d.ts +1 -1
- package/dist/archive.d.ts.map +1 -1
- package/dist/archive.js +34 -15
- package/dist/archive.js.map +1 -1
- package/dist/astro-build.d.ts +2 -2
- package/dist/astro-build.d.ts.map +1 -1
- package/dist/astro-build.js +6 -4
- package/dist/astro-build.js.map +1 -1
- package/dist/auto-build.d.ts +2 -2
- package/dist/auto-build.d.ts.map +1 -1
- package/dist/auto-build.js +7 -5
- package/dist/auto-build.js.map +1 -1
- package/dist/build-strategy.d.ts +7 -6
- package/dist/build-strategy.d.ts.map +1 -1
- package/dist/build-strategy.js +11 -7
- package/dist/build-strategy.js.map +1 -1
- package/dist/bun-build.d.ts +2 -2
- package/dist/bun-build.d.ts.map +1 -1
- package/dist/bun-build.js +9 -7
- package/dist/bun-build.js.map +1 -1
- package/dist/compute-client.d.ts.map +1 -1
- package/dist/compute-client.js +16 -9
- package/dist/compute-client.js.map +1 -1
- package/dist/nextjs-build.d.ts +2 -2
- package/dist/nextjs-build.d.ts.map +1 -1
- package/dist/nextjs-build.js +58 -8
- package/dist/nextjs-build.js.map +1 -1
- package/dist/nuxt-build.d.ts +2 -2
- package/dist/nuxt-build.d.ts.map +1 -1
- package/dist/nuxt-build.js +6 -4
- package/dist/nuxt-build.js.map +1 -1
- package/dist/tanstack-start-build.d.ts +2 -2
- package/dist/tanstack-start-build.d.ts.map +1 -1
- package/dist/tanstack-start-build.js +5 -3
- package/dist/tanstack-start-build.js.map +1 -1
- package/package.json +1 -1
- package/src/api-client.ts +24 -8
- package/src/archive.ts +42 -10
- package/src/astro-build.ts +6 -4
- package/src/auto-build.ts +7 -5
- package/src/build-strategy.ts +14 -6
- package/src/bun-build.ts +13 -6
- package/src/compute-client.ts +21 -12
- package/src/nextjs-build.ts +74 -8
- package/src/nuxt-build.ts +6 -4
- package/src/tanstack-start-build.ts +5 -3
package/dist/api-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE5E,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,mBAAmB,GAAG,QAAQ,CAAC;AAE7E;;;;;;GAMG;AACH,qBAAa,iBAAiB;;gBAGhB,MAAM,EAAE,mBAAmB;IAIjC,YAAY,CAAC,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;;;;IAYjC,aAAa,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
|
package/dist/api-client.js
CHANGED
|
@@ -19,9 +19,11 @@ export class InternalApiClient {
|
|
|
19
19
|
}), "/v1/projects", signal);
|
|
20
20
|
}
|
|
21
21
|
async createProject(body, signal) {
|
|
22
|
+
signal?.throwIfAborted();
|
|
22
23
|
return this.#request(this.#client.POST("/v1/projects", {
|
|
23
24
|
body: body,
|
|
24
|
-
|
|
25
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
26
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
25
27
|
}), "/v1/projects", signal).then((r) => r.map((body) => body.data));
|
|
26
28
|
}
|
|
27
29
|
async getProject(id, signal) {
|
|
@@ -37,10 +39,12 @@ export class InternalApiClient {
|
|
|
37
39
|
}), "/v1/projects/{projectId}/compute-services", signal);
|
|
38
40
|
}
|
|
39
41
|
async createProjectService(projectId, body, signal) {
|
|
42
|
+
signal?.throwIfAborted();
|
|
40
43
|
return this.#request(this.#client.POST("/v1/projects/{projectId}/compute-services", {
|
|
41
44
|
params: { path: { projectId } },
|
|
42
45
|
body: body,
|
|
43
|
-
|
|
46
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
47
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
44
48
|
}), "/v1/projects/{projectId}/compute-services", signal).then((r) => r.map((body) => body.data));
|
|
45
49
|
}
|
|
46
50
|
async getService(computeServiceId, signal) {
|
|
@@ -50,9 +54,11 @@ export class InternalApiClient {
|
|
|
50
54
|
}), "/v1/compute-services/{computeServiceId}", signal).then((r) => r.map((body) => body.data));
|
|
51
55
|
}
|
|
52
56
|
async deleteService(computeServiceId, signal) {
|
|
57
|
+
signal?.throwIfAborted();
|
|
53
58
|
return this.#unwrapVoid(this.#client.DELETE("/v1/compute-services/{computeServiceId}", {
|
|
54
59
|
params: { path: { computeServiceId } },
|
|
55
|
-
|
|
60
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
61
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
56
62
|
}), signal);
|
|
57
63
|
}
|
|
58
64
|
async listServiceVersions(computeServiceId, signal) {
|
|
@@ -65,10 +71,12 @@ export class InternalApiClient {
|
|
|
65
71
|
}), "/v1/compute-services/{computeServiceId}/versions", signal);
|
|
66
72
|
}
|
|
67
73
|
async createServiceVersion(computeServiceId, body, signal) {
|
|
74
|
+
signal?.throwIfAborted();
|
|
68
75
|
return this.#request(this.#client.POST("/v1/compute-services/{computeServiceId}/versions", {
|
|
69
76
|
params: { path: { computeServiceId } },
|
|
70
77
|
body,
|
|
71
|
-
|
|
78
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
79
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
72
80
|
}), "/v1/compute-services/{computeServiceId}/versions", signal).then((r) => r.map((body) => body.data));
|
|
73
81
|
}
|
|
74
82
|
async getVersion(versionId, signal) {
|
|
@@ -78,28 +86,36 @@ export class InternalApiClient {
|
|
|
78
86
|
}), "/v1/compute-services/versions/{versionId}", signal).then((r) => r.map((body) => body.data));
|
|
79
87
|
}
|
|
80
88
|
async startVersion(versionId, signal) {
|
|
89
|
+
signal?.throwIfAborted();
|
|
81
90
|
return this.#request(this.#client.POST("/v1/compute-services/versions/{versionId}/start", {
|
|
82
91
|
params: { path: { versionId } },
|
|
83
|
-
|
|
92
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
93
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
84
94
|
}), "/v1/compute-services/versions/{versionId}/start", signal).then((r) => r.map((body) => body.data));
|
|
85
95
|
}
|
|
86
96
|
async stopVersion(versionId, signal) {
|
|
97
|
+
signal?.throwIfAborted();
|
|
87
98
|
return this.#unwrapVoid(this.#client.POST("/v1/compute-services/versions/{versionId}/stop", {
|
|
88
99
|
params: { path: { versionId } },
|
|
89
|
-
|
|
100
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
101
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
90
102
|
}), signal);
|
|
91
103
|
}
|
|
92
104
|
async deleteVersion(versionId, signal) {
|
|
105
|
+
signal?.throwIfAborted();
|
|
93
106
|
return this.#unwrapVoid(this.#client.DELETE("/v1/compute-services/versions/{versionId}", {
|
|
94
107
|
params: { path: { versionId } },
|
|
95
|
-
|
|
108
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
109
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
96
110
|
}), signal);
|
|
97
111
|
}
|
|
98
112
|
async promoteService(computeServiceId, body, signal) {
|
|
113
|
+
signal?.throwIfAborted();
|
|
99
114
|
return this.#request(this.#client.POST("/v1/compute-services/{computeServiceId}/promote", {
|
|
100
115
|
params: { path: { computeServiceId } },
|
|
101
116
|
body,
|
|
102
|
-
|
|
117
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
118
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
103
119
|
}), "/v1/compute-services/{computeServiceId}/promote", signal).then((r) => r.map((body) => body.data));
|
|
104
120
|
}
|
|
105
121
|
async #request(request, endpoint, signal) {
|
package/dist/api-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI5E;;;;;;GAMG;AACH,MAAM,OAAO,iBAAiB;IACnB,OAAO,CAAsB;IAEtC,YAAY,MAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAoB;QACrC,OAAO,IAAI,CAAC,iBAAiB,CAC3B,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;YAC/B,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3C,MAAM;SACP,CAAC,EACJ,cAAc,EACd,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAuB,EAAE,MAAoB;QAC/D,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;YAChC,IAAI,EAAE,IAA4B;YAClC,
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
|
package/dist/archive.d.ts
CHANGED
|
@@ -7,5 +7,5 @@
|
|
|
7
7
|
*
|
|
8
8
|
* Returns the gzipped archive as a Uint8Array.
|
|
9
9
|
*/
|
|
10
|
-
export declare function createArchive(directory: string, entrypoint: string): Promise<Uint8Array>;
|
|
10
|
+
export declare function createArchive(directory: string, entrypoint: string, signal?: AbortSignal): Promise<Uint8Array>;
|
|
11
11
|
//# sourceMappingURL=archive.d.ts.map
|
package/dist/archive.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AAOA;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AAOA;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAwBrB"}
|
package/dist/archive.js
CHANGED
|
@@ -12,11 +12,12 @@ const COMPUTE_MANIFEST_VERSION = "1";
|
|
|
12
12
|
*
|
|
13
13
|
* Returns the gzipped archive as a Uint8Array.
|
|
14
14
|
*/
|
|
15
|
-
export async function createArchive(directory, entrypoint) {
|
|
15
|
+
export async function createArchive(directory, entrypoint, signal) {
|
|
16
|
+
signal?.throwIfAborted();
|
|
16
17
|
const packer = pack();
|
|
17
18
|
const rootPath = path.resolve(directory);
|
|
18
19
|
// Walk the directory and add all files
|
|
19
|
-
await addDirectory(packer, rootPath, rootPath, "bundle");
|
|
20
|
+
await addDirectory(packer, rootPath, rootPath, "bundle", signal);
|
|
20
21
|
// Inject the manifest as a synthetic entry
|
|
21
22
|
const manifest = JSON.stringify({
|
|
22
23
|
manifestVersion: COMPUTE_MANIFEST_VERSION,
|
|
@@ -26,28 +27,31 @@ export async function createArchive(directory, entrypoint) {
|
|
|
26
27
|
// Signal end of archive
|
|
27
28
|
packer.finalize();
|
|
28
29
|
// Pipe through gzip and collect into buffer
|
|
29
|
-
return await collectGzipped(packer);
|
|
30
|
+
return await collectGzipped(packer, signal);
|
|
30
31
|
}
|
|
31
|
-
async function addDirectory(packer, rootPath, fsPath, tarPrefix) {
|
|
32
|
+
async function addDirectory(packer, rootPath, fsPath, tarPrefix, signal) {
|
|
33
|
+
signal?.throwIfAborted();
|
|
32
34
|
const directoryPath = resolvePathWithinRoot(rootPath, fsPath);
|
|
33
35
|
const entries = await readdir(directoryPath, { withFileTypes: true });
|
|
34
36
|
for (const entry of entries) {
|
|
37
|
+
signal?.throwIfAborted();
|
|
35
38
|
const fullPath = path.join(directoryPath, entry.name);
|
|
36
39
|
const tarPath = `${tarPrefix}/${entry.name}`;
|
|
37
40
|
if (entry.isSymbolicLink()) {
|
|
38
41
|
const linkStat = await lstat(fullPath);
|
|
39
|
-
await addSymlink(packer, rootPath, fullPath, tarPath, linkStat);
|
|
42
|
+
await addSymlink(packer, rootPath, fullPath, tarPath, linkStat, signal);
|
|
40
43
|
}
|
|
41
44
|
else if (entry.isDirectory()) {
|
|
42
|
-
await addDirectory(packer, rootPath, fullPath, tarPath);
|
|
45
|
+
await addDirectory(packer, rootPath, fullPath, tarPath, signal);
|
|
43
46
|
}
|
|
44
47
|
else if (entry.isFile()) {
|
|
45
48
|
const fileStat = await lstat(fullPath);
|
|
46
|
-
await addFile(packer, rootPath, fullPath, tarPath, fileStat);
|
|
49
|
+
await addFile(packer, rootPath, fullPath, tarPath, fileStat, signal);
|
|
47
50
|
}
|
|
48
51
|
}
|
|
49
52
|
}
|
|
50
|
-
async function addFile(packer, rootPath, fsPath, tarPath, fileStat) {
|
|
53
|
+
async function addFile(packer, rootPath, fsPath, tarPath, fileStat, signal) {
|
|
54
|
+
signal?.throwIfAborted();
|
|
51
55
|
const filePath = resolvePathWithinRoot(rootPath, fsPath);
|
|
52
56
|
const content = await readFile(filePath);
|
|
53
57
|
packer.entry({
|
|
@@ -57,10 +61,11 @@ async function addFile(packer, rootPath, fsPath, tarPath, fileStat) {
|
|
|
57
61
|
mtime: fileStat.mtime,
|
|
58
62
|
}, content);
|
|
59
63
|
}
|
|
60
|
-
async function addSymlink(packer, rootPath, fsPath, tarPath, linkStat) {
|
|
64
|
+
async function addSymlink(packer, rootPath, fsPath, tarPath, linkStat, signal) {
|
|
65
|
+
signal?.throwIfAborted();
|
|
61
66
|
const symlinkPath = resolvePathWithinRoot(rootPath, fsPath);
|
|
62
67
|
const target = await readlink(symlinkPath);
|
|
63
|
-
const linkname = await resolveArchiveSymlinkTarget(rootPath, symlinkPath, target);
|
|
68
|
+
const linkname = await resolveArchiveSymlinkTarget(rootPath, symlinkPath, target, signal);
|
|
64
69
|
packer.entry({
|
|
65
70
|
name: tarPath,
|
|
66
71
|
type: "symlink",
|
|
@@ -69,7 +74,8 @@ async function addSymlink(packer, rootPath, fsPath, tarPath, linkStat) {
|
|
|
69
74
|
mtime: linkStat.mtime,
|
|
70
75
|
});
|
|
71
76
|
}
|
|
72
|
-
async function resolveArchiveSymlinkTarget(rootPath, symlinkPath, target) {
|
|
77
|
+
async function resolveArchiveSymlinkTarget(rootPath, symlinkPath, target, signal) {
|
|
78
|
+
signal?.throwIfAborted();
|
|
73
79
|
const symlinkDir = path.dirname(symlinkPath);
|
|
74
80
|
const resolvedTarget = resolvePathWithinRoot(rootPath, path.isAbsolute(target) ? target : path.resolve(symlinkDir, target));
|
|
75
81
|
await lstat(resolvedTarget).catch((error) => {
|
|
@@ -99,10 +105,20 @@ function resolvePathWithinRoot(rootPath, fsPath) {
|
|
|
99
105
|
}
|
|
100
106
|
return resolvedPath;
|
|
101
107
|
}
|
|
102
|
-
function collectGzipped(packer) {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
108
|
+
function collectGzipped(packer, signal) {
|
|
109
|
+
signal?.throwIfAborted();
|
|
110
|
+
const chunks = [];
|
|
111
|
+
const gzip = createGzip();
|
|
112
|
+
const onAbort = () => {
|
|
113
|
+
// AbortSignal.abort() sets signal.reason; fallback keeps a stream error path if a non-standard signal omits it.
|
|
114
|
+
const abortError = signal?.reason instanceof Error
|
|
115
|
+
? signal.reason
|
|
116
|
+
: new DOMException("The operation was aborted", "AbortError");
|
|
117
|
+
gzip.destroy(abortError);
|
|
118
|
+
packer.destroy(abortError);
|
|
119
|
+
};
|
|
120
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
121
|
+
const promise = new Promise((resolve, reject) => {
|
|
106
122
|
packer.pipe(gzip);
|
|
107
123
|
gzip.on("data", (chunk) => {
|
|
108
124
|
chunks.push(chunk);
|
|
@@ -113,5 +129,8 @@ function collectGzipped(packer) {
|
|
|
113
129
|
gzip.on("error", reject);
|
|
114
130
|
packer.on("error", reject);
|
|
115
131
|
});
|
|
132
|
+
return promise.finally(() => {
|
|
133
|
+
signal?.removeEventListener("abort", onAbort);
|
|
134
|
+
});
|
|
116
135
|
}
|
|
117
136
|
//# sourceMappingURL=archive.js.map
|
package/dist/archive.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAa,IAAI,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,wBAAwB,GAAG,GAAY,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAiB,EACjB,UAAkB;
|
|
1
|
+
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"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"}
|
package/dist/astro-build.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export declare class AstroBuild implements BuildStrategy {
|
|
|
8
8
|
constructor(options: {
|
|
9
9
|
appPath: string;
|
|
10
10
|
});
|
|
11
|
-
canBuild(): Promise<boolean>;
|
|
12
|
-
execute(): Promise<BuildArtifact>;
|
|
11
|
+
canBuild(signal?: AbortSignal): Promise<boolean>;
|
|
12
|
+
execute(signal?: AbortSignal): Promise<BuildArtifact>;
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=astro-build.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"astro-build.d.ts","sourceRoot":"","sources":["../src/astro-build.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAexE;;;GAGG;AACH,qBAAa,UAAW,YAAW,aAAa;;gBAGlC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;IAIlC,QAAQ,
|
|
1
|
+
{"version":3,"file":"astro-build.d.ts","sourceRoot":"","sources":["../src/astro-build.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAexE;;;GAGG;AACH,qBAAa,UAAW,YAAW,aAAa;;gBAGlC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;IAIlC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAOhD,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAyC5D"}
|
package/dist/astro-build.js
CHANGED
|
@@ -18,17 +18,19 @@ export class AstroBuild {
|
|
|
18
18
|
constructor(options) {
|
|
19
19
|
this.#appPath = options.appPath;
|
|
20
20
|
}
|
|
21
|
-
async canBuild() {
|
|
22
|
-
return ((await hasRootFile(this.#appPath, ASTRO_CONFIG_FILENAMES)) ||
|
|
23
|
-
(await hasPackageDependency(this.#appPath, ["astro"])));
|
|
21
|
+
async canBuild(signal) {
|
|
22
|
+
return ((await hasRootFile(this.#appPath, ASTRO_CONFIG_FILENAMES, signal)) ||
|
|
23
|
+
(await hasPackageDependency(this.#appPath, ["astro"], signal)));
|
|
24
24
|
}
|
|
25
|
-
async execute() {
|
|
25
|
+
async execute(signal) {
|
|
26
|
+
signal?.throwIfAborted();
|
|
26
27
|
await runPackageCli({
|
|
27
28
|
appPath: this.#appPath,
|
|
28
29
|
cliName: "astro",
|
|
29
30
|
args: ["build"],
|
|
30
31
|
failurePrefix: "Astro",
|
|
31
32
|
missingMessage: "Could not find the Astro CLI. Install it with `npm install astro` or ensure npx/bunx is available.",
|
|
33
|
+
signal,
|
|
32
34
|
});
|
|
33
35
|
const distDir = path.join(this.#appPath, "dist");
|
|
34
36
|
const entryPath = path.join(distDir, "server", "entry.mjs");
|
package/dist/astro-build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"astro-build.js","sourceRoot":"","sources":["../src/astro-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,aAAa,GACd,MAAM,qBAAqB,CAAC;AAE7B,MAAM,sBAAsB,GAAG;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,iBAAiB;IACjB,kBAAkB;CACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,UAAU;IACZ,QAAQ,CAAS;IAE1B,YAAY,OAA4B;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"astro-build.js","sourceRoot":"","sources":["../src/astro-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,aAAa,GACd,MAAM,qBAAqB,CAAC;AAE7B,MAAM,sBAAsB,GAAG;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,iBAAiB;IACjB,kBAAkB;CACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,UAAU;IACZ,QAAQ,CAAS;IAE1B,YAAY,OAA4B;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAoB;QACjC,OAAO,CACL,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,CAAC,CAAC;YAClE,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAC/D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAoB;QAChC,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,MAAM,aAAa,CAAC;YAClB,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,CAAC,OAAO,CAAC;YACf,aAAa,EAAE,OAAO;YACtB,cAAc,EACZ,oGAAoG;YACtG,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,0KAA0K,CAC3K,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAEvE,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7C,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE;gBAC7B,SAAS,EAAE,IAAI;gBACf,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAC;YAEH,OAAO;gBACL,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,kBAAkB;gBAC9B,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;gBAClC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;aAC5D,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACnD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|
package/dist/auto-build.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare class AutoBuild implements BuildStrategy {
|
|
|
9
9
|
appPath: string;
|
|
10
10
|
entrypoint?: string;
|
|
11
11
|
});
|
|
12
|
-
canBuild(): Promise<boolean>;
|
|
13
|
-
execute(): Promise<BuildArtifact>;
|
|
12
|
+
canBuild(signal?: AbortSignal): Promise<boolean>;
|
|
13
|
+
execute(signal?: AbortSignal): Promise<BuildArtifact>;
|
|
14
14
|
}
|
|
15
15
|
//# sourceMappingURL=auto-build.d.ts.map
|
package/dist/auto-build.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-build.d.ts","sourceRoot":"","sources":["../src/auto-build.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMxE;;;GAGG;AACH,qBAAa,SAAU,YAAW,aAAa;;gBAGjC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAavD,QAAQ,
|
|
1
|
+
{"version":3,"file":"auto-build.d.ts","sourceRoot":"","sources":["../src/auto-build.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMxE;;;GAGG;AACH,qBAAa,SAAU,YAAW,aAAa;;gBAGjC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAavD,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAUhD,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAS5D"}
|
package/dist/auto-build.js
CHANGED
|
@@ -21,18 +21,20 @@ export class AutoBuild {
|
|
|
21
21
|
}),
|
|
22
22
|
];
|
|
23
23
|
}
|
|
24
|
-
async canBuild() {
|
|
24
|
+
async canBuild(signal) {
|
|
25
25
|
for (const strategy of this.#strategies) {
|
|
26
|
-
|
|
26
|
+
signal?.throwIfAborted();
|
|
27
|
+
if (await strategy.canBuild(signal)) {
|
|
27
28
|
return true;
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
return false;
|
|
31
32
|
}
|
|
32
|
-
async execute() {
|
|
33
|
+
async execute(signal) {
|
|
33
34
|
for (const strategy of this.#strategies) {
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
signal?.throwIfAborted();
|
|
36
|
+
if (await strategy.canBuild(signal)) {
|
|
37
|
+
return strategy.execute(signal);
|
|
36
38
|
}
|
|
37
39
|
}
|
|
38
40
|
throw new Error("No suitable build strategy found for this application");
|
package/dist/auto-build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-build.js","sourceRoot":"","sources":["../src/auto-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;;GAGG;AACH,MAAM,OAAO,SAAS;IACX,WAAW,CAAkB;IAEtC,YAAY,OAAiD;QAC3D,IAAI,CAAC,WAAW,GAAG;YACjB,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3C,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC5C,IAAI,kBAAkB,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YACpD,IAAI,QAAQ,CAAC;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"auto-build.js","sourceRoot":"","sources":["../src/auto-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;;GAGG;AACH,MAAM,OAAO,SAAS;IACX,WAAW,CAAkB;IAEtC,YAAY,OAAiD;QAC3D,IAAI,CAAC,WAAW,GAAG;YACjB,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3C,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC5C,IAAI,kBAAkB,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YACpD,IAAI,QAAQ,CAAC;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAoB;QACjC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,IAAI,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAoB;QAChC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,IAAI,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;CACF"}
|
package/dist/build-strategy.d.ts
CHANGED
|
@@ -24,8 +24,8 @@ export interface BuildArtifact {
|
|
|
24
24
|
* A build strategy produces a deployable artifact.
|
|
25
25
|
*/
|
|
26
26
|
export interface BuildStrategy {
|
|
27
|
-
canBuild(): Promise<boolean>;
|
|
28
|
-
execute(): Promise<BuildArtifact>;
|
|
27
|
+
canBuild(signal?: AbortSignal): Promise<boolean>;
|
|
28
|
+
execute(signal?: AbortSignal): Promise<BuildArtifact>;
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
31
|
* Reads directly from a pre-built application directory without copying.
|
|
@@ -37,20 +37,20 @@ export declare class PreBuilt implements BuildStrategy {
|
|
|
37
37
|
appPath: string;
|
|
38
38
|
entrypoint: string;
|
|
39
39
|
});
|
|
40
|
-
canBuild(): Promise<boolean>;
|
|
41
|
-
execute(): Promise<BuildArtifact>;
|
|
40
|
+
canBuild(_signal?: AbortSignal): Promise<boolean>;
|
|
41
|
+
execute(signal?: AbortSignal): Promise<BuildArtifact>;
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
44
|
* True if any of `filenames` exists at the root of `appPath`. Swallows
|
|
45
45
|
* readdir errors (missing/unreadable dir) and returns false.
|
|
46
46
|
*/
|
|
47
|
-
export declare function hasRootFile(appPath: string, filenames: readonly string[]): Promise<boolean>;
|
|
47
|
+
export declare function hasRootFile(appPath: string, filenames: readonly string[], signal?: AbortSignal): Promise<boolean>;
|
|
48
48
|
/**
|
|
49
49
|
* True if any of `packageNames` is listed in `package.json`'s `dependencies`
|
|
50
50
|
* or `devDependencies`. Swallows missing-file / invalid-JSON errors and
|
|
51
51
|
* returns false.
|
|
52
52
|
*/
|
|
53
|
-
export declare function hasPackageDependency(appPath: string, packageNames: readonly string[]): Promise<boolean>;
|
|
53
|
+
export declare function hasPackageDependency(appPath: string, packageNames: readonly string[], signal?: AbortSignal): Promise<boolean>;
|
|
54
54
|
/**
|
|
55
55
|
* Run a package's CLI inside `appPath`. Tries the project-local bin first,
|
|
56
56
|
* then `npx <cliName>`, then `bunx <cliName>`. Each candidate that fails
|
|
@@ -69,5 +69,6 @@ export declare function runPackageCli(opts: {
|
|
|
69
69
|
failurePrefix: string;
|
|
70
70
|
/** Thrown when no launcher is available. */
|
|
71
71
|
missingMessage: string;
|
|
72
|
+
signal?: AbortSignal;
|
|
72
73
|
}): Promise<void>;
|
|
73
74
|
//# sourceMappingURL=build-strategy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-strategy.d.ts","sourceRoot":"","sources":["../src/build-strategy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAElB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,WAAW,CAAC;IAEjC;;;;OAIG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,
|
|
1
|
+
{"version":3,"file":"build-strategy.d.ts","sourceRoot":"","sources":["../src/build-strategy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAElB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,WAAW,CAAC;IAEjC;;;;OAIG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACvD;AAED;;;GAGG;AACH,qBAAa,QAAS,YAAW,aAAa;;gBAIhC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;IAKtD,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAyB5D;AAQD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,CAAC,CAyBlB;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,gEAAgE;IAChE,aAAa,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBhB"}
|
package/dist/build-strategy.js
CHANGED
|
@@ -12,10 +12,11 @@ export class PreBuilt {
|
|
|
12
12
|
this.#appPath = options.appPath;
|
|
13
13
|
this.#entrypoint = options.entrypoint;
|
|
14
14
|
}
|
|
15
|
-
async canBuild() {
|
|
15
|
+
async canBuild(_signal) {
|
|
16
16
|
return true;
|
|
17
17
|
}
|
|
18
|
-
async execute() {
|
|
18
|
+
async execute(signal) {
|
|
19
|
+
signal?.throwIfAborted();
|
|
19
20
|
const normalized = path.normalize(this.#entrypoint);
|
|
20
21
|
if (path.isAbsolute(normalized)) {
|
|
21
22
|
throw new Error("Entrypoint must be a relative path");
|
|
@@ -43,7 +44,8 @@ export class PreBuilt {
|
|
|
43
44
|
* True if any of `filenames` exists at the root of `appPath`. Swallows
|
|
44
45
|
* readdir errors (missing/unreadable dir) and returns false.
|
|
45
46
|
*/
|
|
46
|
-
export async function hasRootFile(appPath, filenames) {
|
|
47
|
+
export async function hasRootFile(appPath, filenames, signal) {
|
|
48
|
+
signal?.throwIfAborted();
|
|
47
49
|
let entries;
|
|
48
50
|
try {
|
|
49
51
|
entries = await readdir(appPath);
|
|
@@ -58,7 +60,8 @@ export async function hasRootFile(appPath, filenames) {
|
|
|
58
60
|
* or `devDependencies`. Swallows missing-file / invalid-JSON errors and
|
|
59
61
|
* returns false.
|
|
60
62
|
*/
|
|
61
|
-
export async function hasPackageDependency(appPath, packageNames) {
|
|
63
|
+
export async function hasPackageDependency(appPath, packageNames, signal) {
|
|
64
|
+
signal?.throwIfAborted();
|
|
62
65
|
let content;
|
|
63
66
|
try {
|
|
64
67
|
content = await readFile(path.join(appPath, "package.json"), "utf-8");
|
|
@@ -95,8 +98,9 @@ export async function runPackageCli(opts) {
|
|
|
95
98
|
{ command: "bunx", args: [opts.cliName, ...opts.args] },
|
|
96
99
|
];
|
|
97
100
|
for (const { command, args } of candidates) {
|
|
101
|
+
opts.signal?.throwIfAborted();
|
|
98
102
|
try {
|
|
99
|
-
await exec(command, args, opts.appPath, opts.failurePrefix);
|
|
103
|
+
await exec(command, args, opts.appPath, opts.failurePrefix, opts.signal);
|
|
100
104
|
return;
|
|
101
105
|
}
|
|
102
106
|
catch (error) {
|
|
@@ -115,9 +119,9 @@ function isENOENT(error) {
|
|
|
115
119
|
"code" in error &&
|
|
116
120
|
error.code === "ENOENT");
|
|
117
121
|
}
|
|
118
|
-
function exec(command, args, cwd, failurePrefix) {
|
|
122
|
+
function exec(command, args, cwd, failurePrefix, signal) {
|
|
119
123
|
return new Promise((resolve, reject) => {
|
|
120
|
-
execFile(command, args, { cwd }, (error, _stdout, stderr) => {
|
|
124
|
+
execFile(command, args, { cwd, signal }, (error, _stdout, stderr) => {
|
|
121
125
|
if (error) {
|
|
122
126
|
if ("code" in error && error.code === "ENOENT") {
|
|
123
127
|
reject(Object.assign(new Error(`${command} not found`), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-strategy.js","sourceRoot":"","sources":["../src/build-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,IAAI,MAAM,WAAW,CAAC;AAoC7B;;;GAGG;AACH,MAAM,OAAO,QAAQ;IACV,QAAQ,CAAS;IACjB,WAAW,CAAS;IAE7B,YAAY,OAAgD;QAC1D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"build-strategy.js","sourceRoot":"","sources":["../src/build-strategy.ts"],"names":[],"mappings":"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"}
|
package/dist/bun-build.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare class BunBuild implements BuildStrategy {
|
|
|
9
9
|
appPath: string;
|
|
10
10
|
entrypoint?: string;
|
|
11
11
|
});
|
|
12
|
-
canBuild(): Promise<boolean>;
|
|
13
|
-
execute(): Promise<BuildArtifact>;
|
|
12
|
+
canBuild(_signal?: AbortSignal): Promise<boolean>;
|
|
13
|
+
execute(signal?: AbortSignal): Promise<BuildArtifact>;
|
|
14
14
|
}
|
|
15
15
|
//# sourceMappingURL=bun-build.d.ts.map
|
package/dist/bun-build.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bun-build.d.ts","sourceRoot":"","sources":["../src/bun-build.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAExE;;;GAGG;AACH,qBAAa,QAAS,YAAW,aAAa;;gBAIhC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAKvD,QAAQ,
|
|
1
|
+
{"version":3,"file":"bun-build.d.ts","sourceRoot":"","sources":["../src/bun-build.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAExE;;;GAGG;AACH,qBAAa,QAAS,YAAW,aAAa;;gBAIhC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAKvD,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAoK5D"}
|
package/dist/bun-build.js
CHANGED
|
@@ -13,17 +13,18 @@ export class BunBuild {
|
|
|
13
13
|
this.#appPath = options.appPath;
|
|
14
14
|
this.#entrypoint = options.entrypoint;
|
|
15
15
|
}
|
|
16
|
-
async canBuild() {
|
|
16
|
+
async canBuild(_signal) {
|
|
17
17
|
return true;
|
|
18
18
|
}
|
|
19
|
-
async execute() {
|
|
20
|
-
|
|
19
|
+
async execute(signal) {
|
|
20
|
+
signal?.throwIfAborted();
|
|
21
|
+
const entrypoint = await this.#resolveEntrypoint(signal);
|
|
21
22
|
const outDir = await mkdtemp(path.join(os.tmpdir(), "compute-build-"));
|
|
22
23
|
const bundleDir = path.join(outDir, "bundle");
|
|
23
24
|
await mkdir(bundleDir, { recursive: true });
|
|
24
25
|
const absoluteEntrypoint = path.join(this.#appPath, entrypoint);
|
|
25
26
|
try {
|
|
26
|
-
await this.#runBuild(absoluteEntrypoint, bundleDir);
|
|
27
|
+
await this.#runBuild(absoluteEntrypoint, bundleDir, signal);
|
|
27
28
|
}
|
|
28
29
|
catch (error) {
|
|
29
30
|
await rm(outDir, { recursive: true, force: true });
|
|
@@ -40,7 +41,8 @@ export class BunBuild {
|
|
|
40
41
|
cleanup: () => rm(outDir, { recursive: true, force: true }),
|
|
41
42
|
};
|
|
42
43
|
}
|
|
43
|
-
async #resolveEntrypoint() {
|
|
44
|
+
async #resolveEntrypoint(signal) {
|
|
45
|
+
signal?.throwIfAborted();
|
|
44
46
|
const candidate = this.#entrypoint ?? (await this.#readPackageJsonMain());
|
|
45
47
|
if (!candidate) {
|
|
46
48
|
throw new Error("Entrypoint is required. Pass --entrypoint or define package.json main");
|
|
@@ -86,7 +88,7 @@ export class BunBuild {
|
|
|
86
88
|
}
|
|
87
89
|
return typeof parsed.main === "string" ? parsed.main : undefined;
|
|
88
90
|
}
|
|
89
|
-
#runBuild(absoluteEntrypoint, bundleDir) {
|
|
91
|
+
#runBuild(absoluteEntrypoint, bundleDir, signal) {
|
|
90
92
|
return new Promise((resolve, reject) => {
|
|
91
93
|
execFile("bun", [
|
|
92
94
|
"build",
|
|
@@ -96,7 +98,7 @@ export class BunBuild {
|
|
|
96
98
|
"--target",
|
|
97
99
|
"bun",
|
|
98
100
|
"--sourcemap=external",
|
|
99
|
-
], (error, _stdout, stderr) => {
|
|
101
|
+
], { signal }, (error, _stdout, stderr) => {
|
|
100
102
|
if (error) {
|
|
101
103
|
if ("code" in error && error.code === "ENOENT") {
|
|
102
104
|
reject(new Error("Bun is required to build the application but was not found. Install it from https://bun.sh"));
|