Issue
-
My backup job is failing with a similar traces like the following in the Console Build logs:
.... Caused: java.io.IOException: Unable to delete /var/lock - files in dir: [/var/lock/subsys] at hudson.Util.tryOnceDeleteFile(Util.java:324) at hudson.Util.deleteFile(Util.java:274) Caused: java.io.IOException: Unable to delete '/var/lock'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts. at hudson.Util.deleteFile(Util.java:279) at com.infradna.hudson.plugins.backup.store.LocalFileStore$2.delete(LocalFileStore.java:145) at com.infradna.hudson.plugins.backup.retention.UpToNRetentionPolicy.scrub(UpToNRetentionPolicy.java:30) at com.infradna.hudson.plugins.backup.BackupBuilder.scrub(BackupBuilder.java:268) at com.infradna.hudson.plugins.backup.BackupBuilder.doPerform(BackupBuilder.java:251) at com.infradna.hudson.plugins.backup.BackupBuilder.perform(BackupBuilder.java:172) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744) at hudson.model.Build$BuildExecution.build(Build.java:206) at hudson.model.Build$BuildExecution.doRun(Build.java:163) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:504) at hudson.model.Run.execute(Run.java:1810) at hudson.model.Build.run(Build.java:114) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) An attempt to send an e-mail to empty list of recipients, ignored. Finished: FAILURE
Environment
-
CloudBees CI (CloudBees Core) on modern cloud platforms - Managed controller
-
CloudBees CI (CloudBees Core) on modern cloud platforms - Operations Center
-
CloudBees CI (CloudBees Core) on traditional platforms - Client controller
-
CloudBees CI (CloudBees Core) on traditional platforms - Operations Center
-
CloudBees Backup plugin < 3.38.12
Resolution
This happens when backup target folder is a LocalFileStore type and the target folder contains a subfolder.
For example, having this folder structure
. └── folder.example └── subfolder.example
If folder.example
is configured as backup target folder from a local file system, it will fail. The solution is using folder.example/subfolder.example
instead.
Notes:
-
CloudBees Backup plugin >= 3.38.12 solves the issue, meaning that a Backup Target folder can contain subfolders.
-
For disaster recovery, it is highly recommended that you send the backup to a network drive, NFS-mounted directory, etc. see Backup Plugin - Local directory