Fix/update dirty worker
parent
b7f4ebba57
commit
d4245cf2df
|
@ -67,7 +67,8 @@ defmodule FarmbotExt.API.DirtyWorker do
|
|||
|> handle_changeset(rest, state)
|
||||
|
||||
# HTTP Error. (500, network error, timeout etc.)
|
||||
_ ->
|
||||
error ->
|
||||
Logger.error("HTTP Error: #{state.module} #{inspect(error)}")
|
||||
{:noreply, state, @timeout}
|
||||
end
|
||||
end
|
||||
|
@ -97,12 +98,14 @@ defmodule FarmbotExt.API.DirtyWorker do
|
|||
end
|
||||
|
||||
defp http_request(%{id: nil} = dirty, state) do
|
||||
Logger.info("#{state.module} clean request (post)")
|
||||
path = state.module.path()
|
||||
data = render(state.module, dirty)
|
||||
API.post(API.client(), path, data)
|
||||
end
|
||||
|
||||
defp http_request(dirty, state) do
|
||||
Logger.info("#{state.module} dirty request (patch)")
|
||||
path = state.module.path()
|
||||
data = render(state.module, dirty)
|
||||
API.patch(API.client(), path, data)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
defmodule FarmbotOS.Init.EnigmaFirmwareMissing do
|
||||
alias FarmbotCore.Asset.Private
|
||||
alias FarmbotCore.{Asset, Asset.Private}
|
||||
alias FarmbotCore.EnigmaHandler
|
||||
alias FarmbotFirmware.UARTTransport
|
||||
|
||||
|
@ -34,7 +34,10 @@ defmodule FarmbotOS.Init.EnigmaFirmwareMissing do
|
|||
FarmbotCore.Logger.warn(1, "firmware needs flashed creating `firmware.missing` enigma")
|
||||
Private.create_or_update_enigma!(%{priority: 100, problem_tag: "firmware.missing"})
|
||||
# Ignore fw/hw
|
||||
Private.mark_dirty!(current_fbos_config, %{firmware_hardware: nil, firmware_path: nil})
|
||||
%{firmware_hardware: nil, firmware_path: nil}
|
||||
|> Asset.update_fbos_config!()
|
||||
|> Private.mark_dirty!(%{})
|
||||
|
||||
:ok
|
||||
|
||||
{false, firmware_hardware} when is_binary(firmware_hardware) ->
|
||||
|
|
|
@ -12,11 +12,11 @@ defmodule FarmbotOS.SysCalls.FlashFirmware do
|
|||
Expected a tty to exist, but none was found.
|
||||
"""
|
||||
|
||||
fbos_config = Asset.fbos_config()
|
||||
|
||||
case Avrdude.flash(hex_file, tty) do
|
||||
{_, 0} ->
|
||||
Private.mark_dirty!(fbos_config, %{firmware_hardware: "arduino", firmware_path: "ttyACM0"})
|
||||
%{firmware_hardware: package, firmware_path: tty}
|
||||
|> Asset.update_fbos_config!()
|
||||
|> Private.mark_dirty!(%{})
|
||||
|
||||
Private.clear_enigma("firmware.missing")
|
||||
:ok
|
||||
|
|
Loading…
Reference in New Issue