From 9501a669d703594aa65581936a2d8b959618662e Mon Sep 17 00:00:00 2001 From: repolevedavaj Date: Wed, 22 Feb 2023 20:37:02 +0100 Subject: [PATCH 1/2] Fix logging in case of error --- .../plugins/jobcacher/ArbitraryFileCache.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java b/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java index f0f8c84..c1314f7 100644 --- a/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java +++ b/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java @@ -179,12 +179,13 @@ public Saver cache(ObjectPath cachesRoot, ObjectPath fallbackCachesRoot, Run Date: Wed, 22 Feb 2023 20:40:28 +0100 Subject: [PATCH 2/2] Do not fail build in case of error while creating cache --- .../plugins/jobcacher/ArbitraryFileCache.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java b/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java index c1314f7..a2b8fae 100644 --- a/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java +++ b/src/main/java/jenkins/plugins/jobcacher/ArbitraryFileCache.java @@ -368,12 +368,17 @@ public void save(ObjectPath cachesRoot, Run build, FilePath workspace, Lau logMessage("Creating cache...", listener); long cacheCreationStartTime = System.nanoTime(); - compressionMethod.getCacheStrategy().cache(resolvedPath, includes, excludes, useDefaultExcludes, cache, workspace); - if (isCacheValidityDecidingFileConfigured() && isOneCacheValidityDecidingFilePresent(workspace)) { - updateSkipCacheTriggerFileHash(cachesRoot, workspace); + + try { + compressionMethod.getCacheStrategy().cache(resolvedPath, includes, excludes, useDefaultExcludes, cache, workspace); + if (isCacheValidityDecidingFileConfigured() && isOneCacheValidityDecidingFilePresent(workspace)) { + updateSkipCacheTriggerFileHash(cachesRoot, workspace); + } + long cacheCreationEndTime = System.nanoTime(); + logMessage("Cache created in " + Duration.ofNanos(cacheCreationEndTime - cacheCreationStartTime).toMillis() + "ms", listener); + } catch (Exception e) { + logMessage("Failed to create cache", e, listener); } - long cacheCreationEndTime = System.nanoTime(); - logMessage("Cache created in " + Duration.ofNanos(cacheCreationEndTime - cacheCreationStartTime).toMillis() + "ms", listener); } private boolean isPathOutsideWorkspace(FilePath workspace) {