90 lines
2.3 KiB
Elixir
90 lines
2.3 KiB
Elixir
use Mix.Config
|
|
|
|
config :farmbot, data_path: "/root"
|
|
|
|
# Disable tzdata autoupdates because it tries to dl the update file
|
|
# Before we have network or ntp.
|
|
config :tzdata, :autoupdate, :disabled
|
|
|
|
config :farmbot, Farmbot.Repo,
|
|
adapter: Sqlite.Ecto2,
|
|
loggers: [],
|
|
database: "/root/repo-#{Mix.env()}.sqlite3"
|
|
|
|
config :farmbot, Farmbot.System.ConfigStorage,
|
|
adapter: Sqlite.Ecto2,
|
|
loggers: [],
|
|
database: "/root/config-#{Mix.env()}.sqlite3"
|
|
|
|
config :farmbot, ecto_repos: [Farmbot.Repo, Farmbot.System.ConfigStorage]
|
|
|
|
config :logger, LoggerBackendSqlite, [
|
|
database: "/root/debug_logs.sqlite3",
|
|
max_logs: 10000
|
|
]
|
|
|
|
# Configure your our init system.
|
|
config :farmbot, :init, [
|
|
Farmbot.Target.Leds.AleHandler,
|
|
|
|
# Autodetects if a Arduino is plugged in and configures accordingly.
|
|
Farmbot.Firmware.UartHandler.AutoDetector,
|
|
|
|
# Allows for first boot configuration.
|
|
Farmbot.Target.Bootstrap.Configurator,
|
|
|
|
# Handles OTA updates from NervesHub
|
|
Farmbot.System.NervesHubClient,
|
|
|
|
# Start up Network
|
|
Farmbot.Target.Network,
|
|
|
|
# SSH Console.
|
|
Farmbot.Target.SSHConsole,
|
|
|
|
# Wait for DNS resolution
|
|
Farmbot.Target.Network.DnsTask,
|
|
|
|
# Stops the disk from getting full.
|
|
Farmbot.Target.Network.TzdataTask,
|
|
|
|
# Reports Disk usage every 60 seconds.
|
|
Farmbot.Target.DiskUsageWorker,
|
|
|
|
# Reports Memory usage every 60 seconds.
|
|
Farmbot.Target.MemoryUsageWorker,
|
|
|
|
# Reports SOC temperature every 60 seconds.
|
|
Farmbot.Target.SocTempWorker,
|
|
|
|
# Reports Uptime every 60 seconds.
|
|
Farmbot.Target.UptimeWorker,
|
|
|
|
# Reports Wifi info to BotState.
|
|
Farmbot.Target.Network.InfoSupervisor,
|
|
|
|
# Helps with hot plugging of serial devices.
|
|
Farmbot.Target.Uevent.Supervisor,
|
|
]
|
|
|
|
config :farmbot, :transport, [
|
|
Farmbot.BotState.Transport.AMQP,
|
|
Farmbot.BotState.Transport.HTTP,
|
|
Farmbot.BotState.Transport.Registry,
|
|
]
|
|
|
|
# Configure Farmbot Behaviours.
|
|
config :farmbot, :behaviour,
|
|
authorization: Farmbot.Bootstrap.Authorization,
|
|
system_tasks: Farmbot.Target.SystemTasks,
|
|
firmware_handler: Farmbot.Firmware.StubHandler,
|
|
pin_binding_handler: Farmbot.Target.PinBinding.AleHandler,
|
|
leds_handler: Farmbot.Target.Leds.AleHandler,
|
|
nerves_hub_handler: Farmbot.System.NervesHubClient
|
|
|
|
config :shoehorn,
|
|
init: [:nerves_runtime, :nerves_firmware_ssh],
|
|
handler: Farmbot.ShoehornHandler,
|
|
app: :farmbot
|
|
|
|
import_config("../nerves_hub.exs") |