diff --git a/src/integrationTest/java/net/geant/nmaas/orchestration/api/OrchestratorManagerControllerIntTest.java b/src/integrationTest/java/net/geant/nmaas/orchestration/api/OrchestratorManagerControllerIntTest.java
index 964ca4c76029dd3b42a28b9f828a9f11bdb43c15..c86403395a088d5e5abfc0b11bbc9b2ff770bd73 100644
--- a/src/integrationTest/java/net/geant/nmaas/orchestration/api/OrchestratorManagerControllerIntTest.java
+++ b/src/integrationTest/java/net/geant/nmaas/orchestration/api/OrchestratorManagerControllerIntTest.java
@@ -49,6 +49,7 @@ public class OrchestratorManagerControllerIntTest {
private static final String DOMAIN = "domain";
private static final String DEPLOYMENT_NAME = "deploymentName";
+
private Identifier applicationId;
private Identifier deploymentId;
private AppConfiguration appConfiguration;
diff --git a/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/KubernetesRepositoryManager.java b/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/KubernetesRepositoryManager.java
index 858efa7898cf1c3da86f772448a2f94c6c9e10a1..6d5763f0776311c862ca69451931822f18f46788 100644
--- a/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/KubernetesRepositoryManager.java
+++ b/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/KubernetesRepositoryManager.java
@@ -17,7 +17,6 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
-import java.util.stream.Collectors;
import static net.geant.nmaas.nmservice.deployment.containerorchestrators.kubernetes.entities.ServiceStorageVolumeType.MAIN;
import static net.geant.nmaas.nmservice.deployment.containerorchestrators.kubernetes.entities.ServiceStorageVolumeType.SHARED;
@@ -38,7 +37,7 @@ public class KubernetesRepositoryManager extends NmServiceRepositoryManager<Kube
KubernetesNmServiceInfo serviceInfo = loadService(deploymentId);
List<ServiceStorageVolume> storageVolumes = serviceInfo.getStorageVolumes().stream()
.filter(v -> Arrays.asList(MAIN, SHARED).contains(v.getType()))
- .collect(Collectors.toList());
+ .toList();
storageVolumes.forEach(v -> {
v.setSize(storageSpace);
storageVolumeRepository.save(v);
diff --git a/src/main/java/net/geant/nmaas/orchestration/DefaultAppDeploymentRepositoryManager.java b/src/main/java/net/geant/nmaas/orchestration/DefaultAppDeploymentRepositoryManager.java
index 51e2b7523f69d61a8356a2e902ffdb78ceb50f99..a26507e3d7e0c64103dbcbc7080f4dab99b5df2b 100644
--- a/src/main/java/net/geant/nmaas/orchestration/DefaultAppDeploymentRepositoryManager.java
+++ b/src/main/java/net/geant/nmaas/orchestration/DefaultAppDeploymentRepositoryManager.java
@@ -1,6 +1,5 @@
package net.geant.nmaas.orchestration;
-import io.micrometer.core.instrument.util.StringUtils;
import lombok.AllArgsConstructor;
import net.geant.nmaas.orchestration.entities.AppDeployment;
import net.geant.nmaas.orchestration.entities.AppDeploymentHistory;
@@ -13,6 +12,7 @@ import net.geant.nmaas.portal.persistent.entity.SSHKeyEntity;
import net.geant.nmaas.portal.persistent.entity.User;
import net.geant.nmaas.portal.persistent.repositories.SSHKeyRepository;
import net.geant.nmaas.portal.persistent.repositories.UserRepository;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
@@ -35,7 +35,7 @@ public class DefaultAppDeploymentRepositoryManager implements AppDeploymentRepos
@Override
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void store(AppDeployment appDeployment) {
- if(repository.findByDeploymentId(appDeployment.getDeploymentId()).isPresent()) {
+ if (repository.findByDeploymentId(appDeployment.getDeploymentId()).isPresent()) {
throw new InvalidDeploymentIdException("Deployment with id " + appDeployment.getDeploymentId() + " already exists in the repository.");
}
appDeployment.addChangeOfStateToHistory(null, appDeployment.getState());
@@ -43,7 +43,7 @@ public class DefaultAppDeploymentRepositoryManager implements AppDeploymentRepos
}
@Override
- @Transactional(propagation = Propagation.REQUIRES_NEW)
+ //@Transactional(propagation = Propagation.REQUIRES_NEW)
public void update(AppDeployment appDeployment) {
repository.save(appDeployment);
}
@@ -141,7 +141,7 @@ public class DefaultAppDeploymentRepositoryManager implements AppDeploymentRepos
}
@Override
- public List<AppDeploymentHistory> loadStateHistory(Identifier deploymentId){
+ public List<AppDeploymentHistory> loadStateHistory(Identifier deploymentId) {
return load(deploymentId).getHistory();
}
diff --git a/src/main/java/net/geant/nmaas/orchestration/DefaultAppLifecycleManager.java b/src/main/java/net/geant/nmaas/orchestration/DefaultAppLifecycleManager.java
index 5ec39362373510b23475dc0d71909317274278b8..6a9a2755c223241cd862adf8e7031821e54fbd87 100644
--- a/src/main/java/net/geant/nmaas/orchestration/DefaultAppLifecycleManager.java
+++ b/src/main/java/net/geant/nmaas/orchestration/DefaultAppLifecycleManager.java
@@ -13,13 +13,7 @@ import net.geant.nmaas.orchestration.api.model.AppConfigurationView;
import net.geant.nmaas.orchestration.entities.AppConfiguration;
import net.geant.nmaas.orchestration.entities.AppDeployment;
import net.geant.nmaas.orchestration.entities.AppDeploymentState;
-import net.geant.nmaas.orchestration.events.app.AppApplyConfigurationActionEvent;
-import net.geant.nmaas.orchestration.events.app.AppRemoveActionEvent;
-import net.geant.nmaas.orchestration.events.app.AppRemoveFailedActionEvent;
-import net.geant.nmaas.orchestration.events.app.AppRestartActionEvent;
-import net.geant.nmaas.orchestration.events.app.AppUpgradeActionEvent;
-import net.geant.nmaas.orchestration.events.app.AppVerifyRequestActionEvent;
-import net.geant.nmaas.orchestration.events.app.AppVerifyServiceActionEvent;
+import net.geant.nmaas.orchestration.events.app.*;
import net.geant.nmaas.orchestration.exceptions.InvalidDeploymentIdException;
import net.geant.nmaas.portal.api.exception.ProcessingException;
import net.geant.nmaas.utils.logging.LogLevel;
@@ -135,7 +129,6 @@ public class DefaultAppLifecycleManager implements AppLifecycleManager {
configuration.getAccessCredentials());
}
/*
- * NMAAS-967
* if terms acceptance is required, perform check actions
*/
if (appDeployment.isTermsAcceptanceRequired()) {
@@ -153,15 +146,7 @@ public class DefaultAppLifecycleManager implements AppLifecycleManager {
if (termsAcceptanceStatement != null && termsAcceptanceStatement.equalsIgnoreCase("yes")) {
// OK
- log.info(String.format(
- "Application usage terms were accepted: application [%s], instance id [%s], content [%s], statement [%s], by [%s], at: [%s]",
- appDeployment.getAppName(),
- appDeployment.getInstanceId(),
- termsContent,
- termsAcceptanceStatement,
- initiator,
- now.format(DateTimeFormatter.ISO_DATE_TIME)
- ));
+ log.info("Application usage terms were accepted: application [{}], instance id [{}], content [{}], statement [{}], by [{}], at: [{}]", appDeployment.getAppName(), appDeployment.getInstanceId(), termsContent, termsAcceptanceStatement, initiator, now.format(DateTimeFormatter.ISO_DATE_TIME));
appTermsAcceptanceService.addTermsAcceptanceEntry(
appDeployment.getAppName(),
appDeployment.getInstanceId(),
@@ -174,9 +159,10 @@ public class DefaultAppLifecycleManager implements AppLifecycleManager {
// Terms were not accepted by they should
throw new ProcessingException("Application usage terms acceptance is required, however terms were not accepted");
}
-
}
+
deploymentRepositoryManager.update(appDeployment);
+
if (appDeployment.getState().equals(AppDeploymentState.MANAGEMENT_VPN_CONFIGURED)) {
eventPublisher.publishEvent(new AppApplyConfigurationActionEvent(this, deploymentId));
}
diff --git a/src/main/java/net/geant/nmaas/portal/api/market/AppConfigurationController.java b/src/main/java/net/geant/nmaas/portal/api/market/AppConfigurationController.java
index ae3bd3ef7c9051316af14df8173ffc1f71329a00..15765e4bd833d70a51cfba857258cae553fbad99 100644
--- a/src/main/java/net/geant/nmaas/portal/api/market/AppConfigurationController.java
+++ b/src/main/java/net/geant/nmaas/portal/api/market/AppConfigurationController.java
@@ -2,6 +2,7 @@ package net.geant.nmaas.portal.api.market;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.base.Strings;
+import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import net.geant.nmaas.orchestration.AppLifecycleManager;
@@ -12,14 +13,8 @@ import net.geant.nmaas.portal.persistent.entity.AppInstance;
import net.geant.nmaas.portal.service.ApplicationInstanceService;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
-import jakarta.validation.constraints.NotNull;
import java.io.IOException;
import java.security.Principal;
@@ -43,13 +38,13 @@ public class AppConfigurationController {
AppInstance appInstance = instances.find(appInstanceId).orElseThrow(() -> new MissingElementException(INSTANCE_NOT_FOUND_MESSAGE));
boolean valid = validJSON(configuration.getJsonInput());
- log.error("Configuration = " + configuration.getJsonInput());
+ log.debug("Provided configuration = {}", configuration.getJsonInput());
if (!valid) {
- throw new ProcessingException("Configuration is not in valid JSON format");
+ throw new ProcessingException("Configuration is not in a valid JSON format");
}
if (configuration.getStorageSpace() != null && configuration.getStorageSpace() <= 0) {
- throw new ProcessingException("Storage space cannot be less or equal 0");
+ throw new ProcessingException("Storage space cannot be less or equal to 0");
}
if (!instances.validateAgainstAppConfiguration(appInstance, configuration)) {
@@ -105,4 +100,5 @@ public class AppConfigurationController {
public String getConfiguration(@PathVariable(value = "appInstanceId") Long appInstanceId) {
return instances.find(appInstanceId).orElseThrow(() -> new MissingElementException(INSTANCE_NOT_FOUND_MESSAGE)).getConfiguration();
}
+
}