Cambiar la ubicación del sitio al cambiar su nombre

This commit is contained in:
f 2021-08-14 20:24:02 -03:00
parent 341a693a35
commit b20b15317b

View file

@ -23,6 +23,9 @@ class Deploy < ApplicationRecord
after_initialize :default_hostname! after_initialize :default_hostname!
# Eliminar los archivos generados por el deploy. # Eliminar los archivos generados por el deploy.
before_destroy :remove_destination! before_destroy :remove_destination!
# Cambiar el lugar del destino antes de guardar los cambios, para que
# el hostname anterior siga estando disponible.
before_update :rename_destination!, if: :destination_changed?
# Los hostnames alternativos se crean después de actualizar, cuando ya # Los hostnames alternativos se crean después de actualizar, cuando ya
# se modificó el hostname. # se modificó el hostname.
around_update :create_alternative_domain!, if: :destination_changed? around_update :create_alternative_domain!, if: :destination_changed?
@ -171,7 +174,13 @@ class Deploy < ApplicationRecord
# @return [Boolean] # @return [Boolean]
def default_hostname! def default_hostname!
self.hostname ||= default_hostname self.hostname ||= default_hostname
true end
# Cambia la ubicación de destino cuando cambia el hostname.
def rename_destination!
return unless File.exist? destination_was
FileUtils.mv destination_was, destination
end end
# Elimina los archivos generados por el deploy # Elimina los archivos generados por el deploy