Made tz data location user-configurable (#238)

This commit is contained in:
Kieran
2024-05-13 09:27:16 -07:00
committed by GitHub
parent d093799801
commit 77a9ff4d9f
3 changed files with 8 additions and 5 deletions
-2
View File
@@ -7,8 +7,6 @@ import Config
# before starting your production server. # before starting your production server.
config :pinchflat, PinchflatWeb.Endpoint, cache_static_manifest: "priv/static/cache_manifest.json" config :pinchflat, PinchflatWeb.Endpoint, cache_static_manifest: "priv/static/cache_manifest.json"
config :tzdata, :data_dir, "/etc/elixir_tzdata_data"
# Configures Swoosh API Client # Configures Swoosh API Client
config :swoosh, api_client: Swoosh.ApiClient.Finch, finch_name: Pinchflat.Finch config :swoosh, api_client: Swoosh.ApiClient.Finch, finch_name: Pinchflat.Finch
+2
View File
@@ -66,6 +66,8 @@ if config_env() == :prod do
expose_feed_endpoints: expose_feed_endpoints, expose_feed_endpoints: expose_feed_endpoints,
timezone: System.get_env("TIMEZONE") || System.get_env("TZ") || "UTC" timezone: System.get_env("TIMEZONE") || System.get_env("TZ") || "UTC"
config :tzdata, :data_dir, System.get_env("TZ_DATA_DIR", "/etc/elixir_tzdata_data")
config :pinchflat, Pinchflat.Repo, config :pinchflat, Pinchflat.Repo,
database: db_path, database: db_path,
journal_mode: journal_mode journal_mode: journal_mode
+6 -3
View File
@@ -26,14 +26,17 @@ defmodule Pinchflat.Release do
load_app() load_app()
directories = directories =
Enum.uniq([ [
"/config", "/config",
"/downloads", "/downloads",
Application.get_env(:pinchflat, :media_directory), Application.get_env(:pinchflat, :media_directory),
Application.get_env(:pinchflat, :tmpfile_directory), Application.get_env(:pinchflat, :tmpfile_directory),
Application.get_env(:pinchflat, :extras_directory), Application.get_env(:pinchflat, :extras_directory),
Application.get_env(:pinchflat, :metadata_directory) Application.get_env(:pinchflat, :metadata_directory),
]) Application.get_env(:tzdata, :data_dir)
]
|> Enum.uniq()
|> Enum.filter(&(&1 != nil))
Enum.each(directories, fn dir -> Enum.each(directories, fn dir ->
Logger.info("Checking permissions for #{dir}") Logger.info("Checking permissions for #{dir}")