mirror of
https://code.forgejo.org/actions/cache.git
synced 2025-04-22 12:46:17 +02:00
Merge 4598e54d46
into 5a3ec84eff
This commit is contained in:
commit
f53083e499
8 changed files with 24 additions and 12 deletions
|
@ -76,6 +76,7 @@ If you are using a `self-hosted` Windows runner, `GNU tar` and `zstd` are requir
|
|||
* `enableCrossOsArchive` - An optional boolean when enabled, allows Windows runners to save or restore caches that can be restored or saved respectively on other platforms. Default: `false`
|
||||
* `fail-on-cache-miss` - Fail the workflow if cache entry is not found. Default: `false`
|
||||
* `lookup-only` - If true, only checks if cache entry exists and skips download. Does not change save cache behavior. Default: `false`
|
||||
* `reeval-key` - A boolean which causes the key to be re-evaluated during the Post-Action step
|
||||
|
||||
#### Environment Variables
|
||||
|
||||
|
|
|
@ -34,6 +34,10 @@ inputs:
|
|||
save-always does not work as intended and will be removed in a future release.
|
||||
A separate `actions/cache/restore` step should be used instead.
|
||||
See https://github.com/actions/cache/tree/main/save#always-save-cache for more details.
|
||||
reeval-key:
|
||||
description: 'Re-evaluate the cache key during the post-action'
|
||||
required: false
|
||||
default: false
|
||||
outputs:
|
||||
cache-hit:
|
||||
description: 'A boolean value to indicate an exact match was found for the primary key'
|
||||
|
|
3
dist/restore-only/index.js
vendored
3
dist/restore-only/index.js
vendored
|
@ -64911,7 +64911,8 @@ var Inputs;
|
|||
Inputs["UploadChunkSize"] = "upload-chunk-size";
|
||||
Inputs["EnableCrossOsArchive"] = "enableCrossOsArchive";
|
||||
Inputs["FailOnCacheMiss"] = "fail-on-cache-miss";
|
||||
Inputs["LookupOnly"] = "lookup-only"; // Input for cache, restore action
|
||||
Inputs["LookupOnly"] = "lookup-only";
|
||||
Inputs["ReEvalKey"] = "reeval-key";
|
||||
})(Inputs = exports.Inputs || (exports.Inputs = {}));
|
||||
var Outputs;
|
||||
(function (Outputs) {
|
||||
|
|
3
dist/restore/index.js
vendored
3
dist/restore/index.js
vendored
|
@ -64911,7 +64911,8 @@ var Inputs;
|
|||
Inputs["UploadChunkSize"] = "upload-chunk-size";
|
||||
Inputs["EnableCrossOsArchive"] = "enableCrossOsArchive";
|
||||
Inputs["FailOnCacheMiss"] = "fail-on-cache-miss";
|
||||
Inputs["LookupOnly"] = "lookup-only"; // Input for cache, restore action
|
||||
Inputs["LookupOnly"] = "lookup-only";
|
||||
Inputs["ReEvalKey"] = "reeval-key";
|
||||
})(Inputs = exports.Inputs || (exports.Inputs = {}));
|
||||
var Outputs;
|
||||
(function (Outputs) {
|
||||
|
|
8
dist/save-only/index.js
vendored
8
dist/save-only/index.js
vendored
|
@ -64911,7 +64911,8 @@ var Inputs;
|
|||
Inputs["UploadChunkSize"] = "upload-chunk-size";
|
||||
Inputs["EnableCrossOsArchive"] = "enableCrossOsArchive";
|
||||
Inputs["FailOnCacheMiss"] = "fail-on-cache-miss";
|
||||
Inputs["LookupOnly"] = "lookup-only"; // Input for cache, restore action
|
||||
Inputs["LookupOnly"] = "lookup-only";
|
||||
Inputs["ReEvalKey"] = "reeval-key";
|
||||
})(Inputs = exports.Inputs || (exports.Inputs = {}));
|
||||
var Outputs;
|
||||
(function (Outputs) {
|
||||
|
@ -64996,8 +64997,9 @@ function saveImpl(stateProvider) {
|
|||
}
|
||||
// If restore has stored a primary key in state, reuse that
|
||||
// Else re-evaluate from inputs
|
||||
const primaryKey = stateProvider.getState(constants_1.State.CachePrimaryKey) ||
|
||||
core.getInput(constants_1.Inputs.Key);
|
||||
const primaryKey = core.getBooleanInput(constants_1.Inputs.ReEvalKey)
|
||||
? core.getInput(constants_1.Inputs.Key)
|
||||
: (stateProvider.getState(constants_1.State.CachePrimaryKey) || core.getInput(constants_1.Inputs.Key));
|
||||
if (!primaryKey) {
|
||||
utils.logWarning(`Key is not specified.`);
|
||||
return;
|
||||
|
|
8
dist/save/index.js
vendored
8
dist/save/index.js
vendored
|
@ -64911,7 +64911,8 @@ var Inputs;
|
|||
Inputs["UploadChunkSize"] = "upload-chunk-size";
|
||||
Inputs["EnableCrossOsArchive"] = "enableCrossOsArchive";
|
||||
Inputs["FailOnCacheMiss"] = "fail-on-cache-miss";
|
||||
Inputs["LookupOnly"] = "lookup-only"; // Input for cache, restore action
|
||||
Inputs["LookupOnly"] = "lookup-only";
|
||||
Inputs["ReEvalKey"] = "reeval-key";
|
||||
})(Inputs = exports.Inputs || (exports.Inputs = {}));
|
||||
var Outputs;
|
||||
(function (Outputs) {
|
||||
|
@ -64996,8 +64997,9 @@ function saveImpl(stateProvider) {
|
|||
}
|
||||
// If restore has stored a primary key in state, reuse that
|
||||
// Else re-evaluate from inputs
|
||||
const primaryKey = stateProvider.getState(constants_1.State.CachePrimaryKey) ||
|
||||
core.getInput(constants_1.Inputs.Key);
|
||||
const primaryKey = core.getBooleanInput(constants_1.Inputs.ReEvalKey)
|
||||
? core.getInput(constants_1.Inputs.Key)
|
||||
: (stateProvider.getState(constants_1.State.CachePrimaryKey) || core.getInput(constants_1.Inputs.Key));
|
||||
if (!primaryKey) {
|
||||
utils.logWarning(`Key is not specified.`);
|
||||
return;
|
||||
|
|
|
@ -5,7 +5,8 @@ export enum Inputs {
|
|||
UploadChunkSize = "upload-chunk-size", // Input for cache, save action
|
||||
EnableCrossOsArchive = "enableCrossOsArchive", // Input for cache, restore, save action
|
||||
FailOnCacheMiss = "fail-on-cache-miss", // Input for cache, restore action
|
||||
LookupOnly = "lookup-only" // Input for cache, restore action
|
||||
LookupOnly = "lookup-only", // Input for cache, restore action
|
||||
ReEvalKey = "reeval-key"
|
||||
}
|
||||
|
||||
export enum Outputs {
|
||||
|
|
|
@ -34,9 +34,9 @@ export async function saveImpl(
|
|||
|
||||
// If restore has stored a primary key in state, reuse that
|
||||
// Else re-evaluate from inputs
|
||||
const primaryKey =
|
||||
stateProvider.getState(State.CachePrimaryKey) ||
|
||||
core.getInput(Inputs.Key);
|
||||
const primaryKey = core.getBooleanInput(Inputs.ReEvalKey)
|
||||
? core.getInput(Inputs.Key)
|
||||
: (stateProvider.getState(State.CachePrimaryKey) || core.getInput(Inputs.Key));
|
||||
|
||||
if (!primaryKey) {
|
||||
utils.logWarning(`Key is not specified.`);
|
||||
|
|
Loading…
Add table
Reference in a new issue