|
|
1 mese fa | |
|---|---|---|
| .. | ||
| schema | 1 mese fa | |
| README.md | 1 mese fa | |
| seed-admin.ts | 1 mese fa | |
| seed-ads.ts | 1 mese fa | |
| seed-menus.ts | 1 mese fa | |
| seed-sys-config.ts | 1 mese fa | |
| seed.ts | 2 mesi fa | |
pnpm prisma:seed:box-admin:sys-config upserts the singleton { _id: -1 } document so that appConfig.imageCdn, imageConfig, and provider are populated for box-app-api. The ts-node script is ts-node -P tsconfig.seed.json prisma/mongo/seed-sys-config.ts.
Generated document shape:
{
"_id": -1,
"appConfig": {
"imageCdn": {
"s3": "...",
"local": "..."
}
},
"imageConfig": {
"s3Enabled": true,
"storageStrategy": "S3_AND_LOCAL",
"local": {
"rootPath": "something (e.g. /opt/app/node/ww-images)",
"baseUrl": "https://man.boxt3yk.com/images"
},
"limitsMb": { "image": 10, "video": 100 },
"s3": {
"accessKeyId": "...",
"secretAccessKey": "...",
"bucket": "...",
"region": "ap-east-1",
"endpointUrl": "https://s3.ap-east-1.amazonaws.com",
"imageBaseUrl": "https://s3.ap-east-1.amazonaws.com/mybucket-imgs"
}
},
"provider": {
"providerCode": "PARTNER",
"apiUrl": "https://wwapi.hxc1t.com",
"itemsLimit": 100
}
}
Equivalent mongosh call:
mongosh --eval "db.sysConfig.updateOne({ _id: -1 }, { $set: { appConfig: { imageCdn: { s3: 'https://s3.ap-east-1.amazonaws.com/mybucket-imgs', local: 'https://man.boxt3yk.com/' } }, imageConfig: { s3Enabled: true, storageStrategy: 'S3_AND_LOCAL', local: { rootPath: '/opt/app/node/ww-images', baseUrl: 'https://man.boxt3yk.com/images' }, limitsMb: { image: 10, video: 100 }, s3: { accessKeyId: 'AKIA6GSNGR5PISMIKCJ4', secretAccessKey: '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', bucket: 'mybucket-imgs', region: 'ap-east-1', endpointUrl: 'https://s3.ap-east-1.amazonaws.com', imageBaseUrl: 'https://s3.ap-east-1.amazonaws.com/mybucket-imgs' } }, provider: { providerCode: 'PARTNER', apiUrl: 'https://wwapi.hxc1t.com', itemsLimit: 100 } } }, { upsert: true, multi: false })"