Question

J'ai un problème au moment où nous courons un CMS dans un site (browsercms) qui permet de les télécharger des fichiers utilisateur. Cependant, chaque fois que je faire un Déployez Capistrano court un redémarrage à froid nuking ainsi tout Uploaded fichiers.

Quelqu'un at-il des suggestions quant à la façon de prévenir le redémarrage à froid, et juste faire une traction ou une façon de déplacer les fichiers téléchargés ailleurs, sans avoir à modifier le code d'application?

Était-ce utile?

La solution

Cela pourrait ne pas être la bonne approche.

Vous devez inclure votre dossier 'images' dans votre .gitignore et un lien symbolique dans le dossier current_release de $ / images à $ shared / images.

Cela peut être fait automatiquement à chaque déploiement si vous mettez dans votre deploy.rb:

task :link_imgs do     
  run "ln -s #{shared_path}/photos #{release_path}/photos" 
end    

after "deploy:update_code", :link_imgs

Je l'ai fait la même chose avec mon CMS et il fonctionne comme un charme

Autres conseils

Cela ne correspond pas tout à fait vos critères de « sans avoir à modifier le code d'application ».

Cependant après avoir exécuté un problème similaire, je bougeais mon image téléchargée à partir de /public/images le répertoire /public/system/images ne /public/system « versionné » par chaque déploiement de Capistrano de sorte que les images survivre.

pourrait-il être le Capistrano 'versioning' origine du problème (au lieu d'une remise à zéro git)

cap Déployez deploy: mise à jour et deploy: restart

deploy: mise à jour rend le versioning, la copie des choses

deploy: restart ne le vrai redémarrage, surcharger votre convenince, généralement dans votre fichier config / deploy.rb

namespace :deploy do
    desc "Softly restart the server"
    task :restart, :roles => :app, :except => { :no_release => true } do
      my_own.restart_recipe
    end  
end
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top