28 lines
886 B
Ruby
28 lines
886 B
Ruby
namespace :after_party do
|
|
desc 'Deployment task: migrate_geo_area_data'
|
|
task migrate_geo_area_data: :environment do
|
|
puts "Running deploy task 'migrate_geo_area_data'"
|
|
|
|
progress = ProgressReport.new(Champs::CarteChamp.count)
|
|
|
|
Champs::CarteChamp.includes(:geo_areas).find_each do |champ|
|
|
geo_area = champ.geo_areas.find(&:selection_utilisateur?)
|
|
geo_json = champ.geo_json_from_value
|
|
|
|
if geo_area.blank? && geo_json.present?
|
|
GeoArea.create(
|
|
champ: champ,
|
|
geometry: geo_json,
|
|
source: GeoArea.sources.fetch(:selection_utilisateur)
|
|
)
|
|
progress.inc
|
|
end
|
|
end
|
|
|
|
progress.finish
|
|
|
|
# Update task as completed. If you remove the line below, the task will
|
|
# run with every deploy (or every time you call after_party:run).
|
|
AfterParty::TaskRecord.create version: '20190731152733'
|
|
end
|
|
end
|