4.2.1 • Published 9 months ago

@zeeko/nx-remotecache-minio v4.2.1

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

npm package link

nx-remotecache-minio

A task runner for @nrwl/nx that uses an Minio Storage as a remote cache. This enables all team members and CI servers to share a single cache. The concept and benefits of computation caching are explained in the NX documentation.

This package was built with nx-remotecache-custom 🙌

Setup

npm install --save-dev nx-remotecache-minio
ParameterDescription Environment Variable / .envnx.json
Access KeyConnect to an MinIO Storage blob via a single URL.NXCACHE_MINIO_ACCESS_KEYaccessKey
Secret KeyUse together with Account Key for MinIO Credentials AuthenticationNXCACHE_MINIO_SECRET_KEYsecretKey
URLUse together with Account Name for MinIO Credentials AuthenticationNXCACHE_MINIO_URLurl
BucketRequired. Specify which container should be used for storing the cache.NXCACHE_MINIO_BUCKETbucket
RegionOptional. Specify the location of the storage e.g. "us-west-1".NXCACHE_MINIO_REGIONregion
PathStyleOptional. Set to false to use virtual host style.NXCACHE_MINIO_PATH_STYLEpathStyle
{
  "tasksRunnerOptions": {
    "default": {
      "runner": "nx-remotecache-minio",
      "options": {
        // All of the minio specific options can also be inserted via environment variables! ⬆️
        "accessKey": "minioadmin",
        "secretKey": "minioadmin",
        "url": "http://192.168.0.221:9000",
        "bucket": "nx-cache",
        "region": "us-west-1", // optional
        "cacheableOperations": ["build", "test", "lint", "e2e"]
      }
    }
  }
}

Run it 🚀

Running tasks should now show the storage or retrieval from the remote cache:

------------------------------------------------------------------------
Built Angular Package
 - from: /Users/name/example-workspace/libs/example-lib
 - to:   /Users/name/example-workspace/dist/libs/example-lib
------------------------------------------------------------------------
------------------------------------------------------------------------
Stored output to remote cache: Minio Storage
Hash: d3d2bea71ea0f3004304c5cc88cf91be50b02bb636ebbdfcc927626fd8edf1ae
------------------------------------------------------------------------

Advanced Configuration

OptionEnvironment Variable / .envDescription
nameNXCACHE_NAMESet to provide task runner name for logging. Overrides name provided in implementation.
verboseSet to receive full stack traces whenever errors occur. Best used for debugging. Default: false
silentSet to mute success and info logs. Default: false
readNXCACHE_READSet to enable / disable reading from the remote cache. Default: true
writeNXCACHE_WRITESet to enable / disable writing to the remote cache. Default: true
dotenvSet to false to disable reading .env into process.env. Default: true
dotenvPathSet to read .env files from a different folder.
"tasksRunnerOptions": {
  "default": {
    "options": {
      "name": "My Storage",
      "verbose": true,
      "silent": true
    }
  }
}

All Custom Runners

RunnerStorage
nx-remotecache-azure Azure Blob Storage
nx-remotecache-minio MinIO Storage