@mastra/deployer-netlify 0.0.0-mssql-store-20250804200341 → 0.0.0-netlify-no-bundle-20251127120354
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/CHANGELOG.md +4016 -0
- package/README.md +1 -1
- package/dist/index.cjs +12 -43
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -43
- package/dist/index.js.map +1 -1
- package/package.json +28 -15
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ pnpm add @mastra/deployer-netlify
|
|
|
20
20
|
The Netlify deployer is used as part of the Mastra framework:
|
|
21
21
|
|
|
22
22
|
```typescript
|
|
23
|
-
import { Mastra } from '@mastra/core';
|
|
23
|
+
import { Mastra } from '@mastra/core/mastra';
|
|
24
24
|
import { NetlifyDeployer } from '@mastra/deployer-netlify';
|
|
25
25
|
|
|
26
26
|
const deployer = new NetlifyDeployer({
|
package/dist/index.cjs
CHANGED
|
@@ -34,15 +34,21 @@ var NetlifyDeployer = class extends deployer.Deployer {
|
|
|
34
34
|
async prepare(outputDirectory) {
|
|
35
35
|
await super.prepare(outputDirectory);
|
|
36
36
|
}
|
|
37
|
-
async bundle(entryFile, outputDirectory, toolsPaths) {
|
|
37
|
+
async bundle(entryFile, outputDirectory, { toolsPaths, projectRoot }) {
|
|
38
38
|
const result = await this._bundle(
|
|
39
39
|
this.getEntry(),
|
|
40
40
|
entryFile,
|
|
41
|
-
outputDirectory,
|
|
41
|
+
{ outputDirectory, projectRoot, enableEsmShim: true },
|
|
42
42
|
toolsPaths,
|
|
43
43
|
path.join(outputDirectory, this.outputDir)
|
|
44
44
|
);
|
|
45
45
|
await esm.writeJson(path.join(outputDirectory, ".netlify", "v1", "config.json"), {
|
|
46
|
+
functions: {
|
|
47
|
+
directory: ".netlify/v1/functions",
|
|
48
|
+
node_bundler: "none",
|
|
49
|
+
// Mastra pre-bundles, don't re-bundle
|
|
50
|
+
included_files: [".netlify/v1/functions/**"]
|
|
51
|
+
},
|
|
46
52
|
redirects: [
|
|
47
53
|
{
|
|
48
54
|
force: true,
|
|
@@ -63,48 +69,11 @@ var NetlifyDeployer = class extends deployer.Deployer {
|
|
|
63
69
|
import { mastra } from '#mastra';
|
|
64
70
|
import { createHonoServer, getToolExports } from '#server';
|
|
65
71
|
import { tools } from '#tools';
|
|
66
|
-
import {
|
|
67
|
-
import { AvailableHooks, registerHook } from '@mastra/core/hooks';
|
|
68
|
-
import { TABLE_EVALS } from '@mastra/core/storage';
|
|
69
|
-
import { checkEvalStorageFields } from '@mastra/core/utils';
|
|
72
|
+
import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';
|
|
70
73
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
input,
|
|
75
|
-
metric,
|
|
76
|
-
output,
|
|
77
|
-
runId,
|
|
78
|
-
globalRunId: runId,
|
|
79
|
-
instructions,
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
registerHook(AvailableHooks.ON_EVALUATION, async traceObject => {
|
|
84
|
-
const storage = mastra.getStorage();
|
|
85
|
-
if (storage) {
|
|
86
|
-
// Check for required fields
|
|
87
|
-
const logger = mastra.getLogger();
|
|
88
|
-
const areFieldsValid = checkEvalStorageFields(traceObject, logger);
|
|
89
|
-
if (!areFieldsValid) return;
|
|
90
|
-
|
|
91
|
-
await storage.insert({
|
|
92
|
-
tableName: TABLE_EVALS,
|
|
93
|
-
record: {
|
|
94
|
-
input: traceObject.input,
|
|
95
|
-
output: traceObject.output,
|
|
96
|
-
result: JSON.stringify(traceObject.result || {}),
|
|
97
|
-
agent_name: traceObject.agentName,
|
|
98
|
-
metric_name: traceObject.metricName,
|
|
99
|
-
instructions: traceObject.instructions,
|
|
100
|
-
test_info: null,
|
|
101
|
-
global_run_id: traceObject.globalRunId,
|
|
102
|
-
run_id: traceObject.runId,
|
|
103
|
-
created_at: new Date().toISOString(),
|
|
104
|
-
},
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
});
|
|
74
|
+
if (mastra.getStorage()) {
|
|
75
|
+
mastra.__registerInternalWorkflow(scoreTracesWorkflow);
|
|
76
|
+
}
|
|
108
77
|
|
|
109
78
|
const app = await createHonoServer(mastra, { tools: getToolExports(tools) });
|
|
110
79
|
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["Deployer","join","process","DepsService","writeJson","move"],"mappings":";;;;;;;;;;;;;AAMO,IAAM,eAAA,GAAN,cAA8BA,iBAAA,CAAS;AAAA,EAC5C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,SAAA,EAAW,CAAA;AACzB,IAAA,IAAA,CAAK,SAAA,GAAYC,SAAA,CAAK,UAAA,EAAY,IAAA,EAAM,aAAa,KAAK,CAAA;AAAA,EAC5D;AAAA,EAEA,MAAgB,mBAAA,CAAoB,eAAA,EAAyB,OAAA,GAAUC,wBAAA,CAAQ,KAAI,EAAG;AACpF,IAAA,MAAM,IAAA,GAAO,IAAIC,oBAAA,CAAY,OAAO,CAAA;AACpC,IAAA,IAAA,CAAK,WAAA,CAAY,KAAK,MAAM,CAAA;AAE5B,IAAA,MAAM,KAAK,OAAA,CAAQ;AAAA,MACjB,GAAA,EAAKF,SAAA,CAAK,eAAA,EAAiB,IAAA,CAAK,SAAS,CAAA;AAAA,MACzC,YAAA,EAAc;AAAA,QACZ,EAAA,EAAI,CAAC,OAAO,CAAA;AAAA,QACZ,GAAA,EAAK,CAAC,KAAK,CAAA;AAAA,QACX,IAAA,EAAM,CAAC,KAAK;AAAA;AACd,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,MAAA,GAAwB;AAC5B,IAAA,IAAA,CAAK,MAAA,EAAQ,KAAK,0EAA0E,CAAA;AAAA,EAC9F;AAAA,EAEA,MAAM,QAAQ,eAAA,EAAwC;AACpD,IAAA,MAAM,KAAA,CAAM,QAAQ,eAAe,CAAA;AAAA,EACrC;AAAA,EAEA,MAAM,MAAA,
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["Deployer","join","process","DepsService","writeJson","move"],"mappings":";;;;;;;;;;;;;AAMO,IAAM,eAAA,GAAN,cAA8BA,iBAAA,CAAS;AAAA,EAC5C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,SAAA,EAAW,CAAA;AACzB,IAAA,IAAA,CAAK,SAAA,GAAYC,SAAA,CAAK,UAAA,EAAY,IAAA,EAAM,aAAa,KAAK,CAAA;AAAA,EAC5D;AAAA,EAEA,MAAgB,mBAAA,CAAoB,eAAA,EAAyB,OAAA,GAAUC,wBAAA,CAAQ,KAAI,EAAG;AACpF,IAAA,MAAM,IAAA,GAAO,IAAIC,oBAAA,CAAY,OAAO,CAAA;AACpC,IAAA,IAAA,CAAK,WAAA,CAAY,KAAK,MAAM,CAAA;AAE5B,IAAA,MAAM,KAAK,OAAA,CAAQ;AAAA,MACjB,GAAA,EAAKF,SAAA,CAAK,eAAA,EAAiB,IAAA,CAAK,SAAS,CAAA;AAAA,MACzC,YAAA,EAAc;AAAA,QACZ,EAAA,EAAI,CAAC,OAAO,CAAA;AAAA,QACZ,GAAA,EAAK,CAAC,KAAK,CAAA;AAAA,QACX,IAAA,EAAM,CAAC,KAAK;AAAA;AACd,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,MAAA,GAAwB;AAC5B,IAAA,IAAA,CAAK,MAAA,EAAQ,KAAK,0EAA0E,CAAA;AAAA,EAC9F;AAAA,EAEA,MAAM,QAAQ,eAAA,EAAwC;AACpD,IAAA,MAAM,KAAA,CAAM,QAAQ,eAAe,CAAA;AAAA,EACrC;AAAA,EAEA,MAAM,MAAA,CACJ,SAAA,EACA,iBACA,EAAE,UAAA,EAAY,aAAY,EACX;AACf,IAAA,MAAM,MAAA,GAAS,MAAM,IAAA,CAAK,OAAA;AAAA,MACxB,KAAK,QAAA,EAAS;AAAA,MACd,SAAA;AAAA,MACA,EAAE,eAAA,EAAiB,WAAA,EAAa,aAAA,EAAe,IAAA,EAAK;AAAA,MACpD,UAAA;AAAA,MACAA,SAAA,CAAK,eAAA,EAAiB,IAAA,CAAK,SAAS;AAAA,KACtC;AAIA,IAAA,MAAMG,cAAUH,SAAA,CAAK,eAAA,EAAiB,UAAA,EAAY,IAAA,EAAM,aAAa,CAAA,EAAG;AAAA,MACtE,SAAA,EAAW;AAAA,QACT,SAAA,EAAW,uBAAA;AAAA,QACX,YAAA,EAAc,MAAA;AAAA;AAAA,QACd,cAAA,EAAgB,CAAC,0BAA0B;AAAA,OAC7C;AAAA,MACA,SAAA,EAAW;AAAA,QACT;AAAA,UACE,KAAA,EAAO,IAAA;AAAA,UACP,IAAA,EAAM,IAAA;AAAA,UACN,EAAA,EAAI,gCAAA;AAAA,UACJ,MAAA,EAAQ;AAAA;AACV;AACF,KACD,CAAA;AAED,IAAA,MAAMI,QAAA,CAAKJ,SAAA,CAAK,eAAA,EAAiB,UAAA,EAAY,IAAI,CAAA,EAAGA,SAAA,CAAKC,wBAAA,CAAQ,GAAA,EAAI,EAAG,UAAA,EAAY,IAAI,CAAA,EAAG;AAAA,MACzF,SAAA,EAAW;AAAA,KACZ,CAAA;AAED,IAAA,OAAO,MAAA;AAAA,EACT;AAAA,EAEQ,QAAA,GAAmB;AACzB,IAAA,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA,CAAA;AAAA,EAeT;AAAA,EAEA,MAAM,IAAA,CAAK,SAAA,EAAmB,eAAA,EAAyB,UAAA,EAAkD;AACvG,IAAA,MAAM,KAAA,CAAM,IAAA,CAAK,SAAA,EAAW,eAAA,EAAiB,UAAU,CAAA;AAAA,EACzD;AACF","file":"index.cjs","sourcesContent":["import { join } from 'path';\nimport process from 'process';\nimport { Deployer } from '@mastra/deployer';\nimport { DepsService } from '@mastra/deployer/services';\nimport { move, writeJson } from 'fs-extra/esm';\n\nexport class NetlifyDeployer extends Deployer {\n constructor() {\n super({ name: 'NETLIFY' });\n this.outputDir = join('.netlify', 'v1', 'functions', 'api');\n }\n\n protected async installDependencies(outputDirectory: string, rootDir = process.cwd()) {\n const deps = new DepsService(rootDir);\n deps.__setLogger(this.logger);\n\n await deps.install({\n dir: join(outputDirectory, this.outputDir),\n architecture: {\n os: ['linux'],\n cpu: ['x64'],\n libc: ['gnu'],\n },\n });\n }\n\n async deploy(): Promise<void> {\n this.logger?.info('Deploying to Netlify failed. Please use the Netlify dashboard to deploy.');\n }\n\n async prepare(outputDirectory: string): Promise<void> {\n await super.prepare(outputDirectory);\n }\n\n async bundle(\n entryFile: string,\n outputDirectory: string,\n { toolsPaths, projectRoot }: { toolsPaths: (string | string[])[]; projectRoot: string },\n ): Promise<void> {\n const result = await this._bundle(\n this.getEntry(),\n entryFile,\n { outputDirectory, projectRoot, enableEsmShim: true },\n toolsPaths,\n join(outputDirectory, this.outputDir),\n );\n\n // Use Netlify Frameworks API config.json\n // https://docs.netlify.com/build/frameworks/frameworks-api/\n await writeJson(join(outputDirectory, '.netlify', 'v1', 'config.json'), {\n functions: {\n directory: '.netlify/v1/functions',\n node_bundler: 'none', // Mastra pre-bundles, don't re-bundle\n included_files: ['.netlify/v1/functions/**'],\n },\n redirects: [\n {\n force: true,\n from: '/*',\n to: '/.netlify/functions/api/:splat',\n status: 200,\n },\n ],\n });\n\n await move(join(outputDirectory, '.netlify', 'v1'), join(process.cwd(), '.netlify', 'v1'), {\n overwrite: true,\n });\n\n return result;\n }\n\n private getEntry(): string {\n return `\n import { handle } from 'hono/netlify'\n import { mastra } from '#mastra';\n import { createHonoServer, getToolExports } from '#server';\n import { tools } from '#tools';\n import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';\n\n if (mastra.getStorage()) {\n mastra.__registerInternalWorkflow(scoreTracesWorkflow);\n }\n\n const app = await createHonoServer(mastra, { tools: getToolExports(tools) });\n\n export default handle(app)\n`;\n }\n\n async lint(entryFile: string, outputDirectory: string, toolsPaths: (string | string[])[]): Promise<void> {\n await super.lint(entryFile, outputDirectory, toolsPaths);\n }\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,8 +4,11 @@ export declare class NetlifyDeployer extends Deployer {
|
|
|
4
4
|
protected installDependencies(outputDirectory: string, rootDir?: string): Promise<void>;
|
|
5
5
|
deploy(): Promise<void>;
|
|
6
6
|
prepare(outputDirectory: string): Promise<void>;
|
|
7
|
-
bundle(entryFile: string, outputDirectory: string, toolsPaths
|
|
7
|
+
bundle(entryFile: string, outputDirectory: string, { toolsPaths, projectRoot }: {
|
|
8
|
+
toolsPaths: (string | string[])[];
|
|
9
|
+
projectRoot: string;
|
|
10
|
+
}): Promise<void>;
|
|
8
11
|
private getEntry;
|
|
9
|
-
lint(entryFile: string, outputDirectory: string, toolsPaths: string[]): Promise<void>;
|
|
12
|
+
lint(entryFile: string, outputDirectory: string, toolsPaths: (string | string[])[]): Promise<void>;
|
|
10
13
|
}
|
|
11
14
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,qBAAa,eAAgB,SAAQ,QAAQ;;cAM3B,mBAAmB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,SAAgB;IAc9E,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,qBAAa,eAAgB,SAAQ,QAAQ;;cAM3B,mBAAmB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,SAAgB;IAc9E,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,MAAM,CACV,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE;QAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GACtF,OAAO,CAAC,IAAI,CAAC;IAkChB,OAAO,CAAC,QAAQ;IAkBV,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzG"}
|
package/dist/index.js
CHANGED
|
@@ -28,15 +28,21 @@ var NetlifyDeployer = class extends Deployer {
|
|
|
28
28
|
async prepare(outputDirectory) {
|
|
29
29
|
await super.prepare(outputDirectory);
|
|
30
30
|
}
|
|
31
|
-
async bundle(entryFile, outputDirectory, toolsPaths) {
|
|
31
|
+
async bundle(entryFile, outputDirectory, { toolsPaths, projectRoot }) {
|
|
32
32
|
const result = await this._bundle(
|
|
33
33
|
this.getEntry(),
|
|
34
34
|
entryFile,
|
|
35
|
-
outputDirectory,
|
|
35
|
+
{ outputDirectory, projectRoot, enableEsmShim: true },
|
|
36
36
|
toolsPaths,
|
|
37
37
|
join(outputDirectory, this.outputDir)
|
|
38
38
|
);
|
|
39
39
|
await writeJson(join(outputDirectory, ".netlify", "v1", "config.json"), {
|
|
40
|
+
functions: {
|
|
41
|
+
directory: ".netlify/v1/functions",
|
|
42
|
+
node_bundler: "none",
|
|
43
|
+
// Mastra pre-bundles, don't re-bundle
|
|
44
|
+
included_files: [".netlify/v1/functions/**"]
|
|
45
|
+
},
|
|
40
46
|
redirects: [
|
|
41
47
|
{
|
|
42
48
|
force: true,
|
|
@@ -57,48 +63,11 @@ var NetlifyDeployer = class extends Deployer {
|
|
|
57
63
|
import { mastra } from '#mastra';
|
|
58
64
|
import { createHonoServer, getToolExports } from '#server';
|
|
59
65
|
import { tools } from '#tools';
|
|
60
|
-
import {
|
|
61
|
-
import { AvailableHooks, registerHook } from '@mastra/core/hooks';
|
|
62
|
-
import { TABLE_EVALS } from '@mastra/core/storage';
|
|
63
|
-
import { checkEvalStorageFields } from '@mastra/core/utils';
|
|
66
|
+
import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';
|
|
64
67
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
input,
|
|
69
|
-
metric,
|
|
70
|
-
output,
|
|
71
|
-
runId,
|
|
72
|
-
globalRunId: runId,
|
|
73
|
-
instructions,
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
registerHook(AvailableHooks.ON_EVALUATION, async traceObject => {
|
|
78
|
-
const storage = mastra.getStorage();
|
|
79
|
-
if (storage) {
|
|
80
|
-
// Check for required fields
|
|
81
|
-
const logger = mastra.getLogger();
|
|
82
|
-
const areFieldsValid = checkEvalStorageFields(traceObject, logger);
|
|
83
|
-
if (!areFieldsValid) return;
|
|
84
|
-
|
|
85
|
-
await storage.insert({
|
|
86
|
-
tableName: TABLE_EVALS,
|
|
87
|
-
record: {
|
|
88
|
-
input: traceObject.input,
|
|
89
|
-
output: traceObject.output,
|
|
90
|
-
result: JSON.stringify(traceObject.result || {}),
|
|
91
|
-
agent_name: traceObject.agentName,
|
|
92
|
-
metric_name: traceObject.metricName,
|
|
93
|
-
instructions: traceObject.instructions,
|
|
94
|
-
test_info: null,
|
|
95
|
-
global_run_id: traceObject.globalRunId,
|
|
96
|
-
run_id: traceObject.runId,
|
|
97
|
-
created_at: new Date().toISOString(),
|
|
98
|
-
},
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
});
|
|
68
|
+
if (mastra.getStorage()) {
|
|
69
|
+
mastra.__registerInternalWorkflow(scoreTracesWorkflow);
|
|
70
|
+
}
|
|
102
71
|
|
|
103
72
|
const app = await createHonoServer(mastra, { tools: getToolExports(tools) });
|
|
104
73
|
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;AAMO,IAAM,eAAA,GAAN,cAA8B,QAAA,CAAS;AAAA,EAC5C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,SAAA,EAAW,CAAA;AACzB,IAAA,IAAA,CAAK,SAAA,GAAY,IAAA,CAAK,UAAA,EAAY,IAAA,EAAM,aAAa,KAAK,CAAA;AAAA,EAC5D;AAAA,EAEA,MAAgB,mBAAA,CAAoB,eAAA,EAAyB,OAAA,GAAU,OAAA,CAAQ,KAAI,EAAG;AACpF,IAAA,MAAM,IAAA,GAAO,IAAI,WAAA,CAAY,OAAO,CAAA;AACpC,IAAA,IAAA,CAAK,WAAA,CAAY,KAAK,MAAM,CAAA;AAE5B,IAAA,MAAM,KAAK,OAAA,CAAQ;AAAA,MACjB,GAAA,EAAK,IAAA,CAAK,eAAA,EAAiB,IAAA,CAAK,SAAS,CAAA;AAAA,MACzC,YAAA,EAAc;AAAA,QACZ,EAAA,EAAI,CAAC,OAAO,CAAA;AAAA,QACZ,GAAA,EAAK,CAAC,KAAK,CAAA;AAAA,QACX,IAAA,EAAM,CAAC,KAAK;AAAA;AACd,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,MAAA,GAAwB;AAC5B,IAAA,IAAA,CAAK,MAAA,EAAQ,KAAK,0EAA0E,CAAA;AAAA,EAC9F;AAAA,EAEA,MAAM,QAAQ,eAAA,EAAwC;AACpD,IAAA,MAAM,KAAA,CAAM,QAAQ,eAAe,CAAA;AAAA,EACrC;AAAA,EAEA,MAAM,MAAA,
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;AAMO,IAAM,eAAA,GAAN,cAA8B,QAAA,CAAS;AAAA,EAC5C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,SAAA,EAAW,CAAA;AACzB,IAAA,IAAA,CAAK,SAAA,GAAY,IAAA,CAAK,UAAA,EAAY,IAAA,EAAM,aAAa,KAAK,CAAA;AAAA,EAC5D;AAAA,EAEA,MAAgB,mBAAA,CAAoB,eAAA,EAAyB,OAAA,GAAU,OAAA,CAAQ,KAAI,EAAG;AACpF,IAAA,MAAM,IAAA,GAAO,IAAI,WAAA,CAAY,OAAO,CAAA;AACpC,IAAA,IAAA,CAAK,WAAA,CAAY,KAAK,MAAM,CAAA;AAE5B,IAAA,MAAM,KAAK,OAAA,CAAQ;AAAA,MACjB,GAAA,EAAK,IAAA,CAAK,eAAA,EAAiB,IAAA,CAAK,SAAS,CAAA;AAAA,MACzC,YAAA,EAAc;AAAA,QACZ,EAAA,EAAI,CAAC,OAAO,CAAA;AAAA,QACZ,GAAA,EAAK,CAAC,KAAK,CAAA;AAAA,QACX,IAAA,EAAM,CAAC,KAAK;AAAA;AACd,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,MAAA,GAAwB;AAC5B,IAAA,IAAA,CAAK,MAAA,EAAQ,KAAK,0EAA0E,CAAA;AAAA,EAC9F;AAAA,EAEA,MAAM,QAAQ,eAAA,EAAwC;AACpD,IAAA,MAAM,KAAA,CAAM,QAAQ,eAAe,CAAA;AAAA,EACrC;AAAA,EAEA,MAAM,MAAA,CACJ,SAAA,EACA,iBACA,EAAE,UAAA,EAAY,aAAY,EACX;AACf,IAAA,MAAM,MAAA,GAAS,MAAM,IAAA,CAAK,OAAA;AAAA,MACxB,KAAK,QAAA,EAAS;AAAA,MACd,SAAA;AAAA,MACA,EAAE,eAAA,EAAiB,WAAA,EAAa,aAAA,EAAe,IAAA,EAAK;AAAA,MACpD,UAAA;AAAA,MACA,IAAA,CAAK,eAAA,EAAiB,IAAA,CAAK,SAAS;AAAA,KACtC;AAIA,IAAA,MAAM,UAAU,IAAA,CAAK,eAAA,EAAiB,UAAA,EAAY,IAAA,EAAM,aAAa,CAAA,EAAG;AAAA,MACtE,SAAA,EAAW;AAAA,QACT,SAAA,EAAW,uBAAA;AAAA,QACX,YAAA,EAAc,MAAA;AAAA;AAAA,QACd,cAAA,EAAgB,CAAC,0BAA0B;AAAA,OAC7C;AAAA,MACA,SAAA,EAAW;AAAA,QACT;AAAA,UACE,KAAA,EAAO,IAAA;AAAA,UACP,IAAA,EAAM,IAAA;AAAA,UACN,EAAA,EAAI,gCAAA;AAAA,UACJ,MAAA,EAAQ;AAAA;AACV;AACF,KACD,CAAA;AAED,IAAA,MAAM,IAAA,CAAK,IAAA,CAAK,eAAA,EAAiB,UAAA,EAAY,IAAI,CAAA,EAAG,IAAA,CAAK,OAAA,CAAQ,GAAA,EAAI,EAAG,UAAA,EAAY,IAAI,CAAA,EAAG;AAAA,MACzF,SAAA,EAAW;AAAA,KACZ,CAAA;AAED,IAAA,OAAO,MAAA;AAAA,EACT;AAAA,EAEQ,QAAA,GAAmB;AACzB,IAAA,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA,CAAA;AAAA,EAeT;AAAA,EAEA,MAAM,IAAA,CAAK,SAAA,EAAmB,eAAA,EAAyB,UAAA,EAAkD;AACvG,IAAA,MAAM,KAAA,CAAM,IAAA,CAAK,SAAA,EAAW,eAAA,EAAiB,UAAU,CAAA;AAAA,EACzD;AACF","file":"index.js","sourcesContent":["import { join } from 'path';\nimport process from 'process';\nimport { Deployer } from '@mastra/deployer';\nimport { DepsService } from '@mastra/deployer/services';\nimport { move, writeJson } from 'fs-extra/esm';\n\nexport class NetlifyDeployer extends Deployer {\n constructor() {\n super({ name: 'NETLIFY' });\n this.outputDir = join('.netlify', 'v1', 'functions', 'api');\n }\n\n protected async installDependencies(outputDirectory: string, rootDir = process.cwd()) {\n const deps = new DepsService(rootDir);\n deps.__setLogger(this.logger);\n\n await deps.install({\n dir: join(outputDirectory, this.outputDir),\n architecture: {\n os: ['linux'],\n cpu: ['x64'],\n libc: ['gnu'],\n },\n });\n }\n\n async deploy(): Promise<void> {\n this.logger?.info('Deploying to Netlify failed. Please use the Netlify dashboard to deploy.');\n }\n\n async prepare(outputDirectory: string): Promise<void> {\n await super.prepare(outputDirectory);\n }\n\n async bundle(\n entryFile: string,\n outputDirectory: string,\n { toolsPaths, projectRoot }: { toolsPaths: (string | string[])[]; projectRoot: string },\n ): Promise<void> {\n const result = await this._bundle(\n this.getEntry(),\n entryFile,\n { outputDirectory, projectRoot, enableEsmShim: true },\n toolsPaths,\n join(outputDirectory, this.outputDir),\n );\n\n // Use Netlify Frameworks API config.json\n // https://docs.netlify.com/build/frameworks/frameworks-api/\n await writeJson(join(outputDirectory, '.netlify', 'v1', 'config.json'), {\n functions: {\n directory: '.netlify/v1/functions',\n node_bundler: 'none', // Mastra pre-bundles, don't re-bundle\n included_files: ['.netlify/v1/functions/**'],\n },\n redirects: [\n {\n force: true,\n from: '/*',\n to: '/.netlify/functions/api/:splat',\n status: 200,\n },\n ],\n });\n\n await move(join(outputDirectory, '.netlify', 'v1'), join(process.cwd(), '.netlify', 'v1'), {\n overwrite: true,\n });\n\n return result;\n }\n\n private getEntry(): string {\n return `\n import { handle } from 'hono/netlify'\n import { mastra } from '#mastra';\n import { createHonoServer, getToolExports } from '#server';\n import { tools } from '#tools';\n import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';\n\n if (mastra.getStorage()) {\n mastra.__registerInternalWorkflow(scoreTracesWorkflow);\n }\n\n const app = await createHonoServer(mastra, { tools: getToolExports(tools) });\n\n export default handle(app)\n`;\n }\n\n async lint(entryFile: string, outputDirectory: string, toolsPaths: (string | string[])[]): Promise<void> {\n await super.lint(entryFile, outputDirectory, toolsPaths);\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/deployer-netlify",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-netlify-no-bundle-20251127120354",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
|
-
"dist"
|
|
7
|
+
"dist",
|
|
8
|
+
"CHANGELOG.md"
|
|
8
9
|
],
|
|
9
10
|
"main": "dist/index.js",
|
|
10
11
|
"types": "dist/index.d.ts",
|
|
@@ -15,7 +16,7 @@
|
|
|
15
16
|
"default": "./dist/index.js"
|
|
16
17
|
},
|
|
17
18
|
"require": {
|
|
18
|
-
"types": "./dist/index.d.
|
|
19
|
+
"types": "./dist/index.d.ts",
|
|
19
20
|
"default": "./dist/index.cjs"
|
|
20
21
|
}
|
|
21
22
|
},
|
|
@@ -25,26 +26,38 @@
|
|
|
25
26
|
"author": "",
|
|
26
27
|
"license": "Apache-2.0",
|
|
27
28
|
"dependencies": {
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"execa": "^9.6.0",
|
|
31
|
-
"fs-extra": "^11.3.0",
|
|
32
|
-
"zod": "^3.25.67",
|
|
33
|
-
"@mastra/deployer": "0.0.0-mssql-store-20250804200341"
|
|
29
|
+
"fs-extra": "^11.3.2",
|
|
30
|
+
"@mastra/deployer": "0.0.0-netlify-no-bundle-20251127120354"
|
|
34
31
|
},
|
|
35
32
|
"devDependencies": {
|
|
36
33
|
"@microsoft/api-extractor": "^7.52.8",
|
|
37
34
|
"@types/fs-extra": "^11.0.4",
|
|
38
|
-
"@types/node": "
|
|
39
|
-
"
|
|
35
|
+
"@types/node": "22.13.17",
|
|
36
|
+
"@vitest/coverage-v8": "4.0.12",
|
|
37
|
+
"@vitest/ui": "4.0.12",
|
|
38
|
+
"eslint": "^9.37.0",
|
|
40
39
|
"tsup": "^8.5.0",
|
|
41
40
|
"typescript": "^5.8.3",
|
|
42
|
-
"vitest": "
|
|
43
|
-
"@internal/
|
|
44
|
-
"@
|
|
41
|
+
"vitest": "4.0.12",
|
|
42
|
+
"@internal/types-builder": "0.0.0-netlify-no-bundle-20251127120354",
|
|
43
|
+
"@internal/lint": "0.0.0-netlify-no-bundle-20251127120354",
|
|
44
|
+
"@mastra/core": "0.0.0-netlify-no-bundle-20251127120354"
|
|
45
|
+
},
|
|
46
|
+
"homepage": "https://mastra.ai",
|
|
47
|
+
"repository": {
|
|
48
|
+
"type": "git",
|
|
49
|
+
"url": "git+https://github.com/mastra-ai/mastra.git",
|
|
50
|
+
"directory": "deployers/netlify"
|
|
51
|
+
},
|
|
52
|
+
"bugs": {
|
|
53
|
+
"url": "https://github.com/mastra-ai/mastra/issues"
|
|
45
54
|
},
|
|
46
55
|
"peerDependencies": {
|
|
47
|
-
"
|
|
56
|
+
"zod": "^3.25.0 || ^4.0.0",
|
|
57
|
+
"@mastra/core": "0.0.0-netlify-no-bundle-20251127120354"
|
|
58
|
+
},
|
|
59
|
+
"engines": {
|
|
60
|
+
"node": ">=22.13.0"
|
|
48
61
|
},
|
|
49
62
|
"scripts": {
|
|
50
63
|
"build": "tsup --silent --config tsup.config.ts",
|