From 67d3d2fb788f5d65350015d7a8d6231339a8659c Mon Sep 17 00:00:00 2001 From: Benjamin Date: Wed, 25 Jun 2025 13:54:58 -0400 Subject: [PATCH] make changes to public URLs --- .env.dist | 1 + server/aws.ts | 2 ++ server/cards.ts | 6 +++--- server/cleanupImages.ts | 6 +++--- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.env.dist b/.env.dist index 819f79850..085bff6a6 100644 --- a/.env.dist +++ b/.env.dist @@ -26,6 +26,7 @@ S3_KEY= S3_SECRET= S3_BUCKET= S3_ENDPOINT= +S3_PUBLIC_ACCESS= AWS_CLOUDFRONT_ID= diff --git a/server/aws.ts b/server/aws.ts index 8bf292027..857e27adc 100644 --- a/server/aws.ts +++ b/server/aws.ts @@ -15,6 +15,7 @@ export interface S3Config extends S3ClientConfig { secretAccessKey: string; }; endpoint?: string; + publicAccess?: string; } export const s3Config: S3Config = { @@ -25,6 +26,7 @@ export const s3Config: S3Config = { secretAccessKey: process.env.S3_SECRET!, }, endpoint: process.env.S3_ENDPOINT || undefined, + publicAccess: process.env.S3_PUBLIC_ACCESS, }; export const s3BucketParams = { diff --git a/server/cards.ts b/server/cards.ts index be78d35d8..bf660adb9 100644 --- a/server/cards.ts +++ b/server/cards.ts @@ -5,12 +5,12 @@ import Pageres from 'pageres'; import type { Screenshot } from 'pageres'; import { ulid } from 'ulid'; -import { s3Config, s3BucketParams } from './aws.ts'; +import { s3BucketParams } from './aws.ts'; import dbConnection from './db.ts'; import type { Database } from './db.ts'; import isHighLoadTime from './overload.js'; -import { s3 } from '~/server/aws.ts'; +import { s3, s3Config } from '~/server/aws.ts'; import jwt from '~/server/jwt.ts'; import { getLocaleUrls } from '~/src/domain.ts'; @@ -112,7 +112,7 @@ const shoot = async (db: Database, mode: 'light' | 'dark'): Promise => { await db.get(` UPDATE profiles - SET ${mode === 'dark' ? 'cardDark' : 'card'}='https://${s3BucketParams.Bucket}.s3.${s3Config.region}.amazonaws.com/${key}' + SET ${mode === 'dark' ? 'cardDark' : 'card'}='${s3Config.publicAccess}/${key}' WHERE id='${id}'`); } }; diff --git a/server/cleanupImages.ts b/server/cleanupImages.ts index a9d6fe02c..7885b137e 100644 --- a/server/cleanupImages.ts +++ b/server/cleanupImages.ts @@ -2,7 +2,7 @@ import './setup.ts'; import type { ListObjectsV2Output, ObjectIdentifier, _Object } from '@aws-sdk/client-s3'; -import { s3, s3BucketParams } from './aws.ts'; +import { s3, s3BucketParams, s3Config } from './aws.ts'; import dbConnection from './db.ts'; const FRESH_CUTOFF = 6 * 60 * 60 * 1000; // 6 hours @@ -85,14 +85,14 @@ async function cleanup(): Promise { FROM profiles WHERE card is not null AND card != '' `)) { - cards[row.card.match('https://pronouns-page.s3.eu-west-1.amazonaws.com/card/[^/]+/.+-([^-]+)\.png')[1]] = true; + cards[row.card.match(`${s3Config.publicAccess}/card/[^/]+/.+-([^-]+)\.png`)[1]] = true; } for (const row of await db.all(` SELECT cardDark FROM profiles WHERE cardDark is not null AND cardDark != '' `)) { - const m = row.cardDark.match('https://pronouns-page.s3.eu-west-1.amazonaws.com/card/[^/]+/.+-([^-]+)-dark\.png'); + const m = row.cardDark.match(`${s3Config.publicAccess}/card/[^/]+/.+-([^-]+)-dark\.png`); if (!m) { console.error(row.cardDark); continue;