In app/assets/javascripts/osm.js.erb we need to tell sprockets to recompile the output whenever the settings change. To do this we mark that file as depending on config/settings.yml and config/settings.local.yml.
However, this throws up two problems:
settings.local.yml is supposed to be optional, but Sprockets throws an error if the file can't be found.I've checked through the sprockets documentation, but I can't see any obvious guidance for approaches to this situation.
Potential solutions include:
settings.local.yml. This will make the 'out-of-the-box' situation better for developers, but could lead to problems later on when changes to that file are not reflected in the compiled javascript (without manual asset recompilation).For anyone who gets ActionView::Template::Error: couldn't find file 'settings.local.yml' or similar when first setting up your environment, then this issue is the root cause. You need to create an empty file in config/settings.local.yml, for example by running:
$ touch config/settings.local.yml
Most helpful comment
For anyone who gets
ActionView::Template::Error: couldn't find file 'settings.local.yml'or similar when first setting up your environment, then this issue is the root cause. You need to create an empty file inconfig/settings.local.yml, for example by running: