Fix 'TOSCA-Meta-File-Version and CSAR-Version accept only following format X.Y'-bug
[sdc.git] / catalog-be / src / main / java / org / openecomp / sdc / be / components / impl / CsarValidationUtils.java
index c6aa1b7..0fcaf7a 100644 (file)
@@ -37,6 +37,7 @@ import org.openecomp.sdc.be.config.BeEcompErrorManager;
 import org.openecomp.sdc.be.config.BeEcompErrorManager.ErrorSeverity;
 import org.openecomp.sdc.be.dao.api.ActionStatus;
 import org.openecomp.sdc.be.impl.ComponentsUtils;
+import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum;
 import org.openecomp.sdc.be.tosca.CsarUtils;
 import org.openecomp.sdc.common.log.wrappers.Logger;
 import org.openecomp.sdc.common.util.GeneralUtility;
@@ -52,10 +53,10 @@ public class CsarValidationUtils {
     private static final String TOSCA_METADATA = "TOSCA-Metadata";
     private static final String TOSCA_FILE = "TOSCA.meta";
     private static final String DEL_PATTERN = "([/\\\\]+)";
-    private static final String TOSCA_METADATA_PATH_PATTERN = TOSCA_METADATA +
+    public static final String TOSCA_METADATA_PATH_PATTERN = TOSCA_METADATA +
         // Artifact Group (i.e Deployment/Informational)
         DEL_PATTERN + TOSCA_FILE;
-    private static final String TOSCA_META_ENTRY_DEFINITIONS = "Entry-Definitions";
+    public static final String TOSCA_META_ENTRY_DEFINITIONS = "Entry-Definitions";
     private static final String[] TOSCA_METADATA_FIELDS = {TOSCA_META_FILE_VERSION, CSAR_VERSION, CREATED_BY, TOSCA_META_ENTRY_DEFINITIONS};
     private static final String ARTIFACTS_METADATA_FILE = "HEAT.meta";
     private static final String TOSCA_CSAR_EXTENSION = ".csar";
@@ -66,7 +67,7 @@ public class CsarValidationUtils {
     private static final String FILE_NOT_FOUND_IN_CSAR_WITH_ID = " file not found in CSAR with id ";
     private static final String CSAR_STRUCTURE_IS_INVALID = "CSAR structure is invalid";
     private static final String ENTRY_DEFINITIONS = "Entry-Definitions ";
-    private static final Pattern floatPattern = Pattern.compile("^\\d{1}[.]\\d{1}$");
+    private static final Pattern floatPattern = Pattern.compile("^\\d+\\.\\d+$");
 
     /**
      * Utility classes, which are collections of static members, are not meant to be instantiated
@@ -85,13 +86,13 @@ public class CsarValidationUtils {
     public static Either<Boolean, ResponseFormat> validateCsar(Map<String, byte[]> csar, String csarUUID, ComponentsUtils componentsUtils) {
         Either<Boolean, ResponseFormat> validateStatus = validateIsTOSCAMetadataExist(csar, csarUUID, componentsUtils);
         if (validateStatus.isRight()) {
-            return Either.right(validateStatus.right().value());
+            return validateStatus;
         }
         removeNonUniqueArtifactsFromCsar(csar);
         log.trace("TOSCA-Metadata/TOSCA.meta file found, CSAR id {}", csarUUID);
         validateStatus = validateTOSCAMetadataFile(csar, csarUUID, componentsUtils);
         if (validateStatus.isRight()) {
-            return Either.right(validateStatus.right().value());
+            return validateStatus;
         }
         return Either.left(true);
     }
@@ -137,39 +138,39 @@ public class CsarValidationUtils {
     }
 
     public static Either<ImmutablePair<String, String>, ResponseFormat> getToscaYaml(Map<String, byte[]> csar, String csarUUID,
-                                                                                     ComponentsUtils componentsUtils) {
-        Either<Boolean, ResponseFormat> validateStatus = validateIsTOSCAMetadataExist(csar, csarUUID, componentsUtils);
-        if (validateStatus.isRight()) {
-            return Either.right(validateStatus.right().value());
+                                                                                     ComponentsUtils componentsUtils, AuditingActionEnum auditingAction) {
+        if (!AuditingActionEnum.UPDATE_SERVICE_TOSCA_TEMPLATE.equals(auditingAction)) {
+            Either<Boolean, ResponseFormat> validateStatus = validateIsTOSCAMetadataExist(csar, csarUUID, componentsUtils);
+            if (validateStatus.isRight()) {
+                return Either.right(validateStatus.right().value());
+            }
         }
         Pattern pattern = Pattern.compile(TOSCA_METADATA_PATH_PATTERN);
         Optional<String> keyOp = csar.keySet().stream().filter(k -> pattern.matcher(k).matches()).findAny();
-        if (!keyOp.isPresent()) {
-            log.debug(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
+        if (keyOp.isEmpty()) {
+            log.error(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID,
+                TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID));
         }
-        byte[] toscaMetaBytes = csar.get(keyOp.get());
         Properties props = new Properties();
         try {
-            String propStr = new String(toscaMetaBytes);
-            props.load(new StringReader(propStr.replace("\\", "\\\\")));
+            props.load(new StringReader(new String(csar.get(keyOp.get())).replace("\\", "\\\\")));
         } catch (IOException e) {
-            log.debug(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID, e);
+            log.error(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID, e);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID,
+                TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID));
         }
         String yamlFileName = props.getProperty(TOSCA_META_ENTRY_DEFINITIONS);
-        String[] ops = yamlFileName.split(DEL_PATTERN);
-        List<String> list = Arrays.asList(ops);
-        String result = list.stream().map(x -> x).collect(Collectors.joining(DEL_PATTERN));
+        String result = Arrays.asList(yamlFileName.split(DEL_PATTERN)).stream().map(x -> x).collect(Collectors.joining(DEL_PATTERN));
         keyOp = csar.keySet().stream().filter(k -> Pattern.compile(result).matcher(k).matches()).findAny();
-        if (!keyOp.isPresent()) {
-            log.debug(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID, csarUUID);
+        if (keyOp.isEmpty()) {
+            log.error(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
@@ -178,20 +179,19 @@ public class CsarValidationUtils {
         log.trace("Found Entry-Definitions property in TOSCA-Metadata/TOSCA.meta, Entry-Definitions: {}, CSAR id: {}", yamlFileName, csarUUID);
         byte[] yamlFileBytes = csar.get(yamlFileName);
         if (yamlFileBytes == null) {
-            log.debug("Entry-Definitions {} file not found in csar, csar ID {}", yamlFileName, csarUUID);
+            log.error("Entry-Definitions {} file not found in csar, csar ID {}", yamlFileName, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(ENTRY_DEFINITIONS + yamlFileName + FILE_NOT_FOUND_IN_CSAR_WITH_ID + csarUUID, CSAR_STRUCTURE_IS_INVALID,
                     ErrorSeverity.ERROR);
             return Either.right(componentsUtils.getResponseFormat(ActionStatus.YAML_NOT_FOUND_IN_CSAR, csarUUID, yamlFileName));
         }
-        String yamlFileContents = new String(yamlFileBytes);
-        return Either.left(new ImmutablePair<>(yamlFileName, yamlFileContents));
+        return Either.left(new ImmutablePair<>(yamlFileName, new String(yamlFileBytes)));
     }
 
     public static Either<ImmutablePair<String, String>, ResponseFormat> getArtifactsMeta(Map<String, byte[]> csar, String csarUUID,
                                                                                          ComponentsUtils componentsUtils) {
         if (!csar.containsKey(CsarUtils.ARTIFACTS_PATH + ARTIFACTS_METADATA_FILE)) {
-            log.debug(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID, csarUUID);
+            log.error(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
@@ -201,22 +201,21 @@ public class CsarValidationUtils {
             csarUUID);
         byte[] artifactsMetaBytes = csar.get(CsarUtils.ARTIFACTS_PATH + ARTIFACTS_METADATA_FILE);
         if (artifactsMetaBytes == null) {
-            log.debug("Entry-Definitions {}{} file not found in csar, csar ID {}", CsarUtils.ARTIFACTS_PATH, ARTIFACTS_METADATA_FILE, csarUUID);
+            log.error("Entry-Definitions {}{} file not found in csar, csar ID {}", CsarUtils.ARTIFACTS_PATH, ARTIFACTS_METADATA_FILE, csarUUID);
             BeEcompErrorManager.getInstance().logInternalDataError(
                 ENTRY_DEFINITIONS + CsarUtils.ARTIFACTS_PATH + ARTIFACTS_METADATA_FILE + FILE_NOT_FOUND_IN_CSAR_WITH_ID + csarUUID,
                 CSAR_STRUCTURE_IS_INVALID, ErrorSeverity.ERROR);
             return Either.right(
                 componentsUtils.getResponseFormat(ActionStatus.YAML_NOT_FOUND_IN_CSAR, csarUUID, CsarUtils.ARTIFACTS_PATH + ARTIFACTS_METADATA_FILE));
         }
-        String artifactsFileContents = new String(artifactsMetaBytes);
-        return Either.left(new ImmutablePair<>(CsarUtils.ARTIFACTS_PATH + ARTIFACTS_METADATA_FILE, artifactsFileContents));
+        return Either.left(new ImmutablePair<>(CsarUtils.ARTIFACTS_PATH + ARTIFACTS_METADATA_FILE, new String(artifactsMetaBytes)));
     }
 
     public static Either<ImmutablePair<String, byte[]>, ResponseFormat> getArtifactContent(String csarUUID, Map<String, byte[]> csar,
                                                                                            String artifactPath, String artifactName,
                                                                                            ComponentsUtils componentsUtils) {
         if (!csar.containsKey(artifactPath)) {
-            log.debug("Entry-Definitions entry not found in Artifacts/HEAT.meta file, csar ID {}", csarUUID);
+            log.error("Entry-Definitions entry not found in Artifacts/HEAT.meta file, csar ID {}", csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(ENTRY_DEFINITIONS_ENTRY_NOT_FOUND_IN_TOSCA_METADATA_TOSCA_META_FILE_CSAR_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
@@ -226,7 +225,7 @@ public class CsarValidationUtils {
         log.trace("Found Entry-Definitions property in Artifacts/HEAT.meta, Entry-Definitions: {}, CSAR id: {}", artifactPath, csarUUID);
         byte[] artifactFileBytes = csar.get(artifactPath);
         if (artifactFileBytes == null) {
-            log.debug("Entry-Definitions {}{} file not found in csar, csar ID {}", CsarUtils.ARTIFACTS_PATH, artifactName, csarUUID);
+            log.error("Entry-Definitions {}{} file not found in csar, csar ID {}", CsarUtils.ARTIFACTS_PATH, artifactName, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(ENTRY_DEFINITIONS + artifactPath + FILE_NOT_FOUND_IN_CSAR_WITH_ID + csarUUID, CSAR_STRUCTURE_IS_INVALID,
                     ErrorSeverity.ERROR);
@@ -239,26 +238,27 @@ public class CsarValidationUtils {
                                                                              ComponentsUtils componentsUtils) {
         Pattern pattern = Pattern.compile(TOSCA_METADATA_PATH_PATTERN);
         Optional<String> keyOp = csar.keySet().stream().filter(k -> pattern.matcher(k).matches()).findAny();
-        if (!keyOp.isPresent()) {
-            log.debug(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
+        if (keyOp.isEmpty()) {
+            log.error(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID,
+                TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID));
         }
-        byte[] toscaMetaBytes = csar.get(keyOp.get());
-        String toscaMetadata = new String(toscaMetaBytes);
+        String toscaMetadata = new String(csar.get(keyOp.get()));
         String[] splited = toscaMetadata.split(NEW_LINE_DELM);
         if (splited == null || splited.length < TOSCA_METADATA_FIELDS.length) {
-            log.debug(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
+            log.error(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                     CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID,
+                TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID));
         }
         Either<Boolean, ResponseFormat> blockStatus = validateBlock(csarUUID, splited, componentsUtils);
         if (blockStatus.isRight()) {
-            return Either.right(blockStatus.right().value());
+            return blockStatus;
         }
         return Either.left(true);
     }
@@ -270,36 +270,38 @@ public class CsarValidationUtils {
             try {
                 props.load(new ByteArrayInputStream(splited[index].getBytes()));
             } catch (IOException e) {
-                log.debug(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID, e);
+                log.error(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID, e);
                 BeEcompErrorManager.getInstance()
                     .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                         CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID,
+                    TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID));
             }
             if (!props.containsKey(toscaField)) {
-                log.debug("TOSCA.meta file format is invalid: No new line after block_0 as expected in csar, csar ID {}", csarUUID);
+                final String msg = "TOSCA.meta file format is invalid: No new line after block_0 as expected in csar, csar ID {}";
+                log.error(msg, csarUUID);
                 BeEcompErrorManager.getInstance()
                     .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                         CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID, msg, csarUUID));
             }
-            String value = props.getProperty(toscaField);
+            final String value = props.getProperty(toscaField);
             if (value == null || value.isEmpty()) {
-                log.debug(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
+                log.error(TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID);
                 BeEcompErrorManager.getInstance()
                     .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                         CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID,
+                    TOSCA_METADATA_TOSCA_META_FILE_IS_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_CSAR_ID, csarUUID));
             }
-            // TOSCA-Meta-File-Version & CSAR-Version : digit.digit - format
-
-            // validation
+            // TOSCA-Meta-File-Version & CSAR-Version : digit.digit - format validation
             if ((toscaField.equals(TOSCA_META_FILE_VERSION) || toscaField.equals(CSAR_VERSION)) && !validateTOSCAMetaProperty(value)) {
-                log.debug("TOSCA-Metadata/TOSCA.meta file contains {} in wrong format (digit.digit), csar ID {}", toscaField, csarUUID);
+                final String msg = "TOSCA-Metadata/TOSCA.meta file contains {} in wrong format (digit.digit), csar ID {}";
+                log.error(msg, toscaField, csarUUID);
                 BeEcompErrorManager.getInstance()
                     .logInternalDataError(TOSCA_METADATA_TOSCA_META_FILE_NOT_IN_EXPECTED_KEY_VALUE_FORM_IN_CSAR_WITH_ID + csarUUID,
                         CSAR_INTERNALS_ARE_INVALID, ErrorSeverity.ERROR);
-                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID));
+                return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID_FORMAT, csarUUID, msg, toscaField, csarUUID));
             }
             index++;
         }
@@ -307,22 +309,20 @@ public class CsarValidationUtils {
     }
 
     private static boolean validateTOSCAMetaProperty(String toscaProperty) {
-        Matcher floatMatcher = floatPattern.matcher(toscaProperty);
-        return floatMatcher.matches();
+        return floatPattern.matcher(toscaProperty).matches();
     }
 
     private static Either<Boolean, ResponseFormat> validateIsTOSCAMetadataExist(Map<String, byte[]> csar, String csarUUID,
                                                                                 ComponentsUtils componentsUtils) {
         if (csar == null || csar.isEmpty()) {
-            log.debug("Error when fetching csar with ID {}", csarUUID);
+            log.error("Error when fetching csar with ID {}", csarUUID);
             BeEcompErrorManager.getInstance().logBeDaoSystemError("Creating resource from CSAR: fetching CSAR with id " + csarUUID + " failed");
-            ResponseFormat responseFormat = componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID, csarUUID);
-            return Either.right(responseFormat);
+            return Either.right(componentsUtils.getResponseFormat(ActionStatus.CSAR_INVALID, csarUUID));
         }
         Pattern pattern = Pattern.compile(TOSCA_METADATA_PATH_PATTERN);
         Optional<String> keyOp = csar.keySet().stream().filter(k -> pattern.matcher(k).matches()).findAny();
-        if (!keyOp.isPresent()) {
-            log.debug("TOSCA-Metadata/TOSCA.meta file not found in csar, csar ID {}", csarUUID);
+        if (keyOp.isEmpty()) {
+            log.error("TOSCA-Metadata/TOSCA.meta file not found in csar, csar ID {}", csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError("TOSCA-Metadata/TOSCA.meta file not found in CSAR with id " + csarUUID, CSAR_STRUCTURE_IS_INVALID,
                     ErrorSeverity.ERROR);
@@ -330,7 +330,7 @@ public class CsarValidationUtils {
         }
         byte[] toscaMetaBytes = csar.get(keyOp.get());
         if (toscaMetaBytes == null || toscaMetaBytes.length == 0) {
-            log.debug("TOSCA-Metadata/TOSCA.meta file not found in csar, csar ID {}", csarUUID);
+            log.error("TOSCA-Metadata/TOSCA.meta file not found in csar, csar ID {}", csarUUID);
             BeEcompErrorManager.getInstance()
                 .logInternalDataError("TOSCA-Metadata/TOSCA.meta file not found in CSAR with id " + csarUUID, CSAR_STRUCTURE_IS_INVALID,
                     ErrorSeverity.ERROR);
@@ -340,13 +340,12 @@ public class CsarValidationUtils {
     }
 
     public static Either<String, ResponseFormat> getToscaYamlChecksum(Map<String, byte[]> csar, String csarUUID, ComponentsUtils componentsUtils) {
-        Either<ImmutablePair<String, String>, ResponseFormat> toscaYamlRes = getToscaYaml(csar, csarUUID, componentsUtils);
+        Either<ImmutablePair<String, String>, ResponseFormat> toscaYamlRes = getToscaYaml(csar, csarUUID, componentsUtils, AuditingActionEnum.GET_TOSCA_MODEL);
         if (toscaYamlRes.isRight() || toscaYamlRes.left().value() == null || toscaYamlRes.left().value().getRight() == null) {
-            log.debug("Faild to create toscaYamlChecksum for csar, csar ID {}", csarUUID);
+            log.error("Faild to create toscaYamlChecksum for csar, csar ID {}", csarUUID);
             return Either.right(toscaYamlRes.right().value());
         }
-        String newCheckSum = GeneralUtility.calculateMD5Base64EncodedByByteArray(toscaYamlRes.left().value().getRight().getBytes());
-        return Either.left(newCheckSum);
+        return Either.left(GeneralUtility.calculateMD5Base64EncodedByByteArray(toscaYamlRes.left().value().getRight().getBytes()));
     }
 
     public static boolean isCsarPayloadName(String payloadName) {