Conditional Caching and cache timeouts

I noticed that by default Travis caches both branches and tags.
However, there are many projects that I release very often, and that, once released and deployed, are very rarely re-built. As such, I’d like to disable caching for tagged versions in such projects to save space.

Is it possible somehow?

Also, I’d like to be able to set up a cache cleaning cronjob. Is this something possible, or even already set up?