44 lines
1.4 KiB
YAML
44 lines
1.4 KiB
YAML
name: "S3 Cache"
|
|
description: "Cache artifacts like dependencies and build outputs to improve workflow execution time using S3-compatible storage"
|
|
inputs:
|
|
path:
|
|
description: "A list of files, directories, and wildcard patterns to cache and restore"
|
|
required: true
|
|
key:
|
|
description: "An explicit key for restoring and saving the cache"
|
|
required: true
|
|
restore-keys:
|
|
description: "An ordered list of keys to use for restoring stale cache if no cache hit occurred for key. Note `cache-hit` returns false in this case."
|
|
required: false
|
|
lookup-only:
|
|
description: "Check if a cache entry exists for the given input(s) (key, restore-keys) without downloading the cache"
|
|
required: false
|
|
default: "false"
|
|
fail-on-cache-miss:
|
|
description: "Fail the workflow if cache entry is not found"
|
|
required: false
|
|
default: "false"
|
|
s3-endpoint:
|
|
description: "S3 endpoint URL"
|
|
required: true
|
|
s3-bucket:
|
|
description: "S3 bucket name"
|
|
required: true
|
|
s3-access-key:
|
|
description: "S3 access key"
|
|
required: true
|
|
s3-secret-key:
|
|
description: "S3 secret key"
|
|
required: true
|
|
s3-region:
|
|
description: "S3 region"
|
|
required: false
|
|
default: "us-east-1"
|
|
outputs:
|
|
cache-hit:
|
|
description: "A boolean value to indicate an exact match was found for the primary key"
|
|
runs:
|
|
using: "node20"
|
|
main: "dist/index.js"
|
|
post: "dist/index.js"
|
|
post-if: success()
|