Siempre vincular con la ubicación relativa
Para que podamos cambiar la estructura de directorios sin romper los links.
This commit is contained in:
parent
5a53facaa7
commit
339c02c92b
1 changed files with 19 additions and 6 deletions
|
@ -5,19 +5,24 @@ class DeployWww < Deploy
|
|||
# La forma de hacer este deploy es generar un link simbólico entre el
|
||||
# directorio canónico y el actual.
|
||||
#
|
||||
# XXX: Asume que el origen y el destino se encuentran en el mismo
|
||||
# directorio (¿por qué no estarían?)
|
||||
#
|
||||
# @return [Boolean]
|
||||
def deploy
|
||||
return true if File.symlink? destination
|
||||
# Eliminar los links rotos
|
||||
remove_destination! if broken?
|
||||
|
||||
File.symlink(site.deploy_local.hostname, destination).zero?
|
||||
# No hacer nada si ya existe.
|
||||
return true if exist?
|
||||
|
||||
# Generar un link simbólico con la ruta relativa al destino
|
||||
File.symlink(relative_path, destination).zero?
|
||||
end
|
||||
|
||||
# Siempre devuelve el espacio ocupado por el link simbólico, no el
|
||||
# destino.
|
||||
#
|
||||
# @return [Integer]
|
||||
def size
|
||||
File.size destination
|
||||
relative_path.size
|
||||
end
|
||||
|
||||
# El hostname por defecto incluye WWW
|
||||
|
@ -33,4 +38,12 @@ class DeployWww < Deploy
|
|||
def remove_destination!
|
||||
FileUtils.rm_f destination
|
||||
end
|
||||
|
||||
# Obtiene la ubicación relativa del deploy local hacia la ubicación de
|
||||
# este deploy
|
||||
#
|
||||
# @return [String]
|
||||
def relative_path
|
||||
Pathname.new(site.deploy_local.destination).relative_path_from(File.dirname(destination)).to_s
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue