summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md15
-rw-r--r--config/config.exs2
-rw-r--r--lib/farside/application.ex17
-rw-r--r--lib/farside/router.ex (renamed from lib/privacy_revolver/router.ex)4
-rw-r--r--lib/privacy_revolver/application.ex17
-rw-r--r--mix.exs6
-rw-r--r--test/farside_test.exs (renamed from test/privacy_revolver_test.exs)4
-rw-r--r--update.exs10
8 files changed, 45 insertions, 30 deletions
diff --git a/README.md b/README.md
index 88082d7..8d78543 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,16 @@
-# Privacy Revolver
+# Farside
+FOSS alternative redirecting service
[![Elixir CI](https://github.com/benbusby/privacy-revolver/actions/workflows/elixir.yml/badge.svg)](https://github.com/benbusby/privacy-revolver/actions/workflows/elixir.yml)
-A smart redirecting proxy for privacy-friendly frontends
+A tool for evenly distributing traffic across various open source alternative frontends
+
+### Development
+
+- Install [redis](https://redis.io)
+- Install [elixir](https://elixir-lang.org/install.html)
+- Start redis: `redis-server /usr/local/etc/redis.conf`
+- Install dependencies: `mix deps.get`
+- Initialize redis contents: `mix run update.exs`
+- Run Farside: `mix run --no-halt`
+ - Uses localhost:4001
diff --git a/config/config.exs b/config/config.exs
index 7d74cd3..11fa98f 100644
--- a/config/config.exs
+++ b/config/config.exs
@@ -1,6 +1,6 @@
import Config
-config :privacy_revolver,
+config :farside,
redis_conn: "redis://localhost:6379",
fallback_str: "-fallback",
update_file: ".update-results",
diff --git a/lib/farside/application.ex b/lib/farside/application.ex
new file mode 100644
index 0000000..708ff0d
--- /dev/null
+++ b/lib/farside/application.ex
@@ -0,0 +1,17 @@
+defmodule Farside.Application do
+ @redis_conn Application.fetch_env!(:farside, :redis_conn)
+ @moduledoc false
+
+ use Application
+
+ @impl true
+ def start(_type, _args) do
+ children = [
+ Plug.Cowboy.child_spec(scheme: :http, plug: Farside.Router, options: [port: 4001]),
+ {Redix, {@redis_conn, [name: :redix]}}
+ ]
+
+ opts = [strategy: :one_for_one, name: Farside.Supervisor]
+ Supervisor.start_link(children, opts)
+ end
+end
diff --git a/lib/privacy_revolver/router.ex b/lib/farside/router.ex
index 2a51094..95d9b41 100644
--- a/lib/privacy_revolver/router.ex
+++ b/lib/farside/router.ex
@@ -1,5 +1,5 @@
-defmodule PrivacyRevolver.Router do
- @fallback_str Application.fetch_env!(:privacy_revolver, :fallback_str)
+defmodule Farside.Router do
+ @fallback_str Application.fetch_env!(:farside, :fallback_str)
use Plug.Router
diff --git a/lib/privacy_revolver/application.ex b/lib/privacy_revolver/application.ex
deleted file mode 100644
index 04b7540..0000000
--- a/lib/privacy_revolver/application.ex
+++ /dev/null
@@ -1,17 +0,0 @@
-defmodule PrivacyRevolver.Application do
- @redis_conn Application.fetch_env!(:privacy_revolver, :redis_conn)
- @moduledoc false
-
- use Application
-
- @impl true
- def start(_type, _args) do
- children = [
- Plug.Cowboy.child_spec(scheme: :http, plug: PrivacyRevolver.Router, options: [port: 4001]),
- {Redix, {@redis_conn, [name: :redix]}}
- ]
-
- opts = [strategy: :one_for_one, name: PrivacyRevolver.Supervisor]
- Supervisor.start_link(children, opts)
- end
-end
diff --git a/mix.exs b/mix.exs
index 8adbae8..fbbbcc4 100644
--- a/mix.exs
+++ b/mix.exs
@@ -1,9 +1,9 @@
-defmodule PrivacyRevolver.MixProject do
+defmodule Farside.MixProject do
use Mix.Project
def project do
[
- app: :privacy_revolver,
+ app: :farside,
version: "0.1.0",
elixir: "~> 1.8",
start_permanent: Mix.env() == :prod,
@@ -15,7 +15,7 @@ defmodule PrivacyRevolver.MixProject do
def application do
[
extra_applications: [:logger],
- mod: {PrivacyRevolver.Application, []}
+ mod: {Farside.Application, []}
]
end
diff --git a/test/privacy_revolver_test.exs b/test/farside_test.exs
index 8c85530..0673fc4 100644
--- a/test/privacy_revolver_test.exs
+++ b/test/farside_test.exs
@@ -1,8 +1,8 @@
-defmodule PrivacyRevolverTest do
+defmodule FarsideTest do
use ExUnit.Case
use Plug.Test
- alias PrivacyRevolver.Router
+ alias Farside.Router
@opts Router.init([])
diff --git a/update.exs b/update.exs
index 9ed320d..fe1445b 100644
--- a/update.exs
+++ b/update.exs
@@ -8,9 +8,9 @@ defmodule Service do
end
defmodule Instances do
- @fallback_str Application.fetch_env!(:privacy_revolver, :fallback_str)
- @update_file Application.fetch_env!(:privacy_revolver, :update_file)
- @services_json Application.fetch_env!(:privacy_revolver, :services_json)
+ @fallback_str Application.fetch_env!(:farside, :fallback_str)
+ @update_file Application.fetch_env!(:farside, :update_file)
+ @services_json Application.fetch_env!(:farside, :services_json)
def init() do
File.rename(@update_file, "#{@update_file}-prev")
@@ -33,7 +33,9 @@ defmodule Instances do
# Loop through all instances and check each for availability
for service <- json do
+ IO.puts "======== " <> service.type
result = Enum.filter(service.instances, fn(instance_url) ->
+ IO.puts " " <> instance_url
request(instance_url <> service.test_url) == :good
end)
@@ -43,6 +45,8 @@ defmodule Instances do
end
def add_to_redis(service, instances) do
+ IO.puts " --------"
+ IO.inspect "OK: " <> instances
# Remove previous list of instances
Redix.command(:redix, [
"DEL",