Schienen 3.0.1 dynamische Asset-Generierung vor / nach der Capistrano-Bereitstellung

  • Ich arbeite mit Rails 3.0.1, und während wir beabsichtigen, zu 3.1 und der Asset-Pipeline zu wechseln, suche ich nach Lösungen / Workarounds für die Generierung von Assets während der heißen Neustarts von Einhörern.

    Im Wesentlichen werden wir derzeit auf unserer Site bereitgestellt. Wenn die Bereitstellung abgeschlossen ist, wird der "aktuelle" Symlink in das neue Verzeichnis geändert, in dem die statischen Assets noch nicht vorhanden sind. Nach ungefähr 60 Sekunden werden alle Assets generiert und alles ist in Ordnung, aber für die 60 Sekunden vor der Generierung der Assets ist unsere Website im Wesentlichen inaktiv.

    Fragen:

    1. Wenn ich die Dateien aus dem alten Ausgabeverzeichnis in das neue Verzeichnis kopiere, überschreibt die Asset-Generierung die älteren kopierten Dateien?
    2. Wo wird im Schienencode die Asset-Generierung durchgeführt? ActionPack Dispatcher?
    3. Wird die Generierung dieser Assets bei der Initialisierung der App oder zu einem anderen Zeitpunkt durchgeführt?
    22 November 2011
    pablo
1 answer
  • Wenn Ihr Layout in etwa so aussieht:

     /srv/yourapplication/current
     

    Sie sollten einen freigegebenen Ordner

     /srv/yourapplication/shared/assets
     

    und verknüpfen Sie öffentliche / Assets mit / srv / yourapplication / shared / assets

    Auf diese Weise befinden sich jedes Mal, wenn sich Ihre alten Assets und neuen Assets im selben Ordner befinden und ordnungsgemäß verwaltet werden.

    09 December 2011
    Patrick Tescher