hugo/commands
Bjørn Erik Pedersen f7aeaa6129 Add a consolidated file cache
This commits reworks how file caching is performed in Hugo. Now there is only one way, and it can be configured.

This is the default configuration:

```toml
[caches]
[caches.getjson]
dir = ":cacheDir"
maxAge = -1
[caches.getcsv]
dir = ":cacheDir"
maxAge = -1
[caches.images]
dir = ":resourceDir/_gen"
maxAge = -1
[caches.assets]
dir = ":resourceDir/_gen"
maxAge = -1
```

You can override any of these cache setting in your own `config.toml`.

The placeholders explained:

`:cacheDir`: This is the value of the `cacheDir` config option if set (can also be set via OS env variable `HUGO_CACHEDIR`). It will fall back to `/opt/build/cache/hugo_cache/` on Netlify, or a `hugo_cache` directory below the OS temp dir for the others.
`:resourceDir`: This is the value of the `resourceDir` config option.

`maxAge` is the time in seconds before a cache entry will be evicted, -1 means forever and 0 effectively turns that particular cache off.

This means that if you run your builds on Netlify, all caches configured with `:cacheDir` will be saved and restored on the next build. For other CI vendors, please read their documentation. For an CircleCI example, see 6c3960a8f4/.circleci/config.yml

Fixes #5404
2018-11-13 14:19:42 +01:00
..
benchmark.go
check.go
check_darwin.go
commandeer.go Add a consolidated file cache 2018-11-13 14:19:42 +01:00
commands.go commands: Fix spelling 2018-11-06 08:45:19 +01:00
commands_test.go commands: Fix spelling 2018-11-06 08:45:19 +01:00
config.go
convert.go Convert the rest to new page parser code paths 2018-10-22 20:46:14 +02:00
env.go
gen.go
genautocomplete.go
genchromastyles.go
gendoc.go
gendocshelper.go
genman.go
helpers.go commands: Only show Ansi escape codes if in a terminal 2018-10-26 14:33:44 +02:00
hugo.go Make WARN the new default log log level 2018-11-03 12:06:23 +01:00
hugo_windows.go
import_jekyll.go Convert the rest to new page parser code paths 2018-10-22 20:46:14 +02:00
import_jekyll_test.go
limit_darwin.go
limit_others.go
list.go
new.go commands: Add help text to "hugo new" 2018-10-15 17:48:19 +02:00
new_content_test.go Add directory based archetypes 2018-09-23 19:27:23 +02:00
new_site.go Convert the rest to new page parser code paths 2018-10-22 20:46:14 +02:00
new_theme.go
release.go
release_noop.go
server.go commands: Avoid panic in error handler on config errors 2018-10-22 19:51:59 +02:00
server_errors.go commands: Fix recently broken error template 2018-11-03 16:55:45 +01:00
server_test.go commands: Show server error info in browser 2018-10-16 22:10:56 +02:00
static_syncer.go commands: Show server error info in browser 2018-10-16 22:10:56 +02:00
version.go commands: Show server error info in browser 2018-10-16 22:10:56 +02:00