Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Uses Amazon S3 for storing attachments
Branch: master

Merge pull request #11 from JangoSteve/erb-yml

Run s3.yml through erb for ENV variables
latest commit 81daac3189
@tigrish authored
Failed to load latest commit information.
config removed verify_ssl option. now that the certs are included, no reason…
lang Initial Checkin
lib Run s3.yml through erb for ENV variables
rails Updated plugin so it will load as a Rails gem
test Initial Checkin
README.rdoc added rake task to sync files directory with s3. updated README
Rakefile Added a Rakefile which a Jeweler config to create a gem.
VERSION Added a Rakefile which a Jeweler config to create a gem.
ca-bundle.crt included Amazon AWS cert bundle
init.rb * Make plugin compatible with 0.8.5 by requiring the correct applicat…
redmine_s3.gemspec Updated plugin so it will load as a Rails gem


S3 plugin for Redmine


This Redmine plugin makes file attachments be stored on “Amazon S3” rather than on the local filesystem.


  1. Make sure Redmine is installed and cd into it's root directory

  2. git clone git:// vendor/plugins/redmine_s3

  3. cp vendor/plugins/redmine_s3/config/s3.yml.example config/s3.yml

  4. Edit config/s3.yml with your favourite editor

  5. Restart mongrel/upload to production/whatever

  6. Optional: Run 'rake redmine_s3:files_to_s3' to upload files in your files folder to s3

Options Overview

  • The bucket specified in s3.yml will be created automatically when the plugin is loaded (this is generally when the server starts).

  • Deprecated (no longer supported, specify endpoint option instead) If you have created a CNAME entry for your bucket set the cname_bucket option to true in s3.yml and your files will be served from that domain.

  • After files are uploaded they are made public, unless private is set to true.

  • Public and private files can use HTTPS urls using the secure option

  • Files can use private signed urls using the private option

  • Private file urls can expire a set time after the links were generated using the expires option

Options Detail

  • access_key_id: string key (required)

  • secret_access_key: string key (required)

  • bucket: string bucket name (required)

  • endpoint: string endpoint instead of

  • secure: boolean true/false

  • private: boolean true/false

  • expires: integer number of seconds for private links to expire after being generated

  • Defaults to private: false, secure: false, default endpoint, and default expires

Reporting Bugs and Getting Help

Bugs and feature requests may be filed at

Something went wrong with that request. Please try again.