orez 0.0.6 → 0.0.8
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 +56 -44
- package/dist/cli.js +25 -0
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -0
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/pglite-manager.d.ts.map +1 -1
- package/dist/pglite-manager.js +4 -1
- package/dist/pglite-manager.js.map +1 -1
- package/dist/vite-plugin.d.ts +2 -0
- package/dist/vite-plugin.d.ts.map +1 -1
- package/dist/vite-plugin.js +9 -0
- package/dist/vite-plugin.js.map +1 -1
- package/package.json +2 -2
- package/src/cli.ts +26 -0
- package/src/config.ts +4 -0
- package/src/index.ts +2 -2
- package/src/pglite-manager.ts +4 -1
- package/src/vite-plugin.ts +15 -1
package/README.md
CHANGED
|
@@ -1,28 +1,22 @@
|
|
|
1
1
|
# orez
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[Zero](https://zero.rocicorp.dev) development backend powered by [PGlite](https://pglite.dev). Bundles PostgreSQL and zero-cache into a single process — no Docker, no Postgres install.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
orez starts three things in one process:
|
|
10
|
-
|
|
11
|
-
1. A PGlite instance (full PostgreSQL 16 running in-process via WASM)
|
|
12
|
-
2. A TCP proxy that speaks the PostgreSQL wire protocol, including logical replication
|
|
13
|
-
3. A zero-cache child process that connects to the proxy thinking it's a real Postgres server
|
|
5
|
+
```
|
|
6
|
+
npx orez
|
|
7
|
+
```
|
|
14
8
|
|
|
15
|
-
|
|
9
|
+
Starts PGlite, the TCP proxy, and zero-cache. Ports auto-increment if already in use.
|
|
16
10
|
|
|
17
|
-
|
|
11
|
+
Exports a CLI, programmatic API, and Vite plugin.
|
|
18
12
|
|
|
19
13
|
## Install
|
|
20
14
|
|
|
21
15
|
```
|
|
22
|
-
npm install orez
|
|
16
|
+
npm install orez
|
|
23
17
|
```
|
|
24
18
|
|
|
25
|
-
`@rocicorp/zero` is a
|
|
19
|
+
`@rocicorp/zero` is included as a dependency and provides the zero-cache binary.
|
|
26
20
|
|
|
27
21
|
## CLI
|
|
28
22
|
|
|
@@ -30,8 +24,6 @@ npm install orez @rocicorp/zero
|
|
|
30
24
|
npx orez
|
|
31
25
|
```
|
|
32
26
|
|
|
33
|
-
Starts PGlite, the TCP proxy, and zero-cache. Ports auto-increment if already in use.
|
|
34
|
-
|
|
35
27
|
```
|
|
36
28
|
--pg-port postgresql proxy port (default: 6434)
|
|
37
29
|
--zero-port zero-cache port (default: 5849)
|
|
@@ -41,9 +33,12 @@ Starts PGlite, the TCP proxy, and zero-cache. Ports auto-increment if already in
|
|
|
41
33
|
--pg-user postgresql user (default: user)
|
|
42
34
|
--pg-password postgresql password (default: password)
|
|
43
35
|
--skip-zero-cache run pglite + proxy only, skip zero-cache
|
|
36
|
+
--log-level error, warn, info, debug (default: info)
|
|
37
|
+
--s3 also start a local s3-compatible server
|
|
38
|
+
--s3-port s3 server port (default: 9200)
|
|
44
39
|
```
|
|
45
40
|
|
|
46
|
-
S3
|
|
41
|
+
S3 can also run standalone:
|
|
47
42
|
|
|
48
43
|
```
|
|
49
44
|
npx orez s3
|
|
@@ -82,12 +77,25 @@ export default {
|
|
|
82
77
|
pgPort: 6434,
|
|
83
78
|
zeroPort: 5849,
|
|
84
79
|
migrationsDir: 'src/database/migrations',
|
|
80
|
+
s3: true,
|
|
85
81
|
}),
|
|
86
82
|
],
|
|
87
83
|
}
|
|
88
84
|
```
|
|
89
85
|
|
|
90
|
-
Starts orez when vite dev server starts, stops on close.
|
|
86
|
+
Starts orez when vite dev server starts, stops on close. Pass `s3: true` to also start a local s3 server.
|
|
87
|
+
|
|
88
|
+
## How it works
|
|
89
|
+
|
|
90
|
+
orez starts three things in one process:
|
|
91
|
+
|
|
92
|
+
1. A PGlite instance (full PostgreSQL 16 running in-process via WASM)
|
|
93
|
+
2. A TCP proxy that speaks the PostgreSQL wire protocol, including logical replication
|
|
94
|
+
3. A zero-cache child process that connects to the proxy thinking it's a real Postgres server
|
|
95
|
+
|
|
96
|
+
The trick is in the TCP proxy. zero-cache needs logical replication to stay in sync with the upstream database. PGlite doesn't support logical replication natively, so orez fakes it. Every mutation is captured by triggers into a changes table, then encoded into the pgoutput binary protocol and streamed to zero-cache through the replication connection. zero-cache can't tell the difference.
|
|
97
|
+
|
|
98
|
+
The proxy also handles multi-database routing. zero-cache expects three separate databases (upstream, CVR, change), but PGlite is a single database. orez maps database names to schemas, so `zero_cvr` becomes the `zero_cvr` schema and `zero_cdb` becomes `zero_cdb`.
|
|
91
99
|
|
|
92
100
|
## Environment variables
|
|
93
101
|
|
|
@@ -95,18 +103,20 @@ Your entire environment is forwarded to the zero-cache child process. This means
|
|
|
95
103
|
|
|
96
104
|
orez provides sensible defaults for a few variables:
|
|
97
105
|
|
|
98
|
-
| Variable
|
|
99
|
-
|
|
100
|
-
| `NODE_ENV`
|
|
101
|
-
| `ZERO_LOG_LEVEL`
|
|
102
|
-
| `ZERO_NUM_SYNC_WORKERS` | `1`
|
|
103
|
-
| `ZERO_UPSTREAM_DB`
|
|
104
|
-
| `ZERO_CVR_DB`
|
|
105
|
-
| `ZERO_CHANGE_DB`
|
|
106
|
-
| `ZERO_REPLICA_FILE`
|
|
107
|
-
| `ZERO_PORT`
|
|
106
|
+
| Variable | Default | Overridable |
|
|
107
|
+
| ----------------------- | ------------------- | ----------- |
|
|
108
|
+
| `NODE_ENV` | `development` | yes |
|
|
109
|
+
| `ZERO_LOG_LEVEL` | from `--log-level` | yes |
|
|
110
|
+
| `ZERO_NUM_SYNC_WORKERS` | `1` | yes |
|
|
111
|
+
| `ZERO_UPSTREAM_DB` | _(managed by orez)_ | no |
|
|
112
|
+
| `ZERO_CVR_DB` | _(managed by orez)_ | no |
|
|
113
|
+
| `ZERO_CHANGE_DB` | _(managed by orez)_ | no |
|
|
114
|
+
| `ZERO_REPLICA_FILE` | _(managed by orez)_ | no |
|
|
115
|
+
| `ZERO_PORT` | _(managed by orez)_ | no |
|
|
116
|
+
|
|
117
|
+
The `--log-level` flag controls both zero-cache (`ZERO_LOG_LEVEL`) and PGlite's debug output. Setting it to `debug` enables verbose logging from both.
|
|
108
118
|
|
|
109
|
-
The layering is: orez defaults → your env → orez-managed connection vars. So setting `ZERO_LOG_LEVEL=debug` in your shell overrides the default, but you can't override the database connection strings (orez needs to point zero-cache at its own proxy).
|
|
119
|
+
The layering is: orez defaults → your env → orez-managed connection vars. So setting `ZERO_LOG_LEVEL=debug` in your shell overrides the `--log-level` default, but you can't override the database connection strings (orez needs to point zero-cache at its own proxy).
|
|
110
120
|
|
|
111
121
|
Common vars you might want to set:
|
|
112
122
|
|
|
@@ -131,6 +141,23 @@ The proxy intercepts several things to convince zero-cache it's talking to a rea
|
|
|
131
141
|
|
|
132
142
|
The pgoutput encoder produces spec-compliant binary messages: Begin, Relation, Insert, Update, Delete, Commit, and Keepalive. All column values are encoded as text (typeOid 25), which zero-cache handles fine since it re-maps types downstream anyway.
|
|
133
143
|
|
|
144
|
+
## Extra: orez/s3
|
|
145
|
+
|
|
146
|
+
Local s3-compatible server for dev. Avoids needing Docker or MinIO.
|
|
147
|
+
|
|
148
|
+
```typescript
|
|
149
|
+
import { startS3Local } from 'orez/s3'
|
|
150
|
+
|
|
151
|
+
const server = await startS3Local({
|
|
152
|
+
port: 9200,
|
|
153
|
+
dataDir: '.orez',
|
|
154
|
+
})
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Or via CLI: `npx orez --s3` or standalone `npx orez s3`.
|
|
158
|
+
|
|
159
|
+
Handles GET, PUT, DELETE, HEAD with CORS. Files stored on disk. No multipart, no ACLs, no versioning.
|
|
160
|
+
|
|
134
161
|
## Tests
|
|
135
162
|
|
|
136
163
|
82 tests across 6 test files covering the full stack from binary encoding to TCP-level integration:
|
|
@@ -169,21 +196,6 @@ src/
|
|
|
169
196
|
change-tracker.ts trigger installation and change reader
|
|
170
197
|
```
|
|
171
198
|
|
|
172
|
-
## Extra: orez/s3
|
|
173
|
-
|
|
174
|
-
The other annoying dep we found ourselves needing often was s3, so we're exporting `orez/s3`. Its likewise a tiny, dev-only helper for avoiding heavy docker deps like minio.
|
|
175
|
-
|
|
176
|
-
```typescript
|
|
177
|
-
import { startS3Local } from 'orez/s3'
|
|
178
|
-
|
|
179
|
-
const server = await startS3Local({
|
|
180
|
-
port: 9200,
|
|
181
|
-
dataDir: '.orez',
|
|
182
|
-
})
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
Handles GET, PUT, DELETE, HEAD with CORS. Files stored on disk. No multipart, no ACLs, no versioning.
|
|
186
|
-
|
|
187
199
|
## License
|
|
188
200
|
|
|
189
201
|
MIT
|
package/dist/cli.js
CHANGED
|
@@ -81,6 +81,21 @@ const main = defineCommand({
|
|
|
81
81
|
description: 'run pglite + proxy only, skip zero-cache',
|
|
82
82
|
default: false,
|
|
83
83
|
},
|
|
84
|
+
'log-level': {
|
|
85
|
+
type: 'string',
|
|
86
|
+
description: 'log level: error, warn, info, debug',
|
|
87
|
+
default: 'info',
|
|
88
|
+
},
|
|
89
|
+
s3: {
|
|
90
|
+
type: 'boolean',
|
|
91
|
+
description: 'also start a local s3-compatible server',
|
|
92
|
+
default: false,
|
|
93
|
+
},
|
|
94
|
+
's3-port': {
|
|
95
|
+
type: 'string',
|
|
96
|
+
description: 's3 server port',
|
|
97
|
+
default: '9200',
|
|
98
|
+
},
|
|
84
99
|
},
|
|
85
100
|
subCommands: {
|
|
86
101
|
s3: s3Command,
|
|
@@ -95,17 +110,27 @@ const main = defineCommand({
|
|
|
95
110
|
pgUser: args['pg-user'],
|
|
96
111
|
pgPassword: args['pg-password'],
|
|
97
112
|
skipZeroCache: args['skip-zero-cache'],
|
|
113
|
+
logLevel: args['log-level'],
|
|
98
114
|
});
|
|
115
|
+
let s3Server = null;
|
|
116
|
+
if (args.s3) {
|
|
117
|
+
s3Server = await startS3Local({
|
|
118
|
+
port: Number(args['s3-port']),
|
|
119
|
+
dataDir: args['data-dir'],
|
|
120
|
+
});
|
|
121
|
+
}
|
|
99
122
|
log.orez('ready');
|
|
100
123
|
log.orez(`pg: postgresql://${config.pgUser}:${config.pgPassword}@127.0.0.1:${config.pgPort}/postgres`);
|
|
101
124
|
if (!config.skipZeroCache) {
|
|
102
125
|
log.zero(`http://localhost:${config.zeroPort}`);
|
|
103
126
|
}
|
|
104
127
|
process.on('SIGINT', async () => {
|
|
128
|
+
s3Server?.close();
|
|
105
129
|
await stop();
|
|
106
130
|
process.exit(0);
|
|
107
131
|
});
|
|
108
132
|
process.on('SIGTERM', async () => {
|
|
133
|
+
s3Server?.close();
|
|
109
134
|
await stop();
|
|
110
135
|
process.exit(0);
|
|
111
136
|
});
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type LogLevel = 'error' | 'warn' | 'info' | 'debug';
|
|
1
2
|
export interface ZeroLiteConfig {
|
|
2
3
|
dataDir: string;
|
|
3
4
|
pgPort: number;
|
|
@@ -7,6 +8,7 @@ export interface ZeroLiteConfig {
|
|
|
7
8
|
migrationsDir: string;
|
|
8
9
|
seedFile: string;
|
|
9
10
|
skipZeroCache: boolean;
|
|
11
|
+
logLevel: LogLevel;
|
|
10
12
|
}
|
|
11
13
|
export declare function getConfig(overrides?: Partial<ZeroLiteConfig>): ZeroLiteConfig;
|
|
12
14
|
export declare function getConnectionString(config: ZeroLiteConfig, dbName?: string): string;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE1D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED,wBAAgB,SAAS,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc,CAYjF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,SAAa,GAAG,MAAM,CAEvF"}
|
package/dist/config.js
CHANGED
|
@@ -8,6 +8,7 @@ export function getConfig(overrides = {}) {
|
|
|
8
8
|
migrationsDir: overrides.migrationsDir || 'src/database/migrations',
|
|
9
9
|
seedFile: overrides.seedFile || 'src/database/seed.sql',
|
|
10
10
|
skipZeroCache: overrides.skipZeroCache || false,
|
|
11
|
+
logLevel: overrides.logLevel || 'info',
|
|
11
12
|
};
|
|
12
13
|
}
|
|
13
14
|
export function getConnectionString(config, dbName = 'postgres') {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,SAAS,CAAC,YAAqC,EAAE;IAC/D,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,YAAY;QAC1C,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,IAAI;QAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,IAAI;QACpC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,MAAM;QAClC,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,UAAU;QAC9C,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,yBAAyB;QACnE,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,uBAAuB;QACvD,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,KAAK;QAC/C,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,MAAM;KACvC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAsB,EAAE,MAAM,GAAG,UAAU;IAC7E,OAAO,gBAAgB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,MAAM,IAAI,MAAM,EAAE,CAAA;AAClG,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* `bun run` command.
|
|
7
7
|
*/
|
|
8
8
|
import type { ZeroLiteConfig } from './config.js';
|
|
9
|
-
export type { ZeroLiteConfig } from './config.js';
|
|
9
|
+
export type { ZeroLiteConfig, LogLevel } from './config.js';
|
|
10
10
|
export { getConfig, getConnectionString } from './config.js';
|
|
11
11
|
export declare function startZeroLite(overrides?: Partial<ZeroLiteConfig>): Promise<{
|
|
12
12
|
config: ZeroLiteConfig;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIjD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIjD,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAE5D,wBAAsB,aAAa,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM;;;GA4D1E"}
|
package/dist/index.js
CHANGED
|
@@ -146,7 +146,7 @@ async function startZeroCache(config) {
|
|
|
146
146
|
// defaults that can be overridden by user env
|
|
147
147
|
const defaults = {
|
|
148
148
|
NODE_ENV: 'development',
|
|
149
|
-
ZERO_LOG_LEVEL:
|
|
149
|
+
ZERO_LOG_LEVEL: config.logLevel,
|
|
150
150
|
ZERO_NUM_SYNC_WORKERS: '1',
|
|
151
151
|
};
|
|
152
152
|
const env = {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACxF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAOvE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAE5D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,YAAqC,EAAE;IACzE,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;IAEnC,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa;QACnC,CAAC,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACnC,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM;QAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,MAAM,kBAAkB,MAAM,EAAE,CAAC,CAAA;IACvF,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,QAAQ,KAAK,MAAM,CAAC,QAAQ;QACvD,GAAG,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,QAAQ,kBAAkB,QAAQ,EAAE,CAAC,CAAA;IAC/D,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAE1B,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACvB,GAAG,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhD,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAE9C,eAAe;IACf,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAE7C,iBAAiB;IACjB,MAAM,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IAE/B,0BAA0B;IAC1B,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;IACtC,MAAM,qBAAqB,CAAC,EAAE,CAAC,CAAA;IAE/B,kBAAkB;IAClB,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IAE/C,sBAAsB;IACtB,MAAM,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IAE9B,uDAAuD;IACvD,aAAa,CAAC,MAAM,CAAC,CAAA;IAErB,mBAAmB;IACnB,IAAI,gBAAgB,GAAwB,IAAI,CAAA;IAChD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;QAClC,gBAAgB,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;QAC/C,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAChC,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;QAC5B,IAAI,gBAAgB,EAAE,CAAC;YACrB,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAClC,CAAC;QACD,QAAQ,CAAC,KAAK,EAAE,CAAA;QAChB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAA;QAChB,eAAe,EAAE,CAAA;QACjB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACrB,CAAC,CAAA;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;AACzB,CAAC;AAED,MAAM,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;AAC5C,MAAM,gBAAgB,GAAG,0BAA0B,CAAA;AAEnD,SAAS,aAAa,CAAC,MAAsB;IAC3C,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAEtD,MAAM,OAAO,GAAG,GAAG,gBAAgB;qBAChB,MAAM,CAAC,MAAM;iBACjB,MAAM,CAAC,QAAQ;4CACY,MAAM,CAAC,QAAQ;oBACvC,WAAW;eAChB,MAAM;kBACH,MAAM;CACvB,CAAA;IACC,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;IACtC,GAAG,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;YACrD,IAAI,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACzC,UAAU,CAAC,cAAc,CAAC,CAAA;gBAC1B,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,EAAU,EAAE,MAAsB;IAC5D,gCAAgC;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAC3B,6CAA6C,CAC9C,CAAA;QACD,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,OAAM;QACR,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,4BAA4B;IAC9B,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACzC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;QACxC,OAAM;IACR,CAAC;IAED,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC3C,MAAM,UAAU,GAAG,GAAG;SACnB,KAAK,CAAC,0BAA0B,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAA;IAElB,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;AAC9B,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,MAAsB;IAClD,yBAAyB;IACzB,MAAM,cAAc,GAAG;QACrB,OAAO,CAAC,8BAA8B,CAAC;QACvC,OAAO,CAAC,4DAA4D,CAAC;KACtE,CAAA;IAED,IAAI,YAAY,GAAG,EAAE,CAAA;IACrB,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;QAC/B,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,YAAY,GAAG,CAAC,CAAA;YAChB,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IACxE,CAAC;IAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAEtD,8CAA8C;IAC9C,MAAM,QAAQ,GAA2B;QACvC,QAAQ,EAAE,aAAa;QACvB,cAAc,EAAE,MAAM,CAAC,QAAQ;QAC/B,qBAAqB,EAAE,GAAG;KAC3B,CAAA;IAED,MAAM,GAAG,GAA2B;QAClC,GAAG,QAAQ;QACX,GAAI,OAAO,CAAC,GAA8B;QAC1C,4BAA4B;QAC5B,gBAAgB,EAAE,WAAW;QAC7B,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,MAAM;QACtB,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC;QAC7D,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;KACnC,CAAA;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE;QACpC,GAAG;QACH,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAA;IAEF,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACxB,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChC,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAA;QACtC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,MAAsB,EACtB,SAAS,GAAG,KAAK;IAEjB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACxB,MAAM,GAAG,GAAG,oBAAoB,MAAM,CAAC,QAAQ,GAAG,CAAA;IAElD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,SAAS,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;YAC5B,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACjB,OAAM;YACR,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB;QAClB,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;AACvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pglite-manager.d.ts","sourceRoot":"","sources":["../src/pglite-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"pglite-manager.d.ts","sourceRoot":"","sources":["../src/pglite-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CA6BlF;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DrF"}
|
package/dist/pglite-manager.js
CHANGED
|
@@ -6,7 +6,10 @@ export async function createPGliteInstance(config) {
|
|
|
6
6
|
const dataPath = resolve(config.dataDir, 'pgdata');
|
|
7
7
|
mkdirSync(dataPath, { recursive: true });
|
|
8
8
|
log.pglite(`creating instance at ${dataPath}`);
|
|
9
|
-
const db = new PGlite(
|
|
9
|
+
const db = new PGlite({
|
|
10
|
+
dataDir: dataPath,
|
|
11
|
+
debug: config.logLevel === 'debug' ? 1 : 0,
|
|
12
|
+
});
|
|
10
13
|
await db.waitReady;
|
|
11
14
|
log.pglite('ready');
|
|
12
15
|
// create schemas for multi-db simulation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pglite-manager.js","sourceRoot":"","sources":["../src/pglite-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAC1E,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAE7C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAI9B,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAAsB;IAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClD,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAExC,GAAG,CAAC,MAAM,CAAC,wBAAwB,QAAQ,EAAE,CAAC,CAAA;IAC9C,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"pglite-manager.js","sourceRoot":"","sources":["../src/pglite-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/vite-plugin.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { ZeroLiteConfig } from './config.js';
|
|
2
2
|
import type { Plugin } from 'vite';
|
|
3
3
|
export interface OrezPluginOptions extends Partial<ZeroLiteConfig> {
|
|
4
|
+
s3?: boolean;
|
|
5
|
+
s3Port?: number;
|
|
4
6
|
}
|
|
5
7
|
export default function orez(options?: OrezPluginOptions): Plugin;
|
|
6
8
|
//# sourceMappingURL=vite-plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAElC,MAAM,WAAW,iBAAkB,SAAQ,OAAO,CAAC,cAAc,CAAC;IAChE,EAAE,CAAC,EAAE,OAAO,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,CA2BhE"}
|
package/dist/vite-plugin.js
CHANGED
|
@@ -1,12 +1,21 @@
|
|
|
1
1
|
import { startZeroLite } from './index.js';
|
|
2
|
+
import { startS3Local } from './s3-local.js';
|
|
2
3
|
export default function orez(options) {
|
|
3
4
|
let stop = null;
|
|
5
|
+
let s3Server = null;
|
|
4
6
|
return {
|
|
5
7
|
name: 'orez',
|
|
6
8
|
async configureServer(server) {
|
|
7
9
|
const result = await startZeroLite(options);
|
|
8
10
|
stop = result.stop;
|
|
11
|
+
if (options?.s3) {
|
|
12
|
+
s3Server = await startS3Local({
|
|
13
|
+
port: options.s3Port || 9200,
|
|
14
|
+
dataDir: result.config.dataDir,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
9
17
|
server.httpServer?.on('close', async () => {
|
|
18
|
+
s3Server?.close();
|
|
10
19
|
if (stop) {
|
|
11
20
|
await stop();
|
|
12
21
|
stop = null;
|
package/dist/vite-plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAW5C,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,OAA2B;IACtD,IAAI,IAAI,GAAiC,IAAI,CAAA;IAC7C,IAAI,QAAQ,GAAkB,IAAI,CAAA;IAElC,OAAO;QACL,IAAI,EAAE,MAAM;QAEZ,KAAK,CAAC,eAAe,CAAC,MAAM;YAC1B,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAA;YAC3C,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;YAElB,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;gBAChB,QAAQ,GAAG,MAAM,YAAY,CAAC;oBAC5B,IAAI,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;oBAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;iBAC/B,CAAC,CAAA;YACJ,CAAC;YAED,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;gBACxC,QAAQ,EAAE,KAAK,EAAE,CAAA;gBACjB,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,IAAI,EAAE,CAAA;oBACZ,IAAI,GAAG,IAAI,CAAA;gBACb,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "orez",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.8",
|
|
4
4
|
"description": "PGlite-powered zero-sync development backend. No Docker required.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -42,11 +42,11 @@
|
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"@electric-sql/pglite": "^0.2.17",
|
|
45
|
+
"@rocicorp/zero": ">=0.1.0",
|
|
45
46
|
"citty": "^0.2.0",
|
|
46
47
|
"pg-gateway": "^0.3.0-beta.4"
|
|
47
48
|
},
|
|
48
49
|
"peerDependencies": {
|
|
49
|
-
"@rocicorp/zero": "*",
|
|
50
50
|
"vite": ">=5"
|
|
51
51
|
},
|
|
52
52
|
"peerDependenciesMeta": {
|
package/src/cli.ts
CHANGED
|
@@ -85,6 +85,21 @@ const main = defineCommand({
|
|
|
85
85
|
description: 'run pglite + proxy only, skip zero-cache',
|
|
86
86
|
default: false,
|
|
87
87
|
},
|
|
88
|
+
'log-level': {
|
|
89
|
+
type: 'string',
|
|
90
|
+
description: 'log level: error, warn, info, debug',
|
|
91
|
+
default: 'info',
|
|
92
|
+
},
|
|
93
|
+
s3: {
|
|
94
|
+
type: 'boolean',
|
|
95
|
+
description: 'also start a local s3-compatible server',
|
|
96
|
+
default: false,
|
|
97
|
+
},
|
|
98
|
+
's3-port': {
|
|
99
|
+
type: 'string',
|
|
100
|
+
description: 's3 server port',
|
|
101
|
+
default: '9200',
|
|
102
|
+
},
|
|
88
103
|
},
|
|
89
104
|
subCommands: {
|
|
90
105
|
s3: s3Command,
|
|
@@ -99,8 +114,17 @@ const main = defineCommand({
|
|
|
99
114
|
pgUser: args['pg-user'],
|
|
100
115
|
pgPassword: args['pg-password'],
|
|
101
116
|
skipZeroCache: args['skip-zero-cache'],
|
|
117
|
+
logLevel: args['log-level'] as 'error' | 'warn' | 'info' | 'debug',
|
|
102
118
|
})
|
|
103
119
|
|
|
120
|
+
let s3Server: import('node:http').Server | null = null
|
|
121
|
+
if (args.s3) {
|
|
122
|
+
s3Server = await startS3Local({
|
|
123
|
+
port: Number(args['s3-port']),
|
|
124
|
+
dataDir: args['data-dir'],
|
|
125
|
+
})
|
|
126
|
+
}
|
|
127
|
+
|
|
104
128
|
log.orez('ready')
|
|
105
129
|
log.orez(
|
|
106
130
|
`pg: postgresql://${config.pgUser}:${config.pgPassword}@127.0.0.1:${config.pgPort}/postgres`
|
|
@@ -110,10 +134,12 @@ const main = defineCommand({
|
|
|
110
134
|
}
|
|
111
135
|
|
|
112
136
|
process.on('SIGINT', async () => {
|
|
137
|
+
s3Server?.close()
|
|
113
138
|
await stop()
|
|
114
139
|
process.exit(0)
|
|
115
140
|
})
|
|
116
141
|
process.on('SIGTERM', async () => {
|
|
142
|
+
s3Server?.close()
|
|
117
143
|
await stop()
|
|
118
144
|
process.exit(0)
|
|
119
145
|
})
|
package/src/config.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export type LogLevel = 'error' | 'warn' | 'info' | 'debug'
|
|
2
|
+
|
|
1
3
|
export interface ZeroLiteConfig {
|
|
2
4
|
dataDir: string
|
|
3
5
|
pgPort: number
|
|
@@ -7,6 +9,7 @@ export interface ZeroLiteConfig {
|
|
|
7
9
|
migrationsDir: string
|
|
8
10
|
seedFile: string
|
|
9
11
|
skipZeroCache: boolean
|
|
12
|
+
logLevel: LogLevel
|
|
10
13
|
}
|
|
11
14
|
|
|
12
15
|
export function getConfig(overrides: Partial<ZeroLiteConfig> = {}): ZeroLiteConfig {
|
|
@@ -19,6 +22,7 @@ export function getConfig(overrides: Partial<ZeroLiteConfig> = {}): ZeroLiteConf
|
|
|
19
22
|
migrationsDir: overrides.migrationsDir || 'src/database/migrations',
|
|
20
23
|
seedFile: overrides.seedFile || 'src/database/seed.sql',
|
|
21
24
|
skipZeroCache: overrides.skipZeroCache || false,
|
|
25
|
+
logLevel: overrides.logLevel || 'info',
|
|
22
26
|
}
|
|
23
27
|
}
|
|
24
28
|
|
package/src/index.ts
CHANGED
|
@@ -21,7 +21,7 @@ import type { ZeroLiteConfig } from './config.js'
|
|
|
21
21
|
import type { PGlite } from '@electric-sql/pglite'
|
|
22
22
|
import type { Server } from 'node:net'
|
|
23
23
|
|
|
24
|
-
export type { ZeroLiteConfig } from './config.js'
|
|
24
|
+
export type { ZeroLiteConfig, LogLevel } from './config.js'
|
|
25
25
|
export { getConfig, getConnectionString } from './config.js'
|
|
26
26
|
|
|
27
27
|
export async function startZeroLite(overrides: Partial<ZeroLiteConfig> = {}) {
|
|
@@ -178,7 +178,7 @@ async function startZeroCache(config: ZeroLiteConfig): Promise<ChildProcess> {
|
|
|
178
178
|
// defaults that can be overridden by user env
|
|
179
179
|
const defaults: Record<string, string> = {
|
|
180
180
|
NODE_ENV: 'development',
|
|
181
|
-
ZERO_LOG_LEVEL:
|
|
181
|
+
ZERO_LOG_LEVEL: config.logLevel,
|
|
182
182
|
ZERO_NUM_SYNC_WORKERS: '1',
|
|
183
183
|
}
|
|
184
184
|
|
package/src/pglite-manager.ts
CHANGED
|
@@ -12,7 +12,10 @@ export async function createPGliteInstance(config: ZeroLiteConfig): Promise<PGli
|
|
|
12
12
|
mkdirSync(dataPath, { recursive: true })
|
|
13
13
|
|
|
14
14
|
log.pglite(`creating instance at ${dataPath}`)
|
|
15
|
-
const db = new PGlite(
|
|
15
|
+
const db = new PGlite({
|
|
16
|
+
dataDir: dataPath,
|
|
17
|
+
debug: config.logLevel === 'debug' ? 1 : 0,
|
|
18
|
+
})
|
|
16
19
|
|
|
17
20
|
await db.waitReady
|
|
18
21
|
log.pglite('ready')
|
package/src/vite-plugin.ts
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
import { startZeroLite } from './index.js'
|
|
2
|
+
import { startS3Local } from './s3-local.js'
|
|
2
3
|
|
|
3
4
|
import type { ZeroLiteConfig } from './config.js'
|
|
5
|
+
import type { Server } from 'node:http'
|
|
4
6
|
import type { Plugin } from 'vite'
|
|
5
7
|
|
|
6
|
-
export interface OrezPluginOptions extends Partial<ZeroLiteConfig> {
|
|
8
|
+
export interface OrezPluginOptions extends Partial<ZeroLiteConfig> {
|
|
9
|
+
s3?: boolean
|
|
10
|
+
s3Port?: number
|
|
11
|
+
}
|
|
7
12
|
|
|
8
13
|
export default function orez(options?: OrezPluginOptions): Plugin {
|
|
9
14
|
let stop: (() => Promise<void>) | null = null
|
|
15
|
+
let s3Server: Server | null = null
|
|
10
16
|
|
|
11
17
|
return {
|
|
12
18
|
name: 'orez',
|
|
@@ -15,7 +21,15 @@ export default function orez(options?: OrezPluginOptions): Plugin {
|
|
|
15
21
|
const result = await startZeroLite(options)
|
|
16
22
|
stop = result.stop
|
|
17
23
|
|
|
24
|
+
if (options?.s3) {
|
|
25
|
+
s3Server = await startS3Local({
|
|
26
|
+
port: options.s3Port || 9200,
|
|
27
|
+
dataDir: result.config.dataDir,
|
|
28
|
+
})
|
|
29
|
+
}
|
|
30
|
+
|
|
18
31
|
server.httpServer?.on('close', async () => {
|
|
32
|
+
s3Server?.close()
|
|
19
33
|
if (stop) {
|
|
20
34
|
await stop()
|
|
21
35
|
stop = null
|