mirror of
https://0xacab.org/sutty/sutty
synced 2024-11-16 10:31:41 +00:00
deprecar la migración de archivos estáticos
siempre fue super lenta y falible
This commit is contained in:
parent
61622a4c41
commit
6c9288b03b
2 changed files with 1 additions and 58 deletions
|
@ -57,7 +57,7 @@ class Site < ApplicationRecord
|
|||
# Carga el sitio Jekyll una vez que se inicializa el modelo o después
|
||||
# de crearlo
|
||||
after_initialize :load_jekyll
|
||||
after_create :load_jekyll, :static_file_migration!
|
||||
after_create :load_jekyll
|
||||
# Cambiar el nombre del directorio
|
||||
before_update :update_name!
|
||||
before_save :add_private_key_if_missing!
|
||||
|
@ -474,11 +474,6 @@ class Site < ApplicationRecord
|
|||
config.hostname = hostname
|
||||
end
|
||||
|
||||
# Migra los archivos a Sutty
|
||||
def static_file_migration!
|
||||
Site::StaticFileMigration.new(site: self).migrate!
|
||||
end
|
||||
|
||||
# Valida si el sitio tiene al menos una forma de alojamiento asociada
|
||||
# y es la local
|
||||
#
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class Site
|
||||
# Obtiene todos los archivos relacionados en artículos del sitio y los
|
||||
# sube a Sutty.
|
||||
class StaticFileMigration
|
||||
# Tipos de metadatos que contienen archivos
|
||||
STATIC_TYPES = %i[file image].freeze
|
||||
|
||||
attr_reader :site
|
||||
|
||||
def initialize(site:)
|
||||
@site = site
|
||||
end
|
||||
|
||||
def migrate!
|
||||
modified = site.docs.map do |doc|
|
||||
next unless STATIC_TYPES.map do |field|
|
||||
next unless doc.attribute? field
|
||||
next unless doc[field].path?
|
||||
next unless doc[field].static_file
|
||||
|
||||
true
|
||||
end.any?
|
||||
|
||||
log.write "#{doc.path.relative};no se pudo guardar\n" unless doc.save(validate: false)
|
||||
|
||||
doc.path.absolute
|
||||
end.compact
|
||||
|
||||
log.close
|
||||
|
||||
return if modified.empty?
|
||||
|
||||
# TODO: Hacer la migración desde el servicio de creación de sitios?
|
||||
site.repository.commit(file: modified,
|
||||
message: I18n.t('sites.static_file_migration'),
|
||||
usuarie: author)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def author
|
||||
@author ||= GitAuthor.new email: "sutty@#{Site.domain}",
|
||||
name: 'Sutty'
|
||||
end
|
||||
|
||||
def log
|
||||
@log ||= File.open(File.join(site.path, 'migration.csv'), 'w')
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue