2009-11-15 6 views
4

У меня есть проект Rails, который я буду развертывать до впечатляюще потрясающего Heroku.Автоматизация развертывания файлов на Amazon S3?

Я бы очень хотел, чтобы автоматы могли автоматически перенаправить мои ресурсы на Amazon S3, а ресурсы в этом случае были моими изображениями, таблицами стилей и javascript.

Очевидно, я могу написать какую-то задачу capistrano, чтобы сделать это сам, но кто-нибудь знает что-то, что делает это уже?

Примечание: Мне не нужно загружать пользовательские файлы на S3, поскольку я делаю это уже через скрепку. Я говорю о фактических файлах проекта, необходимых для запуска сайта.

+0

Почему вы хотите загрузить свои статические активы в S3? Использовать Cloudfront? Поставить их в европейское ведро? Heroku отлично хранит статические активы, поэтому, если вы не делаете что-то фантастическое, это действительно вопрос о том, какие статические активы загружаются с вашего S3-аккаунта (где вы платите за пропускную способность) или от серверов, размещенных на Amazon от Heruko;) –

+0

Я был читайте здесь информацию о размерах файлов и слизнях: http://docs.heroku.com/constraints#large-static-assets –

+0

@Toby Страница, на которую вы ссылаетесь, больше не доступна :( –

ответ

0

Я нашел хорошую статью, которая фактически объясняет способ минимизации, сжатия и загрузки статических контентов (js/css) в Amazon S3 с использованием сценария Capistrano.

Проверить статью на http://www.makeurownrules.com/ruby-on-rails/minify-compress-synch-amazons3-capistrano

Cheers, Капил

+1

Если у вас есть какие-либо шансы, вы можете обновить эту ссылку? Он больше не работает. –

0

Я наткнулся на ваш вопрос, глядя на тот же ответ. У меня есть хороший опыт работы с Jammit как упаковщик активов, и я просто столкнулся с драгоценным камнем, который может разворачиваться на S3 и, по-видимому, идеально соответствует вашим потребностям.

https://github.com/railsjedi/jammit-s3

Бест, Йерун

0

Я попытался Jammit S3, но это не имеет контроля, который я искал, так что я написал свой собственный сценарий CLI и просто удосужился его публикации:

https://github.com/bradt/git-deploy-s3

0

Существует также capistrano-s3 драгоценный камень, который похож на jammit-s3, но немного проще и рамки агностиком.

Он просто публикует все файлы в вашей общей папке на amazon s3, используя capistrano, чтобы вы могли добавлять пользовательские перехватчики. Посмотрите на документ здесь:

https://github.com/hooktstudios/capistrano-s3

Я не занимается CloudFront инвалидации, но я планирую добавить эту функцию.