summaryrefslogtreecommitdiff
path: root/.github/workflows/elixir.yml
AgeCommit message (Collapse)Author
2022-10-31Use erlef/setup-beam, bump gha versions (#76)Kian-Meng Ang
Remove extra redirection. See https://github.com/erlef/setup-beam/issues/20
2022-10-31Remove Redis dep, replace w/ native Elixir libBen Busby
This removes the dependency on Redis for core app functionality. Rather than using the key/value store provided by Redis, Farside now uses a key/val store provided by [cubdb](https://github.com/lucaong/cubdb) for identical functionality but without reliance on a non-Elixir service. This solution was chosen instead of ets, because storing instance data in memory leads to a period of broken functionality whenever the app restarts and hasn't re-populated instance data yet. It was also chosen instead of dets, because the documentation for dets was pretty hard to understand at first glance. Tests and the CI build were updated to reflect the removed dependency on Redis. New environment variable `FARSIDE_DATA_DIR` can be used to point to a directory where the instance data can be stored by cubdb. Co-authored-by: Jason Clark <mithereal@gmail.com>
2022-07-27Use full service list for testsBen Busby
The filtered service list isn't guaranteed to have more than one instance per service, which fails a test that was designed to ensure back-to-back requests don't use the same instance. Using the full services json file more accurately tests the intended functionality for Farside.
2021-11-24Use quantum core for update schedulingBen Busby
Rather than requiring a traditional crontab install, the app now leverages quantum-core (link below) to schedule the instance update/sync task every 5 minutes. Some updates as a result: - The new job is scheduled at runtime in server.ex. - The update.exs script was refactored to be compiled along with the rest of the app as instances.ex. - Scheduler and Server modules were added for creating and executing the new update task - All shell scripts were removed, as they are no longer needed https://github.com/quantum-elixir/quantum-core
2021-11-10Test for valid service redirectsBen Busby
Updates testing to iterate through all available services and validate that each one correctly produces a 302 redirect.
2021-11-09Use elixir 1.12 and otp 24 in build/testBen Busby
2021-11-09Skip querying all instances w/ "test mode"Ben Busby
Now allows setting FARSIDE_TEST to skip individually fetching each instance, and instead just adds all of them to redis instantly. This allows for an easier time in CI builds, for both the sake of speed and to prevent a scenario where many simultaneous builds have a noticeable impact on actual instances.
2021-10-26Add elixir CIBen Busby