Fixed, simplified and tested AuthorizationHeadersProvider 18/101518/7
authorPiotr Borelowski <p.borelowski@partner.samsung.com>
Tue, 11 Feb 2020 09:00:02 +0000 (10:00 +0100)
committerPiotr Borelowski <p.borelowski@partner.samsung.com>
Thu, 13 Feb 2020 15:29:31 +0000 (15:29 +0000)
(+small changes in poms)

Ve-Vnfm (SOL002) Adapter project

Issue-ID: SO-2574
Signed-off-by: Piotr Borelowski <p.borelowski@partner.samsung.com>
Change-Id: I480ac1d5b46aae5a9d4db8249d98c186b59fd12f

adapters/mso-ve-vnfm-adapter/pom.xml
adapters/mso-ve-vnfm-adapter/src/main/java/org/onap/so/adapters/vevnfm/provider/AuthorizationHeadersProvider.java
adapters/mso-ve-vnfm-adapter/src/main/java/org/onap/so/adapters/vevnfm/service/SubscriberService.java
adapters/mso-ve-vnfm-adapter/src/test/java/org/onap/so/adapters/vevnfm/provider/AuthorizationHeadersProviderTest.java [new file with mode: 0644]
packages/docker/pom.xml

index 3518445..4472956 100644 (file)
   </dependencies>
 
   <build>
+    <finalName>${project.artifactId}-${project.version}</finalName>
     <plugins>
       <plugin>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-maven-plugin</artifactId>
+        <configuration>
+          <mainClass>org.onap.so.adapters.vevnfm.Application</mainClass>
+        </configuration>
+        <executions>
+          <execution>
+            <goals>
+              <goal>repackage</goal>
+            </goals>
+          </execution>
+        </executions>
       </plugin>
     </plugins>
   </build>
index eca5240..251e0c4 100644 (file)
 
 package org.onap.so.adapters.vevnfm.provider;
 
-import java.util.List;
-import org.apache.logging.log4j.util.Strings;
 import org.onap.so.configuration.rest.BasicHttpHeadersProvider;
-import org.springframework.http.HttpHeaders;
 
 public class AuthorizationHeadersProvider extends BasicHttpHeadersProvider {
 
-    private List<String> previousAuthorization;
-
     public void addAuthorization(final String authorization) {
-        final HttpHeaders headers = getHttpHeaders();
-        previousAuthorization = headers.get(AUTHORIZATION_HEADER);
-        headers.set(AUTHORIZATION_HEADER, authorization);
-    }
-
-    public void resetPrevious() {
-        if (!isPreviousAuthorizationBlank()) {
-            getHttpHeaders().addAll(AUTHORIZATION_HEADER, previousAuthorization);
-        }
+        getHttpHeaders().set(AUTHORIZATION_HEADER, authorization);
     }
 
-    private boolean isPreviousAuthorizationBlank() {
-        return previousAuthorization == null || previousAuthorization.isEmpty()
-                || Strings.isBlank(previousAuthorization.get(0));
+    public void removeAuthorization() {
+        getHttpHeaders().remove(AUTHORIZATION_HEADER);
     }
 }
index 0e77ce4..eefd9ba 100644 (file)
@@ -68,7 +68,7 @@ public class SubscriberService {
             final LccnSubscriptionRequest request = createRequest();
             return sender.send(info, request);
         } finally {
-            headersProvider.resetPrevious();
+            headersProvider.removeAuthorization();
         }
     }
 
diff --git a/adapters/mso-ve-vnfm-adapter/src/test/java/org/onap/so/adapters/vevnfm/provider/AuthorizationHeadersProviderTest.java b/adapters/mso-ve-vnfm-adapter/src/test/java/org/onap/so/adapters/vevnfm/provider/AuthorizationHeadersProviderTest.java
new file mode 100644 (file)
index 0000000..64503dd
--- /dev/null
@@ -0,0 +1,47 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SO
+ * ================================================================================
+ * Copyright (C) 2020 Samsung. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.adapters.vevnfm.provider;
+
+import static org.junit.Assert.*;
+import static org.onap.so.configuration.rest.BasicHttpHeadersProvider.AUTHORIZATION_HEADER;
+import org.junit.Test;
+import org.springframework.http.HttpHeaders;
+
+public class AuthorizationHeadersProviderTest {
+
+    private static final String AUTHORIZATION_EXAMPLE = "authorization";
+
+    private final AuthorizationHeadersProvider provider = new AuthorizationHeadersProvider();
+
+    @Test
+    public void testSuccessValidAuthorizationAndRemoval() {
+        final HttpHeaders headers = provider.getHttpHeaders();
+        final int size = headers.size();
+
+        provider.addAuthorization(AUTHORIZATION_EXAMPLE);
+        assertEquals(size + 1, headers.size());
+        assertTrue(headers.containsKey(AUTHORIZATION_HEADER));
+
+        provider.removeAuthorization();
+        assertEquals(size, headers.size());
+        assertFalse(headers.containsKey(AUTHORIZATION_HEADER));
+    }
+}
index f29a445..44d94df 100644 (file)
@@ -1,47 +1,47 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
-       <modelVersion>4.0.0</modelVersion>
+  <modelVersion>4.0.0</modelVersion>
 
