diff --git a/src/plugins/index.ts b/src/plugins/index.ts index 23cb672..4df1b0b 100644 --- a/src/plugins/index.ts +++ b/src/plugins/index.ts @@ -4,12 +4,12 @@ import { redirectsPlugin } from '@payloadcms/plugin-redirects' import { seoPlugin } from '@payloadcms/plugin-seo' import { searchPlugin } from '@payloadcms/plugin-search' import { Plugin } from 'payload' +import { s3Storage } from '@payloadcms/storage-s3' import { revalidateRedirects } from '@/hooks/revalidateRedirects' import { GenerateTitle, GenerateURL } from '@payloadcms/plugin-seo/types' import { FixedToolbarFeature, HeadingFeature, lexicalEditor } from '@payloadcms/richtext-lexical' import { searchFields } from '@/search/fieldOverrides' import { beforeSyncWithSearch } from '@/search/beforeSync' - import { Page, Post } from '@/payload-types' import { getServerSideURL } from '@/utilities/getURL' @@ -88,5 +88,22 @@ export const plugins: Plugin[] = [ return [...defaultFields, ...searchFields] }, }, + }), + s3Storage({ + enabled: Boolean(process.env.S3_BUCKET), + collections: { + media: true, + }, + bucket: process.env.S3_BUCKET, + config: { + credentials: { + accessKeyId: process.env.S3_ACCESS_KEY_ID, + secretAccessKey: process.env.S3_SECRET_ACCESS_KEY, + }, + region: 'garage', // any string works for Garage + endpoint: process.env.S3_ENDPOINT, // e.g. https://s3.yourdomain.com + forcePathStyle: true, // required for Garage + }, +}), ]