@tawny eagle no we aren't using useTempFiles: true
Our media collection is very simple:
import { CollectionConfig } from "payload/types";
const Media: CollectionConfig = {
slug: "media",
access: {
read: () => true,
},
admin: {
useAsTitle: "alt",
},
fields: [
{
name: "alt",
type: "text",
required: true,
},
],
upload: {
staticURL: "/media",
staticDir: "media",
adminThumbnail: "thumbnail",
},
};
export default Media;
And the plugin config:
import { fromContainerMetadata } from "@aws-sdk/credential-providers";
import { cloudStorage } from "@payloadcms/plugin-cloud-storage";
import { s3Adapter as payloadS3Adapter } from "@payloadcms/plugin-cloud-storage/s3";
const s3Adapter = payloadS3Adapter({
config: {
credentialDefaultProvider: fromContainerMetadata,
},
bucket: process.env.PAYLOAD_CMS_S3_BUCKET,
});
export default buildConfig({
...
plugins: [
cloudStorage({
collections: {
[Media.slug]: {
adapter: process.env.PAYLOAD_CMS_S3_BUCKET ? s3Adapter : null,
},
},
}),
],
});