(UndefinedFunctionError) function CAStore.file_path/0 is undefined (module CAStore is not available)

Ahh, CAStore.file_path() is from the dependency castore.

Would config files even have access to dependencies? If I recall correctly, config files are read at build time, which is before the application gets compiled and its dependencies loaded.

Edited To Add: https://elixir-lang.org/getting-started/mix-otp/config-and-releases.html#configuration

Configuration

Configuration files provide a mechanism for us to configure the environment of any application. Elixir provides two configuration entry points:

  • config/config.exs - this file is read at build time, before we compile our application and before we even load our dependencies. This means we can’t access the code in our application nor in our dependencies. However, it means we can control how they are compiled
  • config/runtime.exs - this file is read after our application and dependencies are compiled and therefore it can configure how our application works at runtime. If you want to read system environment variables (via System.get_env/1) or any sort of external configuration, this is the appropriate place to do so