ikiwiki/ plugins/ amazon s3

Plugin: amazon_s3
Author: Joey
Included in ikiwiki: yes
Enabled by default: no
Included in goodstuff: no
Currently enabled: no

This plugin allows ikiwiki to publish a wiki in the Amazon Simple Storage Service (S3). As pages are rendered, ikiwiki will upload them to Amazon S3. The entire wiki contents, aside from the ikiwiki CGI, can then be served directly out of Amazon S3.

You'll need the Net::Amazon::S3 and File::MimeInfo perl modules and an Amazon S3 account to use this plugin.

configuration

This plugin uses the following settings in the setup file:

Note that you should still set destdir in the setup file. The files that are uploaded to Amazon S3 will still be written to the destdir, too.

Likewise, you will probably want to set the url in the setup file. The url can use the foo.s3.amazonaws.com domain name, or another domain name that is a CNAME for it.

The hardlink config file setting is not compatible with this plugin.

data transfer notes

If you run 'ikiwiki -setup my.setup' to force a rebuild of your wiki, the entire thing will be re-uploaded to Amazon S3. This will take time, and cost you money, so it should be avoided as much as possible.

If you run 'ikiwiki -setup my.setup -refresh', ikiwiki will only upload the modified pages that it refreshes. Faster and cheaper. Still, if you have very large pages (for example, a page that inlines hundreds of other pages .. or is just very large), the complete page contents will be re-uploaded each time it's changed. Amazon S3 does not currently support partial/rsync type uploads.

Copy and rename detection is not done, so if you copy or rename a large file, it will be re-uploaded, rather than copied.

deleting a bucket

You can use "ikiwiki -setup my.setup --delete-bucket" to delete anything that's in the configured bucket, and remove the bucket.