forked from kristiyan-velkov/docker-nodejs-sample
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathesbuild.config.js
More file actions
31 lines (29 loc) · 783 Bytes
/
Copy pathesbuild.config.js
File metadata and controls
31 lines (29 loc) · 783 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { build } from 'esbuild';
const config = {
entryPoints: ['src/server/index.ts'],
bundle: true,
platform: 'node',
format: 'esm',
outfile: 'dist/server.js',
external: ['pg-native', 'sqlite3'],
minify: process.env.NODE_ENV === 'production',
sourcemap: true,
target: 'node22',
logLevel: 'info',
keepNames: true,
metafile: true,
packages: 'external', // Don't bundle node_modules
mainFields: ['module', 'main'],
conditions: ['import', 'module', 'default'],
};
build(config)
.then((result) => {
console.log('Build completed successfully');
if (result.metafile) {
console.log('Output files:', Object.keys(result.metafile.outputs));
}
})
.catch((error) => {
console.error('Build failed:', error);
process.exit(1);
});