Add task to set published on existing budgets
Note we're making the validation rule dynamic so it's affected by the way we stub the constant in the tests to emulate data created in old applications. Co-Authored-By: Javi Martín <javim@elretirao.net>
This commit is contained in:
committed by
Javi Martín
parent
28caabecdf
commit
77aaa5e973
@@ -10,4 +10,23 @@ namespace :budgets do
|
||||
Budget.last.email_unselected
|
||||
end
|
||||
end
|
||||
|
||||
desc "Set published attribute"
|
||||
task set_published: :environment do
|
||||
Budget.where(published: nil).each do |budget|
|
||||
if budget.phase == "drafting"
|
||||
if budget.phases.enabled.first.present?
|
||||
next_enabled_phase = budget.phases.enabled.where.not(kind: "drafting").first.kind
|
||||
else
|
||||
next_enabled_phase = "informing"
|
||||
budget.phases.informing.update!(enabled: true)
|
||||
end
|
||||
|
||||
budget.update!(phase: next_enabled_phase)
|
||||
budget.update!(published: false)
|
||||
else
|
||||
budget.update!(published: true)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -7,6 +7,7 @@ namespace :consul do
|
||||
desc "Runs tasks needed to upgrade from 1.2.0 to 1.3.0"
|
||||
task "execute_release_1.3.0_tasks": [
|
||||
"db:load_sdg",
|
||||
"db:calculate_tsv"
|
||||
"db:calculate_tsv",
|
||||
"budgets:set_published"
|
||||
]
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user