-       <parent>
-               <groupId>org.onap.so</groupId>
-               <artifactId>packages</artifactId>
-               <version>1.4.0-SNAPSHOT</version>
-       </parent>
+  <parent>
+    <groupId>org.onap.so</groupId>
+    <artifactId>packages</artifactId>
+    <version>1.4.0-SNAPSHOT</version>
+  </parent>
 
-       <packaging>pom</packaging>
-       <artifactId>docker</artifactId>
-       <name>Docker Images</name>
-       <description>Docker Images</description>
+  <packaging>pom</packaging>
+  <artifactId>docker</artifactId>
+  <name>Docker Images</name>
+  <description>Docker Images</description>
 
-       <properties>
-               <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-               <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-               <so.project.version>${project.version}</so.project.version>
-               <docker.skip>false</docker.skip>
-               <docker.skip.build>false</docker.skip.build>
-               <docker.skip.push>false</docker.skip.push>
-               <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
-               <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
-               <docker.image.prefix>onap/so</docker.image.prefix>
-               <docker.push.phase>deploy</docker.push.phase>
-       </properties>
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+    <so.project.version>${project.version}</so.project.version>
+    <docker.skip>false</docker.skip>
+    <docker.skip.build>false</docker.skip.build>
+    <docker.skip.push>false</docker.skip.push>
+    <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
+    <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
+    <docker.image.prefix>onap/so</docker.image.prefix>
+    <docker.push.phase>deploy</docker.push.phase>
+  </properties>
 
