Allow to disable specific external caches
This commit is contained in:
parent
bf3d4ffc18
commit
fb0c8c5285
8 changed files with 40 additions and 24 deletions
10
README.md
10
README.md
|
|
@ -87,6 +87,16 @@ Default `false`.
|
||||||
npm: package-lock.json
|
npm: package-lock.json
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Disable individual external repositories conditionally
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: p0deje/setup-bazel@0.3.2
|
||||||
|
with:
|
||||||
|
external-cache: |
|
||||||
|
manifest:
|
||||||
|
ruby: ${{ matrix.os == 'windows' && 'false' || '.ruby-version' }}
|
||||||
|
```
|
||||||
|
|
||||||
[1]: https://github.com/bazelbuild/bazelisk
|
[1]: https://github.com/bazelbuild/bazelisk
|
||||||
[2]: https://bazel.build/remote/caching#disk-cache
|
[2]: https://bazel.build/remote/caching#disk-cache
|
||||||
[3]: https://docs-staging.bazel.build/2338/versions/main/guide.html#the-repository-cache
|
[3]: https://docs-staging.bazel.build/2338/versions/main/guide.html#the-repository-cache
|
||||||
|
|
|
||||||
|
|
@ -78,6 +78,7 @@ if (externalCacheConfig) {
|
||||||
path: `${os.tmpdir()}/external-cache-manifest.txt`
|
path: `${os.tmpdir()}/external-cache-manifest.txt`
|
||||||
}
|
}
|
||||||
externalCache.default = {
|
externalCache.default = {
|
||||||
|
enabled: true,
|
||||||
files: [
|
files: [
|
||||||
'WORKSPACE.bazel',
|
'WORKSPACE.bazel',
|
||||||
'WORKSPACE'
|
'WORKSPACE'
|
||||||
|
|
@ -93,6 +94,7 @@ if (externalCacheConfig) {
|
||||||
|
|
||||||
for (const name in externalCacheConfig.manifest) {
|
for (const name in externalCacheConfig.manifest) {
|
||||||
externalCache[name] = {
|
externalCache[name] = {
|
||||||
|
enabled: externalCacheConfig.manifest[name] != false,
|
||||||
files: Array(externalCacheConfig.manifest[name]).flat()
|
files: Array(externalCacheConfig.manifest[name]).flat()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
4
dist/main/index.js
vendored
4
dist/main/index.js
vendored
|
|
@ -84,6 +84,7 @@ if (externalCacheConfig) {
|
||||||
path: `${os.tmpdir()}/external-cache-manifest.txt`
|
path: `${os.tmpdir()}/external-cache-manifest.txt`
|
||||||
}
|
}
|
||||||
externalCache.default = {
|
externalCache.default = {
|
||||||
|
enabled: true,
|
||||||
files: [
|
files: [
|
||||||
'WORKSPACE.bazel',
|
'WORKSPACE.bazel',
|
||||||
'WORKSPACE'
|
'WORKSPACE'
|
||||||
|
|
@ -99,6 +100,7 @@ if (externalCacheConfig) {
|
||||||
|
|
||||||
for (const name in externalCacheConfig.manifest) {
|
for (const name in externalCacheConfig.manifest) {
|
||||||
externalCache[name] = {
|
externalCache[name] = {
|
||||||
|
enabled: externalCacheConfig.manifest[name] != false,
|
||||||
files: Array(externalCacheConfig.manifest[name]).flat()
|
files: Array(externalCacheConfig.manifest[name]).flat()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -94518,7 +94520,7 @@ async function restoreExternalCaches (cacheConfig) {
|
||||||
const manifest = fs.readFileSync(path, { encoding: 'utf8' })
|
const manifest = fs.readFileSync(path, { encoding: 'utf8' })
|
||||||
for (const name of manifest.split('\n').filter(s => s)) {
|
for (const name of manifest.split('\n').filter(s => s)) {
|
||||||
await restoreCache({
|
await restoreCache({
|
||||||
enabled: true,
|
enabled: cacheConfig[name]?.enabled ?? cacheConfig.default.enabled,
|
||||||
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
||||||
name: cacheConfig.default.name(name),
|
name: cacheConfig.default.name(name),
|
||||||
paths: cacheConfig.default.paths(name)
|
paths: cacheConfig.default.paths(name)
|
||||||
|
|
|
||||||
2
dist/main/index.js.map
vendored
2
dist/main/index.js.map
vendored
File diff suppressed because one or more lines are too long
4
dist/post/index.js
vendored
4
dist/post/index.js
vendored
|
|
@ -84,6 +84,7 @@ if (externalCacheConfig) {
|
||||||
path: `${os.tmpdir()}/external-cache-manifest.txt`
|
path: `${os.tmpdir()}/external-cache-manifest.txt`
|
||||||
}
|
}
|
||||||
externalCache.default = {
|
externalCache.default = {
|
||||||
|
enabled: true,
|
||||||
files: [
|
files: [
|
||||||
'WORKSPACE.bazel',
|
'WORKSPACE.bazel',
|
||||||
'WORKSPACE'
|
'WORKSPACE'
|
||||||
|
|
@ -99,6 +100,7 @@ if (externalCacheConfig) {
|
||||||
|
|
||||||
for (const name in externalCacheConfig.manifest) {
|
for (const name in externalCacheConfig.manifest) {
|
||||||
externalCache[name] = {
|
externalCache[name] = {
|
||||||
|
enabled: externalCacheConfig.manifest[name] != false,
|
||||||
files: Array(externalCacheConfig.manifest[name]).flat()
|
files: Array(externalCacheConfig.manifest[name]).flat()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -94549,7 +94551,7 @@ async function saveExternalCaches (cacheConfig) {
|
||||||
if (sizeMB >= cacheConfig.minSize) {
|
if (sizeMB >= cacheConfig.minSize) {
|
||||||
const name = path.basename(externalPath)
|
const name = path.basename(externalPath)
|
||||||
await saveCache({
|
await saveCache({
|
||||||
enabled: true,
|
enabled: cacheConfig[name]?.enabled ?? cacheConfig.default.enabled,
|
||||||
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
||||||
name: cacheConfig.default.name(name),
|
name: cacheConfig.default.name(name),
|
||||||
paths: cacheConfig.default.paths(name)
|
paths: cacheConfig.default.paths(name)
|
||||||
|
|
|
||||||
2
dist/post/index.js.map
vendored
2
dist/post/index.js.map
vendored
File diff suppressed because one or more lines are too long
2
index.js
2
index.js
|
|
@ -56,7 +56,7 @@ async function restoreExternalCaches (cacheConfig) {
|
||||||
const manifest = fs.readFileSync(path, { encoding: 'utf8' })
|
const manifest = fs.readFileSync(path, { encoding: 'utf8' })
|
||||||
for (const name of manifest.split('\n').filter(s => s)) {
|
for (const name of manifest.split('\n').filter(s => s)) {
|
||||||
await restoreCache({
|
await restoreCache({
|
||||||
enabled: true,
|
enabled: cacheConfig[name]?.enabled ?? cacheConfig.default.enabled,
|
||||||
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
||||||
name: cacheConfig.default.name(name),
|
name: cacheConfig.default.name(name),
|
||||||
paths: cacheConfig.default.paths(name)
|
paths: cacheConfig.default.paths(name)
|
||||||
|
|
|
||||||
2
post.js
2
post.js
|
|
@ -37,7 +37,7 @@ async function saveExternalCaches (cacheConfig) {
|
||||||
if (sizeMB >= cacheConfig.minSize) {
|
if (sizeMB >= cacheConfig.minSize) {
|
||||||
const name = path.basename(externalPath)
|
const name = path.basename(externalPath)
|
||||||
await saveCache({
|
await saveCache({
|
||||||
enabled: true,
|
enabled: cacheConfig[name]?.enabled ?? cacheConfig.default.enabled,
|
||||||
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
files: cacheConfig[name]?.files || cacheConfig.default.files,
|
||||||
name: cacheConfig.default.name(name),
|
name: cacheConfig.default.name(name),
|
||||||
paths: cacheConfig.default.paths(name)
|
paths: cacheConfig.default.paths(name)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue