mirror of
https://github.com/alkimake/paperclip.git
synced 2026-06-15 18:30:39 +09:00
feat: add storage system with local disk and S3 providers
Introduces a provider-agnostic storage subsystem for file attachments. Includes local disk and S3 backends, asset/attachment DB schemas, issue attachment CRUD routes with multer upload, CLI configure/doctor/env integration, and enriched issue ancestors with project/goal resolution. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
32119f5c2f
commit
fdd2ea6157
36 changed files with 1683 additions and 32 deletions
|
|
@ -16,6 +16,7 @@ import { loadConfig } from "./config.js";
|
|||
import { logger } from "./middleware/logger.js";
|
||||
import { setupLiveEventsWebSocketServer } from "./realtime/live-events-ws.js";
|
||||
import { heartbeatService } from "./services/index.js";
|
||||
import { createStorageServiceFromConfig } from "./storage/index.js";
|
||||
import { printStartupBanner } from "./startup-banner.js";
|
||||
|
||||
type EmbeddedPostgresInstance = {
|
||||
|
|
@ -217,7 +218,8 @@ if (config.databaseUrl) {
|
|||
}
|
||||
|
||||
const uiMode = config.uiDevMiddleware ? "vite-dev" : config.serveUi ? "static" : "none";
|
||||
const app = await createApp(db as any, { uiMode });
|
||||
const storageService = createStorageServiceFromConfig(config);
|
||||
const app = await createApp(db as any, { uiMode, storageService });
|
||||
const server = createServer(app);
|
||||
const listenPort = await detectPort(config.port);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue