fix(lint): improve caching logic for npm and yarn installations and ensure ESLint config is a JS file

Signed-off-by: 孙振宇 <>
This commit is contained in:
孙振宇 2025-02-07 17:10:18 +08:00
parent 39cb4fc56a
commit 6810be5cd8
2 changed files with 7 additions and 3 deletions

View File

@ -65,7 +65,9 @@ class DependenciesResolver {
if (cachingEnabled) {
steps.dir(this.workspace) {
steps.cache(maxCacheSize: 512, caches: [[$class: 'ArbitraryFileCache', includes: '**/*', path: '.npm-cache', cacheValidityDecidingFile: 'package-lock.json']]) {
steps.cache(maxCacheSize: 512, caches: [[$class: 'ArbitraryFileCache', includes: '**/*', path: '.npm-cache', cacheValidityDecidingFile: 'package-lock.json']])
def cacheExists = steps.fileExists('.npm-cache')
if (!cacheExists) {
steps.sh "npm install --cache .npm-cache"
}
}
@ -87,7 +89,9 @@ class DependenciesResolver {
if (cachingEnabled) {
steps.dir(this.workspace) {
steps.cache(maxCacheSize: 512, caches: [[$class: 'ArbitraryFileCache', includes: '**/*', path: '.yarn-cache', cacheValidityDecidingFile: 'yarn.lock']]) {
steps.cache(maxCacheSize: 512, caches: [[$class: 'ArbitraryFileCache', includes: '**/*', path: '.yarn-cache', cacheValidityDecidingFile: 'yarn.lock']])
def cacheExists = steps.fileExists('.yarn-cache')
if (!cacheExists) {
steps.sh "yarn install --cache-folder .yarn-cache"
}
}

View File

@ -27,7 +27,7 @@ class ESLint extends LinterBase {
if (!configs.endsWith('.js')) {
steps.log.warn("${linterType.linter}", "Invalid eslint configuration file, must be a JS file, convert file as valid JS file...")
steps.sh("mv ${configs} ${configs}.js")
configs = "${configs}.json"
configs = "${configs}.js"
}
steps.log.info("${linterType.linter}", "Running eslint...")
steps.sh("eslint --config ${configs} ${workspace}")