feat: user-owned S3-compatible storage with credential verification

This commit is contained in:
Christomatt
2026-02-01 02:51:52 +01:00
parent a8252a1809
commit f55dec9a60
38 changed files with 1845 additions and 902 deletions
+7
View File
@@ -62,6 +62,13 @@ export const users = pgTable('users', {
movedTo: text('moved_to'), // New actor URL if this account migrated away
movedFrom: text('moved_from'), // Old actor URL if this account migrated here
migratedAt: timestamp('migrated_at'), // When the migration occurred
// User-owned S3-compatible storage - required for new users
storageProvider: text('storage_provider'), // 's3', 'r2', 'b2', 'wasabi', etc
storageEndpoint: text('storage_endpoint'), // S3 endpoint URL (optional for AWS)
storageRegion: text('storage_region'), // Region (e.g., 'us-east-1')
storageBucket: text('storage_bucket'), // Bucket name
storageAccessKeyEncrypted: text('storage_access_key_encrypted'), // Encrypted access key
storageSecretKeyEncrypted: text('storage_secret_key_encrypted'), // Encrypted secret key
followersCount: integer('followers_count').default(0).notNull(),
followingCount: integer('following_count').default(0).notNull(),
postsCount: integer('posts_count').default(0).notNull(),