4

We have written a custom storage extension for the FileSystem binding to deploy binaries to Amazon S3. The source code is here.

During publishing our files are written to disk on the path specified in the Binary binding below. We do not want to write the files to the filesystem since we are already transporting them to S3.

How could we tell the Deployer to not write binaries to the filesystem?

Also, if we were to cleanup this folder, would it affect our ability to UnPublish the content? I don't think so, as only the Metadata written by the deployer is required for UnPublishing and Re-Publishing.

<Storage Type="filesystem" Class="com.tridion.storage.extensions.filesystem.CDNFSDAOFactory" Id="defaultDataFile" defaultFilesystem="true">
     <Root Path="D:\TridionData\Binary" />
</Storage>

1 Answer 1

3

I have built a very similar solution for a customer and the step of storing the binaries on the deployer filesystem had two advantages for us:

  1. it makes it much easier to debug any issues (as you can see if the deployer is working in principal and only the extension is at fault)
  2. it made the upload to S3 much easier as the library we used would determine the mimetype from the file extension automatically

You could of course have the binaries stored in the broker database but I'm assuming you would want Tridion to not store the binary at all (well; not the content; you would probably want the metadata for link resolving etc).

To my knowledge you cannot instruct the default filesystemdeployer to deploy metadata only so the nearest feasible solution would be to have your storage extension delete the deployed binary from the filesystem after Tridion deploys it. That way you do not need to depend on an external cleanup routine.

Removing the published content of binaries does not affect the deployer's ability to redeploy or undeploy the content.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.