From a9fae168dad9def958c678dcc7c63cfd80220c6a Mon Sep 17 00:00:00 2001 From: Dimitrios Giannopoulos Date: Thu, 13 Jun 2024 12:53:17 +0000 Subject: [PATCH 1/5] feat: version 1.0.0 --- Dockerfile | 4 ++-- pom.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 335aae1..7480c2b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,5 +2,5 @@ FROM ibm-semeru-runtimes:open-17.0.7_7-jdk MAINTAINER openslice.io RUN mkdir /opt/shareclasses RUN mkdir -p /opt/openslice/lib/ -COPY target/org.etsi.osl.manoclient-1.0.0-SNAPSHOT.jar /opt/openslice/lib/ -CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses","-jar", "/opt/openslice/lib/org.etsi.osl.manoclient-1.0.0-SNAPSHOT.jar"] \ No newline at end of file +COPY target/org.etsi.osl.manoclient-1.0.0.jar /opt/openslice/lib/ +CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses","-jar", "/opt/openslice/lib/org.etsi.osl.manoclient-1.0.0.jar"] \ No newline at end of file diff --git a/pom.xml b/pom.xml index c5660ff..35d5ac7 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.etsi.osl org.etsi.osl.main - 1.0.0-SNAPSHOT + 1.0.0 ../org.etsi.osl.main -- GitLab From e2222f0f58ccc8268c110b78dad4c595ff6c7974 Mon Sep 17 00:00:00 2001 From: Dimitrios Giannopoulos Date: Fri, 14 Jun 2024 11:43:52 +0000 Subject: [PATCH 2/5] fix: add protected run --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8ea78d6..6b853e7 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,7 +13,7 @@ include: - ci-templates/default.yml - ci-templates/build.yml rules: - - if: '$CI_COMMIT_REF_NAME == "develop"' + - if: '$CI_COMMIT_REF_NAME == "develop" || $CI_COMMIT_REF_PROTECTED' - project: osl/code/org.etsi.osl.main ref: develop @@ -21,7 +21,7 @@ include: - ci-templates/default.yml - ci-templates/build_unprotected.yml rules: - - if: '$CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "develop"' + - if: '$CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "develop" && !$CI_COMMIT_REF_PROTECTED' maven_build: extends: .maven_build -- GitLab From 234a6b460c3e51e50ac70edd6e6c90428aa4a750 Mon Sep 17 00:00:00 2001 From: Dimitrios Giannopoulos Date: Fri, 14 Jun 2024 13:08:18 +0000 Subject: [PATCH 3/5] fix: side branch references main's side branch --- .gitlab-ci.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6b853e7..bb7d754 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,7 +13,15 @@ include: - ci-templates/default.yml - ci-templates/build.yml rules: - - if: '$CI_COMMIT_REF_NAME == "develop" || $CI_COMMIT_REF_PROTECTED' + - if: '$CI_COMMIT_REF_NAME == "develop"' + + - project: osl/code/org.etsi.osl.main + ref: $CI_COMMIT_REF_NAME + file: + - ci-templates/default.yml + - ci-templates/build.yml + rules: + - if: '$CI_COMMIT_REF_PROTECTED && $CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "develop"' - project: osl/code/org.etsi.osl.main ref: develop -- GitLab From 7b64a3edde7c7e6c923a9b6d5452a4d10ba2f24b Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Fri, 28 Jun 2024 00:14:08 +0300 Subject: [PATCH 4/5] fix to support https://labs.etsi.org/rep/osl/code/org.etsi.osl.tmf.api/-/issues/42 --- .../org/etsi/osl/mano/MANOController.java | 75 +++++++++---------- 1 file changed, 35 insertions(+), 40 deletions(-) diff --git a/src/main/java/org/etsi/osl/mano/MANOController.java b/src/main/java/org/etsi/osl/mano/MANOController.java index 11a1d74..0a4c31a 100644 --- a/src/main/java/org/etsi/osl/mano/MANOController.java +++ b/src/main/java/org/etsi/osl/mano/MANOController.java @@ -1394,20 +1394,18 @@ public class MANOController { try { // Parse the json list of objects org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[] nsd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[]) mapper.readValue(nsds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[].class); - // For each object - for(org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd nsd : nsd_array) - { - String jsonInString=null; + + JSONArray array = new JSONArray(nsds_list_entity.getBody()); + // For each object + for (Object object : array) { + JSONObject jobj = (JSONObject) object; + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd nsd = + mapper.readValue( jobj.toString() , org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd.class); + + String jsonInString=jobj.toString(); ObjectMapper mapper2 = new ObjectMapper(); - mapper2.setSerializationInclusion(Include.NON_NULL); - try { - jsonInString = mapper2.writerWithDefaultPrettyPrinter().writeValueAsString(nsd); - } catch (JsonProcessingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - // Εδώ θα συγκρίνουμε αυτό που λάβαμε απο τη βάση με αυτό που λάβαμε απο το osm και θα το ανανεώσουμε στη βάση. + // compare the one from OSM with the one locally saved logger.debug("NSD to JSON:"+jsonInString); logger.info("NSD " + nsd.getInvariantId() + " added"); @@ -1455,7 +1453,7 @@ public class MANOController { // Store the requirements in HTML newExperimentMetadata.setDescriptorHTML(nsdreq.toHTML()); // Store the YAML file - newExperimentMetadata.setDescriptor(nsds_list_entity.getBody()); + newExperimentMetadata.setDescriptor( jobj.toString() ); for (Df v : nsd.getDf().values()) { for( VnfProfile q : v.getVnfProfile().values()) @@ -1530,20 +1528,17 @@ public class MANOController { try { // Parse the json list of objects org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[] nsd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[]) mapper.readValue(nsds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[].class); - // For each object - for(org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd nsd : nsd_array) - { - String jsonInString=null; + + JSONArray array = new JSONArray(nsds_list_entity.getBody()); + // For each object + for (Object object : array) { + JSONObject jobj = (JSONObject) object; + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd nsd = + mapper.readValue( jobj.toString() , org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd.class); + + String jsonInString=jobj.toString(); ObjectMapper mapper2 = new ObjectMapper(); - mapper2.setSerializationInclusion(Include.NON_NULL); - try { - jsonInString = mapper2.writerWithDefaultPrettyPrinter().writeValueAsString(nsd); - } catch (JsonProcessingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - // Compare the received from the osm with the database entry and update the database. + // compare the one from OSM with the one locally saved logger.debug("NSD to JSON:"+jsonInString); logger.info("NSD " + nsd.getInvariantId() + " added"); @@ -1591,7 +1586,7 @@ public class MANOController { // Store the requirements in HTML newExperimentMetadata.setDescriptorHTML(nsdreq.toHTML()); // Store the YAML file - newExperimentMetadata.setDescriptor(nsds_list_entity.getBody()); + newExperimentMetadata.setDescriptor( jobj.toString() ); for (Df v : nsd.getDf().values()) { for( VnfProfile q : v.getVnfProfile().values()) @@ -1663,20 +1658,20 @@ public class MANOController { { ObjectMapper mapper = new ObjectMapper(); try { - // Parse the json list of objects - org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[] nsd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[]) mapper.readValue(nsds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[].class); - // For each object - for(org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd nsd : nsd_array) - { - String jsonInString=null; + // Parse the json list of objects + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[] nsd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[]) mapper.readValue(nsds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd[].class); + + JSONArray array = new JSONArray(nsds_list_entity.getBody()); + // For each object + for (Object object : array) { + JSONObject jobj = (JSONObject) object; + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd nsd = + mapper.readValue( jobj.toString() , org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Nsd.class); + + String jsonInString=jobj.toString(); ObjectMapper mapper2 = new ObjectMapper(); mapper2.setSerializationInclusion(Include.NON_NULL); - try { - jsonInString = mapper2.writerWithDefaultPrettyPrinter().writeValueAsString(nsd); - } catch (JsonProcessingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + // Compare the received from the osm with the database entry and update the database. logger.debug("NSD to JSON:"+jsonInString); @@ -1726,7 +1721,7 @@ public class MANOController { // Store the requirements in HTML newExperimentMetadata.setDescriptorHTML(nsdreq.toHTML()); // Store the YAML file - newExperimentMetadata.setDescriptor(nsds_list_entity.getBody()); + newExperimentMetadata.setDescriptor( jobj.toString() ); for (Df v : nsd.getDf().values()) { for( VnfProfile q : v.getVnfProfile().values()) -- GitLab From 3180833e16aa64ed0134e9ce5227640f8c786afb Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Fri, 28 Jun 2024 14:02:14 +0300 Subject: [PATCH 5/5] fix for https://labs.etsi.org/rep/osl/code/org.etsi.osl.mano/-/issues/8 --- .../org/etsi/osl/mano/MANOController.java | 77 ++++++++++--------- 1 file changed, 42 insertions(+), 35 deletions(-) diff --git a/src/main/java/org/etsi/osl/mano/MANOController.java b/src/main/java/org/etsi/osl/mano/MANOController.java index 0a4c31a..a0cfb3f 100644 --- a/src/main/java/org/etsi/osl/mano/MANOController.java +++ b/src/main/java/org/etsi/osl/mano/MANOController.java @@ -1011,18 +1011,20 @@ public class MANOController { try { // Parse the json list of objects org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[] vnfd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[]) mapper.readValue(vnfds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[].class); + + JSONArray array = new JSONArray(vnfds_list_entity.getBody()); + // For each object - for(org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd vnfd : vnfd_array) - { - String jsonInString=null; - ObjectMapper mapper2 = new ObjectMapper(); - mapper2.setSerializationInclusion(Include.NON_NULL); - try { - jsonInString = mapper2.writerWithDefaultPrettyPrinter().writeValueAsString(vnfd); - } catch (JsonProcessingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + // For each object + for (Object object : array) { + + + JSONObject jobj = (JSONObject) object; + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd vnfd = + mapper.readValue( jobj.toString() , org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd.class ); + + String jsonInString=jobj.toString(); + ObjectMapper mapper2 = new ObjectMapper(); // Compare db derived data with osm derived data and update the database. logger.debug("VNFD to JSON:"+jsonInString); @@ -1072,7 +1074,7 @@ public class MANOController { // Store the requirements in HTML newVxFMetadata.setDescriptorHTML(vnfreq.toHTML()); // Store the YAML file - newVxFMetadata.setDescriptor(vnfds_list_entity.getBody()); + newVxFMetadata.setDescriptor( jobj.toString() ); //Add VxFMetadata object to db and get the generated object newVxFMetadata = aMANOClient.addVxFMetadata(newVxFMetadata); @@ -1128,18 +1130,20 @@ public class MANOController { try { // Parse the json list of objects org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[] vnfd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[]) mapper.readValue(vnfds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[].class); - // For each object - for(org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd vnfd : vnfd_array) - { - String jsonInString=null; - ObjectMapper mapper2 = new ObjectMapper(); - mapper2.setSerializationInclusion(Include.NON_NULL); - try { - jsonInString = mapper2.writerWithDefaultPrettyPrinter().writeValueAsString(vnfd); - } catch (JsonProcessingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } +JSONArray array = new JSONArray(vnfds_list_entity.getBody()); + + // For each object + // For each object + for (Object object : array) { + + + JSONObject jobj = (JSONObject) object; + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd vnfd = + mapper.readValue( jobj.toString() , org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd.class ); + + String jsonInString=jobj.toString(); + ObjectMapper mapper2 = new ObjectMapper(); + // Compare db derived data with osm derived data and update the database. logger.debug("VNFD to JSON:"+jsonInString); @@ -1245,17 +1249,20 @@ public class MANOController { // Parse the json list of objects org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[] vnfd_array = (org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[]) mapper.readValue(vnfds_list_entity.getBody(), org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd[].class); // For each object - for(org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd vnfd : vnfd_array) - { - String jsonInString=null; - ObjectMapper mapper2 = new ObjectMapper(); - mapper2.setSerializationInclusion(Include.NON_NULL); - try { - jsonInString = mapper2.writerWithDefaultPrettyPrinter().writeValueAsString(vnfd); - } catch (JsonProcessingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + JSONArray array = new JSONArray(vnfds_list_entity.getBody()); + + // For each object + // For each object + for (Object object : array) { + + + JSONObject jobj = (JSONObject) object; + org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd vnfd = + mapper.readValue( jobj.toString() , org.opendaylight.yang.gen.v1.urn.etsi.nfv.yang.etsi.nfv.descriptors.rev190425.Vnfd.class ); + + String jsonInString=jobj.toString(); + ObjectMapper mapper2 = new ObjectMapper(); + // Compare db derived data with osm derived data and update the database. logger.debug("VNFD to JSON:"+jsonInString); -- GitLab