Add env var for toggling cron task on/off

FARSIDE_CRON allows turning on/off the scheduled instance availability
check that occurs every 5 minutes by setting the variable to 1 (on) or 0
(off). The default behavior is "on".
This commit is contained in:
Ben Busby 2023-07-17 17:46:39 -06:00
parent 9104650cfe
commit 7693a6b063
No known key found for this signature in database
GPG key ID: B9B7231E01D924A1
2 changed files with 10 additions and 3 deletions

View file

@ -193,7 +193,7 @@ goes against what Farside is trying to solve. Use at your own discretion.
To run Farside without compiling, you can perform the following steps:
- Install dependencies: `mix deps.get`
- Initialize db contents: `mix run -e Farside.Instances.sync`
- Initialize db contents: `FARSIDE_CRON=0 mix run -e Farside.Instances.sync`
- Run Farside: `mix run --no-halt`
- Uses localhost:4001
@ -233,7 +233,11 @@ farside
</tr>
<tr>
<td>FARSIDE_SERVICES_JSON</td>
<td>The "services" JSON file to use for selecting instances (default: `services.json`)</td>
<td>The JSON file to use for selecting instances (default: `services.json`)</td>
</tr>
<tr>
<td>FARSIDE_CRON</td>
<td>Set to 0 to deactivate the scheduled instance availability check (default on).</td>
</tr>
</table>

View file

@ -7,7 +7,10 @@ defmodule Farside.Server do
end
def start_link(arg) do
if System.get_env("FARSIDE_TEST") do
test = System.get_env("FARSIDE_TEST")
cron = System.get_env("FARSIDE_CRON")
if test == "1" || cron == "0" do
IO.puts("Skipping sync job setup...")
else
Farside.Scheduler.new_job()