Move Service struct def to its own module

Service struct now defined in lib/service.ex

This makes a bit more sense now that its a shared resource, rather than
just defining it only in the update.exs script.
This commit is contained in:
Ben Busby 2021-11-10 11:48:39 -07:00
parent f33279c41b
commit d334fc7695
No known key found for this signature in database
GPG Key ID: 339B7B7EB5333D14
2 changed files with 9 additions and 12 deletions

6
lib/service.ex Normal file
View File

@ -0,0 +1,6 @@
defmodule Service do
defstruct type: nil,
test_url: nil,
fallback: nil,
instances: []
end

View File

@ -1,12 +1,3 @@
defmodule Service do
defstruct [
type: nil,
test_url: nil,
fallback: nil,
instances: []
]
end
defmodule Instances do
@fallback_str Application.fetch_env!(:farside, :fallback_str)
@update_file Application.fetch_env!(:farside, :update_file)
@ -15,7 +6,7 @@ defmodule Instances do
def init() do
File.rename(@update_file, "#{@update_file}-prev")
update(@services_json)
update
end
def request(url) do
@ -33,8 +24,8 @@ defmodule Instances do
end
end
def update(filename) do
{:ok, file} = File.read(filename)
def update do
{:ok, file} = File.read(@services_json)
{:ok, json} = Poison.decode(file, as: [%Service{}])
# Loop through all instances and check each for availability