summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Bundle/IkiWiki/Extras.pm1
-rw-r--r--IkiWiki/Render.pm2
-rw-r--r--doc/ikiwiki.setup12
-rw-r--r--doc/plugins/amazon_s3.mdwn7
-rw-r--r--docwiki.setup5
5 files changed, 25 insertions, 2 deletions
diff --git a/Bundle/IkiWiki/Extras.pm b/Bundle/IkiWiki/Extras.pm
index a9f737215..2c259f204 100644
--- a/Bundle/IkiWiki/Extras.pm
+++ b/Bundle/IkiWiki/Extras.pm
@@ -27,6 +27,7 @@ Text::Typography
Text::Textile
Text::WikiFormat
XML::Feed
+Net::Amazon::S3
=head1 AUTHOR
diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm
index 959279fc8..8591731dc 100644
--- a/IkiWiki/Render.pm
+++ b/IkiWiki/Render.pm
@@ -214,7 +214,7 @@ sub render ($) { #{{{
if (link($srcfile, $config{destdir}."/".$file)) {
return;
}
- # if hardlink fails, fall back top copying
+ # if hardlink fails, fall back to copying
}
my $srcfd=readfile($srcfile, 1, 1);
diff --git a/doc/ikiwiki.setup b/doc/ikiwiki.setup
index a151050e7..997dcd18e 100644
--- a/doc/ikiwiki.setup
+++ b/doc/ikiwiki.setup
@@ -171,4 +171,16 @@ use IkiWiki::Setup::Standard {
# For use with the pinger plugin, how many seconds to wait before
# timing out.
#pinger_timeout => 15.
+
+ # For use with the amazon S3 plugin, your public access key id.
+ #amazon_s3_key_id => 'XXXXXXXXXXXXXXXXXXXX',
+ # And a file holding your secret key. This file *must* not be
+ # readable by others!
+ #amazon_s3_key_file => "/home/me/.hide/.s3_key
+ # The globally unique name of the bucket to use to store the wiki.
+ #amazon_s3_bucket => "mywiki",
+ # A prefix to prepend to each page name.
+ #amazon_s3_prefix => "wiki/",
+ # Uncomment to use the S3 European datacenter.
+ #amazon_s3_location => "EU",
}
diff --git a/doc/plugins/amazon_s3.mdwn b/doc/plugins/amazon_s3.mdwn
index 855569b42..f1887d970 100644
--- a/doc/plugins/amazon_s3.mdwn
+++ b/doc/plugins/amazon_s3.mdwn
@@ -11,6 +11,11 @@ modules and an Amazon S3 account to use this plugin.
## configuration
+Important note: You should seriously consider turning off `usedirs` before
+enabling this plugin. If `usedirs` is enabled, every page has to be stored
+in S3 *twice*, as "page/index.html" and as "page/". That will cost you
+money and bandwidth.
+
This plugin uses the following settings in the setup file:
* `amazon_s3_key_id` - Set to your public access key id.
@@ -35,6 +40,8 @@ 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
diff --git a/docwiki.setup b/docwiki.setup
index 0a6a86678..bbe2d438a 100644
--- a/docwiki.setup
+++ b/docwiki.setup
@@ -15,5 +15,8 @@ use IkiWiki::Setup::Standard {
syslog => 0,
userdir => "users",
usedirs => 0,
- add_plugins => [qw{goodstuff version haiku polygen fortune}],
+ add_plugins => [qw{goodstuff version polygen fortune amazon_s3}],
+ amazon_s3_key_id => '08TJMT99S3510QHZEP82',
+ amazon_s3_bucket => 'ikiwiki-test',
+ amazon_s3_key_file => "/home/joey/.hide/aws_secret_access_key",
}