joshuapro

1.1.4 • Public • Published

Build Status

tcache

tcache is a command line tool for caching directory trees or files. An example usecase would be a build/continuous integration system where on each build application dependencies need to be setup consuming considerable time and quite often depending on the network or external repositories being available and not banning users for abuse.

Example use case

In the following example, the command pip install -r requirements.txt will be executed only if one of the following conditions is true:

  • It is the first time you run the command, thus the env directory doesn't exist yet

  • The contents of requirements.txt have changed since the last time the command was run and env doesn't exist anymore, or -f is provided.

  • The cached version of env is older than 1 day since the command was run and env doesn't exist anymore, or -f is provided.

    $ tcache -p env -k $(md5 -q requirements.txt) -r 1d -- pip install -r requirements.txt --root=env
    

Here is a similar example, but for npm:

    $ tcache -p ./node_modules -k $(md5 -q package.json) -- npm install

By default cached directory trees are stored in $HOME/.tcache, this can be changed with the -c option.

Please, run tcache --help for further details and usage examples.

Package Sidebar

Install

npm i joshuapro

Weekly Downloads

0

Version

1.1.4

License

MIT

Unpacked Size

18.8 kB

Total Files

11

Last publish

Collaborators

  • chinhyanglong