Управление безопасностью для приложения rails 3 с открытым исходным кодом, хранящегося на github

Новичок в rails, открытый исходный код и скоро готовый к развертыванию в производственной среде, у меня есть некоторые соображения безопасности.

Как работать с database.yml довольно хорошо описано в how-to-manage-rails-database-yml

Но, с моей точки зрения, в обычном приложении rails есть больше настроек конфигурации, которые не должны размещаться в общедоступном репозитории github и развертываться в производственной среде, например

  • devise.rb -> config.pepper
  • secret_token.rb -> Application.config.secret_token
  • capistrano -> deploy.rb
  • ...

Добавление config / **** / * в .gitignore не только помешало бы новым разработчикам установить пакет, db: create, db: migrate, rails server , но и сохранить рабочую конфигурацию до дата, если установлен новый гем с инициализатором.

Другой возможностью было бы добавить environment.yml с конфиденциальной конфигурацией, например database.yml, где конфиденциальная конфигурация в инициализаторах будет отменена?

Это упростит установку и запуск после чистой проверки, а производственную среду будет легко поддерживать.

Есть идеи, как решить мои проблемы, указанные выше?

7
задан Community 23 May 2017 в 11:47
поделиться