Refactorizar DeployWww
This commit is contained in:
parent
e1749d6c70
commit
fa9884afdd
1 changed files with 19 additions and 13 deletions
|
@ -2,33 +2,39 @@
|
||||||
|
|
||||||
# Vincula la versión del sitio con www a la versión sin
|
# Vincula la versión del sitio con www a la versión sin
|
||||||
class DeployWww < Deploy
|
class DeployWww < Deploy
|
||||||
store :values, accessors: %i[], coder: JSON
|
# La forma de hacer este deploy es generar un link simbólico entre el
|
||||||
|
# directorio canónico y el actual.
|
||||||
before_destroy :remove_destination!
|
#
|
||||||
|
# XXX: Asume que el origen y el destino se encuentran en el mismo
|
||||||
|
# directorio (¿por qué no estarían?)
|
||||||
|
#
|
||||||
|
# @return [Boolean]
|
||||||
def deploy
|
def deploy
|
||||||
File.symlink?(destination) ||
|
return true if File.symlink? destination
|
||||||
File.symlink(site.hostname, destination).zero?
|
|
||||||
end
|
File.symlink(site.deploy_local.hostname, destination).zero?
|
||||||
|
|
||||||
def limit
|
|
||||||
1
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# @return [Integer]
|
||||||
def size
|
def size
|
||||||
File.size destination
|
File.size destination
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# @return [String]
|
||||||
def destination
|
def destination
|
||||||
File.join(Rails.root, '_deploy', fqdn)
|
File.join(Rails.root, '_deploy', hostname)
|
||||||
end
|
end
|
||||||
|
|
||||||
def fqdn
|
# El hostname por defecto incluye WWW
|
||||||
"www.#{site.hostname}"
|
#
|
||||||
|
# @return [String]
|
||||||
|
def default_hostname
|
||||||
|
"www.#{site.deploy_local.hostname}"
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
# Elimina el link simbólico si se elimina este deploy.
|
||||||
def remove_destination!
|
def remove_destination!
|
||||||
FileUtils.rm_f destination
|
FileUtils.rm_f destination
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue