From e6b2793953a7d030da6872c0132e5f1ac386327e Mon Sep 17 00:00:00 2001 From: f Date: Wed, 25 Sep 2019 13:05:18 -0300 Subject: [PATCH] guardar el destino y otros valores previene los cambios de nombres --- app/models/deploy_local.rb | 15 ++++++++------- app/models/deploy_zip.rb | 19 +++++++------------ 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index 8a1f693..9f143bd 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -3,9 +3,8 @@ # Alojamiento local, solo genera el sitio, con lo que no necesita hacer # nada más class DeployLocal < Deploy - store :values, accessors: %i[destination], coder: JSON + store :values, accessors: %i[], coder: JSON - before_create :destination! before_destroy :remove_destination! # Realizamos la construcción del sitio usando Jekyll y un entorno @@ -32,6 +31,10 @@ class DeployLocal < Deploy end.inject(:+) end + def destination + File.join(Rails.root, '_deploy', site.hostname) + end + private def mkdir @@ -69,13 +72,11 @@ class DeployLocal < Deploy run %(bundle install --no-cache --path="#{gems_dir}") end + # rubocop:disable Metrics/LineLength def jekyll_build - run "bundle exec jekyll build --destination \"#{escaped_destination}\"" - end - - def destination! - self.destination ||= File.join(Rails.root, '_deploy', site.hostname) + run "bundle exec jekyll build --trace --destination \"#{escaped_destination}\"" end + # rubocop:enable Metrics/LineLength # no debería haber espacios ni caracteres especiales, pero por si # acaso... diff --git a/app/models/deploy_zip.rb b/app/models/deploy_zip.rb index 19de89e..ec8973d 100644 --- a/app/models/deploy_zip.rb +++ b/app/models/deploy_zip.rb @@ -6,10 +6,7 @@ require 'zip' # # TODO: Firmar con minisign class DeployZip < Deploy - store :values, accessors: %i[destination file path], coder: JSON - - before_create :destination! - before_create :file!, :path! + store :values, accessors: %i[], coder: JSON # Una vez que el sitio está generado, tomar todos los archivos y # y generar un zip accesible públicamente. @@ -44,17 +41,15 @@ class DeployZip < Deploy File.size path end - private - - def destination! - self.destination ||= File.join(Rails.root, '_deploy', site.hostname) + def destination + File.join(Rails.root, '_deploy', site.hostname) end - def file! - self.file ||= "#{site.hostname}.zip" + def file + "#{site.hostname}.zip" end - def path! - self.path = File.join(destination, file) + def path + File.join(destination, file) end end