bkt1
A subprocess caching utility
Usage
bkt [OPTIONS]
--
<COMMAND> ...
Overview
CLI and Rust library for caching subprocess invocations
Arguments:
- <COMMAND>...
-
The command to run
Options
-
--ttl <DURATION> -
Duration the cached result will be valid for [env: BKT_TTL=] [default: 60s] [aliases: time-to-live]
-
--stale <DURATION> -
Duration after which the result will be asynchronously refreshed
-
--warm -
Asynchronously execute and cache the given command, even if it's already cached
-
--force -
Execute and cache the given command, even if it's already cached
-
--cwd -
Includes the current working directory in the cache key, so that the same command run in different directories caches separately [aliases: use-working-dir]
-
--env <NAME> -
Includes the given environment variable in the cache key, so that the same command run with different values for the given variables caches separately [aliases: use-environment]
-
--modtime <FILE> -
Includes the last modification time of the given file(s) in the cache key, so that the same command run with different modtimes for the given files caches separately [aliases: use-file-modtime]
-
--discard-failures -
Don't cache invocations that fail (non-zero exit code). USE CAUTION when passing this flag, as unexpected failures can lead to a spike in invocations which can exacerbate ongoing issues, effectively a DDoS
-
--scope <NAME> -
If set, all cached data will be scoped to this value, preventing collisions with commands cached with different scopes [env: BKT_SCOPE=]
-
--cache-dir <DIR> -
The directory under which to persist cached invocations; defaults to the system's temp directory. Setting this to a directory backed by RAM or an SSD, such as a tmpfs partition, will significantly reduce caching overhead [env: BKT_CACHE_DIR=]
-
-h, --help -
Print help
-
-V, --version -
Print version