-       <build>
-               <finalName>${project.artifactId}-${project.version}</finalName>
-               <plugins>
-                       <plugin>
-                               <groupId>org.codehaus.groovy.maven</groupId>
-                               <artifactId>gmaven-plugin</artifactId>
-                               <version>1.0</version>
-                               <executions>
-                                       <execution>
-                                               <phase>validate</phase>
-                                               <goals>
-                                                       <goal>execute</goal>
-                                               </goals>
-                                               <configuration>
-                                                       <source>
+  <build>
+    <finalName>${project.artifactId}-${project.version}</finalName>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.groovy.maven</groupId>
+        <artifactId>gmaven-plugin</artifactId>
+        <version>1.0</version>
+        <executions>
+          <execution>
+            <phase>validate</phase>
+            <goals>
+              <goal>execute</goal>
+            </goals>
+            <configuration>
+              <source>
                                                                println 'Project version: ' + project.properties['so.project.version'];
                                                                def versionArray;
                                                                if ( project.properties['so.project.version'] != null ) {
 
                                                                println 'New tag for docker: ' + project.properties['project.docker.latesttag.version'];
                                                        </source>
-                                               </configuration>
-                                       </execution>
-                               </executions>
-                       </plugin>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
 
-                       <plugin>
-                               <groupId>io.fabric8</groupId>
-                               <artifactId>docker-maven-plugin</artifactId>
-                               <version>0.31.0</version>
+      <plugin>
+        <groupId>io.fabric8</groupId>
+        <artifactId>docker-maven-plugin</artifactId>
+        <version>0.31.0</version>
 
-                               <configuration>
-                                       <verbose>true</verbose>
-                                       <apiVersion>1.23</apiVersion>
-                                       <pullRegistry>${docker.pull.registry}</pullRegistry>
-                                       <pushRegistry>${docker.push.registry}</pushRegistry>
+        <configuration>
+          <verbose>true</verbose>
+          <apiVersion>1.23</apiVersion>
+          <pullRegistry>${docker.pull.registry}</pullRegistry>
+          <pushRegistry>${docker.push.registry}</pushRegistry>
 
-                                       <images>
-                                               <image>
-                                                       <name>${docker.image.prefix}/base-image:1.0</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-base-image</dockerFile>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/vnfm-adapter</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so.adapters:mso-vnfm-etsi-adapter</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/catalog-db-adapter</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so.adapters:mso-catalog-db-adapter</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/request-db-adapter</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so.adapters:mso-requests-db-adapter</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/sdnc-adapter</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so:mso-sdnc-adapter</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/openstack-adapter</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so:mso-openstack-adapters</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/vfc-adapter</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so.adapters:mso-vfc-adapter</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                                                                               <image>
-                                                       <name>${docker.image.prefix}/so-appc-orchestrator</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so.adapters:so-appc-orchestrator</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/sdc-controller</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so:asdc-controller</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/bpmn-infra</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so:mso-infrastructure-bpmn</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/api-handler-infra</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so:mso-api-handler-infra</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/so-monitoring</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so.monitoring:so-monitoring-service</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                               <image>
-                                                       <name>${docker.image.prefix}/so-simulator</name>
-                                                       <build>
-                                                               <cleanup>try</cleanup>
-                                                               <dockerFileDir>docker-files</dockerFileDir>
-                                                               <dockerFile>Dockerfile.so-app</dockerFile>
-                                                               <tags>
-                                                                       <tag>${project.version}</tag>
-                                                                       <tag>${project.version}-${maven.build.timestamp}</tag>
-                                                                       <tag>${project.docker.latesttag.version}</tag>
-                                                               </tags>
-                                                               <assembly>
-                                                                       <inline>
-                                                                               <dependencySets>
-                                                                                       <dependencySet>
-                                                                                               <includes>
-                                                                                                       <include>org.onap.so:so-simulator</include>
-                                                                                               </includes>
-                                                                                               <outputFileNameMapping>app.jar</outputFileNameMapping>
-                                                                                       </dependencySet>
-                                                                               </dependencySets>
-                                                                       </inline>
-                                                               </assembly>
-                                                       </build>
-                                               </image>
-                                       </images>
-                               </configuration>
+          <images>
+            <image>
+              <name>${docker.image.prefix}/base-image:1.0</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-base-image</dockerFile>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/vnfm-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.adapters:mso-vnfm-etsi-adapter</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/ve-vnfm-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.adapters:mso-ve-vnfm-adapter</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/catalog-db-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.adapters:mso-catalog-db-adapter</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/request-db-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.adapters:mso-requests-db-adapter</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/sdnc-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so:mso-sdnc-adapter</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/openstack-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so:mso-openstack-adapters</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/vfc-adapter</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.adapters:mso-vfc-adapter</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/so-appc-orchestrator</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.adapters:so-appc-orchestrator</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/sdc-controller</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so:asdc-controller</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/bpmn-infra</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so:mso-infrastructure-bpmn</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/api-handler-infra</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so:mso-api-handler-infra</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/so-monitoring</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so.monitoring:so-monitoring-service</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+            <image>
+              <name>${docker.image.prefix}/so-simulator</name>
+              <build>
+                <cleanup>try</cleanup>
+                <dockerFileDir>docker-files</dockerFileDir>
+                <dockerFile>Dockerfile.so-app</dockerFile>
+                <tags>
+                  <tag>${project.version}</tag>
+                  <tag>${project.version}-${maven.build.timestamp}</tag>
+                  <tag>${project.docker.latesttag.version}</tag>
+                </tags>
+                <assembly>
+                  <inline>
+                    <dependencySets>
+                      <dependencySet>
+                        <includes>
+                          <include>org.onap.so:so-simulator</include>
+                        </includes>
+                        <outputFileNameMapping>app.jar</outputFileNameMapping>
+                      </dependencySet>
+                    </dependencySets>
+                  </inline>
+                </assembly>
+              </build>
+            </image>
+          </images>
+        </configuration>
 
-                               <executions>
-                                       <execution>
-                                               <id>clean-images</id>
-                                               <phase>pre-clean</phase>
-                                               <goals>
-                                                       <goal>remove</goal>
-                                               </goals>
-                                               <configuration>
-                                                       <removeAll>true</removeAll>
-                                               </configuration>
-                                       </execution>
+        <executions>
+          <execution>
+            <id>clean-images</id>
+            <phase>pre-clean</phase>
+            <goals>
+              <goal>remove</goal>
+            </goals>
+            <configuration>
+              <removeAll>true</removeAll>
+            </configuration>
+          </execution>
 
-                                       <execution>
-                                               <id>generate-images</id>
-                                               <phase>generate-sources</phase>
-                                               <goals>
-                                                       <goal>build</goal>
-                                               </goals>
-                                       </execution>
+          <execution>
+            <id>generate-images</id>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>build</goal>
+            </goals>
+          </execution>
 
-                                       <execution>
-                                               <id>push-images</id>
-                                               <phase>${docker.push.phase}</phase>
-                                               <goals>
-                                                       <goal>build</goal>
-                                                       <goal>push</goal>
-                                               </goals>
-                                               <configuration>
-                                                   <image>${docker.image.prefix}/catalog-db-adapter,${docker.image.prefix}/request-db-adapter,${docker.image.prefix}/sdnc-adapter,${docker.image.prefix}/openstack-adapter,${docker.image.prefix}/vfc-adapter,${docker.image.prefix}/sdc-controller,${docker.image.prefix}/bpmn-infra,${docker.image.prefix}/api-handler-infra,${docker.image.prefix}/so-monitoring,${docker.image.prefix}/so-simulator</image>
-                                               </configuration>
-                                       </execution>
-                               </executions>
-                       </plugin>
+          <execution>
+            <id>push-images</id>
+            <phase>${docker.push.phase}</phase>
+            <goals>
+              <goal>build</goal>
+              <goal>push</goal>
+            </goals>
+            <configuration>
+              <image>${docker.image.prefix}/catalog-db-adapter,${docker.image.prefix}/request-db-adapter,${docker.image.prefix}/sdnc-adapter,${docker.image.prefix}/openstack-adapter,${docker.image.prefix}/vfc-adapter,${docker.image.prefix}/sdc-controller,${docker.image.prefix}/bpmn-infra,${docker.image.prefix}/api-handler-infra,${docker.image.prefix}/so-monitoring,${docker.image.prefix}/so-simulator</image>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
 
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-deploy-plugin</artifactId>
-                               <version>2.8</version>
-                               <configuration>
-                                       <skip>true</skip>
-                               </configuration>
-                       </plugin>
-               </plugins>
-       </build>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-deploy-plugin</artifactId>
+        <version>2.8</version>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 
-       <dependencies>
-               <dependency>
-                       <groupId>org.onap.so.adapters</groupId>
-                       <artifactId>mso-vnfm-etsi-adapter</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so.adapters</groupId>
-                       <artifactId>mso-catalog-db-adapter</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so.adapters</groupId>
-                       <artifactId>mso-requests-db-adapter</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so</groupId>
-                       <artifactId>mso-sdnc-adapter</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so</groupId>
-                       <artifactId>mso-openstack-adapters</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so.adapters</groupId>
-                       <artifactId>mso-vfc-adapter</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so.adapters</groupId>
-                       <artifactId>so-appc-orchestrator</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so</groupId>
-                       <artifactId>asdc-controller</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so</groupId>
-                       <artifactId>mso-infrastructure-bpmn</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so</groupId>
-                       <artifactId>mso-api-handler-infra</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.so.monitoring</groupId>
-                       <artifactId>so-monitoring-service</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-           <dependency>
-                       <groupId>org.onap.so</groupId>
-                       <artifactId>so-simulator</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-       </dependencies>
+  <dependencies>
+    <dependency>
+      <groupId>org.onap.so.adapters</groupId>
+      <artifactId>mso-vnfm-etsi-adapter</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so.adapters</groupId>
+      <artifactId>mso-ve-vnfm-adapter</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so.adapters</groupId>
+      <artifactId>mso-catalog-db-adapter</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so.adapters</groupId>
+      <artifactId>mso-requests-db-adapter</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so</groupId>
+      <artifactId>mso-sdnc-adapter</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so</groupId>
+      <artifactId>mso-openstack-adapters</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so.adapters</groupId>
+      <artifactId>mso-vfc-adapter</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so.adapters</groupId>
+      <artifactId>so-appc-orchestrator</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so</groupId>
+      <artifactId>asdc-controller</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so</groupId>
+      <artifactId>mso-infrastructure-bpmn</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so</groupId>
+      <artifactId>mso-api-handler-infra</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so.monitoring</groupId>
+      <artifactId>so-monitoring-service</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.onap.so</groupId>
+      <artifactId>so-simulator</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+  </dependencies>
 </project>