fix test url issue

This commit is contained in:
mithereal 2022-07-29 21:55:47 -07:00
parent 75c36ae6af
commit a992934e11
3 changed files with 20 additions and 16 deletions

View File

@ -38,7 +38,7 @@ defmodule Farside do
Farside.Instance.Supervisor.list()
|> Enum.reduce(%{}, fn service, acc ->
{_, data} = :ets.lookup(String.to_atom(service), :data) |> List.first()
IO.inspect(data, label: "data")
Map.put(
acc,
String.replace_prefix(
@ -51,7 +51,7 @@ defmodule Farside do
end)
end
def get_service(service \\ "libreddit/r/popular") do
def get_service(service) do
service_name =
Enum.find_value(
@parent_services,

View File

@ -62,20 +62,23 @@ defmodule Farside.Application do
service = struct(%Service{}, service_atom)
request_urls =
test_urls =
Enum.map(service.instances, fn x ->
x <>
EEx.eval_string(
service.test_url,
query: Enum.random(queries)
)
test_url =
x <>
EEx.eval_string(
service.test_url,
query: Enum.random(queries)
)
{test_url, x}
end)
tasks =
for request_url <- request_urls do
for {test_url, instance} <- test_urls do
Task.async(fn ->
reply = Farside.Http.request(request_url, service.type)
{request_url, reply}
reply = Farside.Http.request(test_url, service.type)
{test_url, reply, instance}
end)
end
@ -87,11 +90,14 @@ defmodule Farside.Application do
res || Task.shutdown(task, :brutal_kill)
end)
|> Enum.reject(fn x -> x == nil end)
|> Enum.map(fn {_, value} -> value end)
|> Enum.filter(fn {instance_url, value} ->
|> Enum.filter(fn {_, data} ->
{_test_url, value, _instance} = data
value == :good
end)
|> Enum.map(fn {url, _} -> url end)
|> Enum.map(fn {_, data} ->
{_test_url, _value, instance} = data
instance
end)
service = %{service | instances: instances}

View File

@ -51,8 +51,6 @@ defmodule Farside.Router do
service
end
IO.inspect(service_name, label: "service_name")
path =
cond do
service_name != service ->