Nouveau sur les rails, open source et bientôt prêt à être déployé dans un environnement de production, j'ai quelques considérations de sécurité.Gestion de la sécurité pour les rails open source 3 application stockée sur github
Comment gérer le database.yml est couvert assez bonne par, how-to-manage-rails-database-yml
Mais de mon point de vue, il y a plus de paramètres de configuration dans une application qui rails normale ne devrait pas être hébergé dans un dépôt GitHub public et déployé en production
- devise.rb -> config.pepper
- secret_token.rb -> Application.config.secret_token
- Capistrano -> deploy.rb
- ...
Ajout config/****/* à .gitignore empêcherait non seulement les nouveaux développeurs de installer ensemble, db: create, db: migrate, rails serveur mais aussi de garder la configuration de production à jour si une nouvelle gemme avec un initialiseur est installer LED.
Une autre possibilité serait d'ajouter un environnement.yml avec une configuration sensible, comme database.yml où la configuration sensible dans les initialiseurs sera surchargée?
Cela facilitera la mise en service après une vérification de paiement et l'environnement de production sera facile à entretenir.
Des idées sur comment aborder mes problèmes ci-dessus?
Merci pour votre réponse rapide et il se sent bien que votre solution est semblable à mon imaginaire. Y a-t-il d'autres paramètres sensibles dans un site de rails de vanille? Je vais essayer votre solution, c'est simple et je pense que cela correspondra à mes besoins pour commencer. – orjan
Je ne sais pas comment le lien symbolique peut fonctionner pour vous lorsque vous exécutez "cap deploy: migrations" puisque les liens s'exécutent sur la version et non sur le répertoire en cours? J'avais besoin de changer le lien symbolique pour> exécuter "ln -nfs # {chemin_partagé} /config/database.yml # {chemin_d'accès} /config/database.yml"
orjan
woops, votre droite :) – iain