Skip to content

Commit

Permalink
Add options to skip caching of folders.
Browse files Browse the repository at this point in the history
Add option to skip caching the Go package directory (~/go/pkg).
Add option to skip caching the Go build directory (~/.cache/go-build).
Update README to mention new options.
  • Loading branch information
smyrman committed Jan 28, 2021
1 parent 125ac48 commit 263fcb3
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 2 deletions.
8 changes: 7 additions & 1 deletion README.md
Expand Up @@ -48,8 +48,14 @@ jobs:
# Optional: show only new issues if it's a pull request. The default value is `false`.
# only-new-issues: true

# Optional: if set to true then the action will use pre-installed Go
# Optional: if set to true then the action will use pre-installed Go.
# skip-go-installation: true

# Optional: if set to true then the action don't cache or restore ~/go/pkg.
# skip-pkg-cache: true

# Optional: if set to true then the action don't cache or restore ~/.cache/go-build.
# skip-build-cache: true
```

We recommend running this action in a job separate from other jobs (`go test`, etc)
Expand Down
8 changes: 8 additions & 0 deletions action.yml
Expand Up @@ -24,6 +24,14 @@ inputs:
description: "if set to true then action uses pre-installed Go"
default: false
required: true
skip-pkg-cache:
description: "if set to true then the action don't cache or restore ~/go/pkg."
default: false
required: true
skip-build-cache:
description: "if set to true then the action don't cache or restore ~/.cache/go-build."
default: false
required: true
runs:
using: "node12"
main: "dist/run/index.js"
Expand Down
17 changes: 16 additions & 1 deletion src/cache.ts
Expand Up @@ -25,7 +25,22 @@ const getLintCacheDir = (): string => {

const getCacheDirs = (): string[] => {
// Not existing dirs are ok here: it works.
return [getLintCacheDir(), path.resolve(`${process.env.HOME}/.cache/go-build`), path.resolve(`${process.env.HOME}/go/pkg`)]
const skipPkgCache = core.getInput(`skip-pkg-cache`, { required: true }).trim()
const skipBuildCache = core.getInput(`skip-build-cache`, { required: true }).trim()
var dirs = [getLintCacheDir()]

if (skipBuildCache.toLowerCase() == "true") {
core.info(`Omitting ~/.cache/go-build from cache directories`)
} else {
dirs.push(path.resolve(`${process.env.HOME}/.cache/go-build`))
}
if (skipPkgCache.toLowerCase() == "true") {
core.info(`Omitting ~/go/pkg from cache directories`)
} else {
dirs.push(path.resolve(`${process.env.HOME}/go/pkg`))
}

return dirs
}

const getIntervalKey = (invalidationIntervalDays: number): string => {
Expand Down

0 comments on commit 263fcb3

Please sign in to comment.