Schienen cron mit, Wann auch immer, die Einstellung der Umgebung
Diese Frage wird wohl nur Sinn machen, wenn Sie wissen, über die, wenn gem zur Erstellung von cron-jobs. Ich habe eine Aufgabe in meinen Zeitplan.rb wie
every 1.day, :at => '4am' do
command "cd #{RAILS_ROOT} && rake thinking_sphinx:stop RAILS_ENV=#{RAILS_ENV}"
command "cd #{RAILS_ROOT} && rake thinking_sphinx:index RAILS_ENV=#{RAILS_ENV}"
command "cd #{RAILS_ROOT} && rake thinking_sphinx:start RAILS_ENV=#{RAILS_ENV}"
end
Jedoch wenn ich update meine crontab mit
whenever --update-crontab appname --set environment=production
die cron-jobs noch RAILS_ENV=Entwicklung. Meine Aufgaben in Produktion und Entwicklung sind das gleiche jetzt, ich muss nur ändern Sie die Umgebungsvariable weil thinking_sphinx kennen muss, um die aktuelle Umgebung. Irgendwelche Ideen auf, wie dies zu tun?
Dank!
InformationsquelleAutor der Frage Tony | 2009-07-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde in Erwägung ziehen, die "rake" - Verknüpfung, um es noch sauberer:
InformationsquelleAutor der Antwort
Wenn nicht, erkennen Ihre Umgebung, es ist nur standardmäßig Produktion.
Sie können die Umgebung für alle Aufträge, die mithilfe von set:
Oder pro Auftrag:
InformationsquelleAutor der Antwort Trung LE
Nicht schreiben RAILS_ENV variable. Es sollte Sie automatisch.
Es funktioniert in meiner app:
InformationsquelleAutor der Antwort Simone Carletti
Etwas anderes möchten Sie vielleicht zu versuchen, wenn Sie mit bundler und capistrano.
In Ihrem bereitstellen.rb-Datei, wenn Sie die :whenever_command, NICHT einfach, dies zu tun:
Statt:
Nun die Umgebungsvariable RAILS_ENV verfügbar sein wird, wenn der Zeitplan.rb-Datei geladen wird, damit im Zeitplan.rb kannst du jetzt tun:
Voila! Sie sind bereit zu gehen.
InformationsquelleAutor der Antwort Tim Lowrimore
Für
Whenever (0.9.2)
Verwenden Sie die
@environment
variable für Umwelt-check:InformationsquelleAutor der Antwort yogendra689
Watch out, wenn Sie wollen, passieren mehr als ein param Wann.
Sie haben es zu tun so:
InformationsquelleAutor der Antwort kaczor1984
Neueste Wann auch immer erlaubt einfach Capistrano integration. Sie können fügen Sie die folgende Bereitstellung.rb:
InformationsquelleAutor der Antwort Laurynas
Dieser Fragen wurde eine lange Zeit, so dass ich dachte, ich würde teilen, was gearbeitet, wenn 0.9.7 Ruby 2.4.0 und SCHIENEN 5.0.1. In der zuvor genannten Antwort-gibt es eine Menge in der Nähe versucht, aber syntax-Fehler plagen Sie. Unten ist das, was gearbeitet und sehr einfachen Ansatz.
Zeitplan.rb
Update wird die crontab(dev)
Ergebnisse(dev)
Update wird die crontab(prod)
Ergebnisse(prod)
Hoffentlich kann jemand helfen.
Happy Coding!
InformationsquelleAutor der Antwort Jon R.
Fügen Sie die folgende Codezeile am Anfang der config - /Zeitplan.rb.
und aktualisieren Sie die crontab mit dem folgenden Befehl.
dann endlich starten crontab mit dem Befehl
Thats it!
Letzten config/Zeitplan.rb sieht so
InformationsquelleAutor der Antwort Satishakumar Awati