hugo/common
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
..
collections common/collections: Allow a mix of slice types in append/Scratch.Add 2018-10-27 15:05:40 +02:00
herrors Add file (line/col) info to ref/relref errors 2018-11-01 21:06:35 +01:00
hugio Add a consolidated file cache 2018-11-13 14:19:42 +01:00
loggers common/loggers: Improve log color regexp 2018-11-01 09:33:32 +01:00
maps common/collections: Allow a mix of slice types in append/Scratch.Add 2018-10-27 15:05:40 +02:00
math Add a newScratch template func 2018-07-06 17:51:38 +02:00
terminal Fix ANSI character output regression on Windows 2018-11-02 09:09:02 +01:00
text Add file (line/col) info to ref/relref errors 2018-11-01 21:06:35 +01:00
types Prevent stale content in Fast Render Mode 2018-10-17 10:15:22 +02:00
urls Add file (line/col) info to ref/relref errors 2018-11-01 21:06:35 +01:00