Add checks for upgrade from 5.0.9

This commit is contained in:
Connor Rigby 2017-12-27 09:01:59 -08:00 committed by Connor Rigby
parent 5acbfe2ca8
commit 62a03cd2cf
2 changed files with 15 additions and 5 deletions

View file

@ -303,8 +303,12 @@ defmodule Farmbot.Firmware do
Logger.busy 1, "Initializing Firmware."
old = Farmbot.System.ConfigStorage.get_config_as_map()["hardware_params"]
case old["param_version"] do
nil -> spawn __MODULE__, :do_read_params_and_report_position, [%{}]
_ -> spawn __MODULE__, :do_read_params_and_report_position, [old]
nil ->
Logger.debug 3, "Setting up fresh params."
spawn __MODULE__, :do_read_params_and_report_position, [%{}]
_ ->
Logger.debug 3, "Setting up old params."
spawn __MODULE__, :do_read_params_and_report_position, [old]
end
{nil, %{state | initializing: true}}
end

View file

@ -95,9 +95,9 @@ defmodule Farmbot.Target.ConfigMigration.BeforeNetwork do
{:user_env, :type_check, true} <- {:user_env, :type_check, is_map(user_env)},
{:user_env, :type_cast, {:ok, user_env_enc}} <- {:user_env, :type_cast, Poison.encode(user_env)},
{:user_env, :update_config_value, :ok} <- {:user_env, :update_config_value, update_config_value(:string, "settings", "user_env", user_env_enc)},
{:smpx, :update_config_value, :ok} <- {:spmx, :update_config_value, update_config_value(:float, "hardware_params", spmx / 1)},
{:smpy, :update_config_value, :ok} <- {:spmy, :update_config_value, update_config_value(:float, "hardware_params", spmy / 1)},
{:smpz, :update_config_value, :ok} <- {:spmz, :update_config_value, update_config_value(:float, "hardware_params", spmz / 1)},
{:spmx, :update_config_value, :ok} <- {:spmx, :update_config_value, update_config_value(:float, "hardware_params", "movement_axis_nr_steps_x", spmx / 1)},
{:spmy, :update_config_value, :ok} <- {:spmy, :update_config_value, update_config_value(:float, "hardware_params", "movement_axis_nr_steps_y", spmy / 1)},
{:spmz, :update_config_value, :ok} <- {:spmz, :update_config_value, update_config_value(:float, "hardware_params", "movement_axis_nr_steps_z", spmz / 1)},
{:first_boot, :update_config_value, :ok} <- {:first_boot, :update_config_value, update_config_value(:bool, "settings", "first_boot", false)} do
Logger.success 1, "Configuration data from jsono file was merged."
:ok
@ -119,6 +119,12 @@ defmodule Farmbot.Target.ConfigMigration.BeforeNetwork do
is_nil(val) -> :ok
end
end) do
if Enum.count(migrated) > 0 do
ConfigStorage.update_config_value(:float, "hardware_params", "param_version", 1.0)
ConfigStorage.update_config_value(:float, "hardware_params", "movement_home_spd_x", 50.0)
ConfigStorage.update_config_value(:float, "hardware_params", "movement_home_spd_y", 50.0)
ConfigStorage.update_config_value(:float, "hardware_params", "movement_home_spd_z", 50.0)
end
:ok
else
{:error, "Failed to migrate params"}