diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/generator/ProjectBuilder.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/generator/ProjectBuilder.java index 2eb58fd..53fba44 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/generator/ProjectBuilder.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/generator/ProjectBuilder.java @@ -221,18 +221,24 @@ public class ProjectBuilder { logger.debug("Create Backup of PackageProject"); backupFolderId = createBackupFolder(); if (backupFolderId != null && !backupFolderId.isEmpty()) { - FilesStorage filesStorage = new FilesStorage(); + try { + FilesStorage filesStorage = new FilesStorage(); - GregorianCalendar now = new GregorianCalendar(); + GregorianCalendar now = new GregorianCalendar(); - String packageProjectNewName = project.getInputData().getProjectInfo().getAlgorithmNameToClassName() - + "_backup_" + sdf.format(now.getTime()) + PROJECT_PACKAGE_EXTENTION; + String packageProjectNewName = project.getInputData().getProjectInfo().getAlgorithmNameToClassName() + + "_backup_" + sdf.format(now.getTime()) + PROJECT_PACKAGE_EXTENTION; - filesStorage.copyItemOnFolderWithNewName(serviceCredentials.getUserName(), - project.getProjectTarget().getProjectDeploy().getPackageProject().getId(), backupFolderId, - packageProjectNewName); + filesStorage.copyItemOnFolderWithNewName(serviceCredentials.getUserName(), + project.getProjectTarget().getProjectDeploy().getPackageProject().getId(), backupFolderId, + packageProjectNewName); + + } catch (Throwable e) { + logger.error("Error in backup: " + e.getLocalizedMessage(), e); + logger.info("Backup skipped"); + } } else { - logger.debug("BackupFolderId is null, backup not done"); + logger.debug("BackupFolderId is null, the backup is not done"); } } else { logger.debug("First deploy, no backup needed"); @@ -526,6 +532,7 @@ public class ProjectBuilder { if (backupFolder != null && backupFolder.getId() != null && !backupFolder.getId().isEmpty()) { backupFolderId = backupFolder.getId(); } else { + logger.debug("Create new BackupFolder"); ItemDescription newBackupFolder = filesStorage.createFolder(serviceCredentials.getUserName(), project.getProjectFolder().getFolder().getId(), STATISTICAL_ALGORITHM_BACKUP_FOLDER_NAME, STATISTICAL_ALGORITHM_BACKUP_FOLDER_DESCRIPTION);