Add one-command dev-to-prod release with clear SUCCESS/FAILED banners.
Introduce devtoprod:release orchestrator, config file, CLI result footers on deploy scripts, auto-thumb regeneration on curator fixes, and updated deploy documentation. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
313666a4ab
commit
21e3e41e48
@@ -7,6 +7,7 @@ const fs = require('fs');
|
||||
const path = require('path');
|
||||
const pool = require('../server/db');
|
||||
const { generateThumbnailFromFull } = require('./image-fetcher');
|
||||
const { printCliResult } = require('./lib/cli-result');
|
||||
|
||||
const IMAGE_DIR = path.resolve(process.env.IMAGE_DIR || './data/images');
|
||||
const PORTRAIT_THUMB_WIDTH = 256;
|
||||
@@ -70,7 +71,32 @@ async function generatePortraitThumb(row) {
|
||||
}
|
||||
|
||||
await pool.end();
|
||||
|
||||
if (errors.length) {
|
||||
printCliResult({
|
||||
script: 'regenerate-portrait-thumbs',
|
||||
ok: false,
|
||||
summary: `Portrait thumbnail regeneration finished with ${errors.length} error(s).`,
|
||||
details: [
|
||||
`Generated: ${generated}, skipped: ${skipped}`,
|
||||
...errors.slice(0, 5).map((e) => ` #${e.id} ${e.name}: ${e.error}`),
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
printCliResult({
|
||||
script: 'regenerate-portrait-thumbs',
|
||||
ok: true,
|
||||
summary: 'Portrait thumbnail regeneration complete.',
|
||||
details: [`Generated: ${generated}, skipped: ${skipped}`],
|
||||
});
|
||||
})().catch((err) => {
|
||||
console.error(err);
|
||||
pool.end().finally(() => process.exit(1));
|
||||
pool.end().finally(() => {
|
||||
printCliResult({
|
||||
script: 'regenerate-portrait-thumbs',
|
||||
ok: false,
|
||||
summary: err.message || String(err),
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user