Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / installation / sdnc / pom.xml
index 0003106..03b3af6 100644 (file)
@@ -5,12 +5,10 @@
     <parent>
         <groupId>org.onap.sdnc.oam</groupId>
         <artifactId>installation</artifactId>
-        <version>2.1.1-SNAPSHOT</version>
+        <version>2.7.0-SNAPSHOT</version>
     </parent>
 
-    <groupId>org.onap.sdnc.oam</groupId>
     <artifactId>installation-sdnc</artifactId>
-    <version>2.1.1-SNAPSHOT</version>
     <packaging>pom</packaging>
 
     <name>sdnc-oam :: installation :: ${project.artifactId}</name>
     <properties>
         <image.name>onap/sdnc-aaf-image</image.name>
         <standalone.image.name>onap/sdnc-image</standalone.image.name>
-        <sdnc.project.version>${project.version}</sdnc.project.version>
-        <sdnc.build.timestamp>${maven.build.timestamp}</sdnc.build.timestamp>
-        <sdnc.northbound.version>2.1.0</sdnc.northbound.version>
-        <ccsdk.docker.version>1.1.0</ccsdk.docker.version>
+        <ccsdk.docker.version>${ccsdk.docker.odlsli.alpine.version}</ccsdk.docker.version>
         <sdnc.keystore>org.onap.sdnc.p12</sdnc.keystore>
         <sdnc.keypass><![CDATA[;:G58,7ZhqOSI:7^oZCY[9Dv]]></sdnc.keypass>
         <sdnc.secureport>8443</sdnc.secureport>
+
+        <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
+        <sdnc.build.timestamp>${maven.build.timestamp}</sdnc.build.timestamp>
+
         <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
-        <docker.push.phase>deploy</docker.push.phase>
-        <docker.verbose>true</docker.verbose> 
         <docker.autoCreateCustomNetworks>true</docker.autoCreateCustomNetworks>
-        <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
+
+        <!-- SDNR Features Boot -->
+        <sdnr.features.boot>ccsdk-features-all</sdnr.features.boot>
+        <sdnr.features.repo>
+            mvn:org.onap.ccsdk.oran/a1-adapter-northbound/${ccsdk.oran.a1adapter.version}/xml/features,\
+            mvn:org.onap.ccsdk.features/ccsdk-features-all/${ccsdk.features.version}/xml/features,\
+            mvn:org.onap.ccsdk.features.sdnr.northbound/sdnr-northbound-all/${ccsdk.features.version}/xml/features,\
+            mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-feature-aggregator/${ccsdk.features.version}/xml/features,\
+            mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-feature-aggregator-devicemanager/${ccsdk.features.version}/xml/features,\
+            mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-feature-aggregator-devicemanager-base/${ccsdk.features.version}/xml/features,\
+            mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-feature-aggregator-oauth/${ccsdk.features.version}/xml/features
+        </sdnr.features.repo>
+
+        <!-- SDNC Features Boot -->
+        <sdnc.features.boot>sdnc-northbound-all,odl-restconf-nb-bierman02-</sdnc.features.boot>
+<!--       <sdnc.features.repo>
+            mvn:org.onap.sdnc.northbound/sdnc-northbound-all/${sdnc.northbound.version}/xml/features, \
+            mvn:org.onap.ccsdk.odl-legacy.netconf/odl-restconf-nb-bierman02/${ccsdk.bierman.api.version}/xml/features
+        </sdnc.features.repo>-->
+        <sdnc.features.repo>
+            mvn:org.onap.sdnc.northbound/sdnc-northbound-all/${sdnc.northbound.version}/xml/features
+        </sdnc.features.repo>
     </properties>
 
     <dependencies>
+       <!-- Biermann RESTCONF northbound API -->
+<!--   <dependency>
+            <groupId>org.onap.ccsdk.odl-legacy.netconf</groupId>
+           <artifactId>restconf-nb-bierman02-installer</artifactId>
+           <version>${ccsdk.bierman.api.version}</version>
+           <type>zip</type>
+           <classifier>repo</classifier>
+       </dependency>-->
         <dependency>
             <groupId>org.onap.sdnc.northbound</groupId>
             <artifactId>generic-resource-api-installer</artifactId>
@@ -44,7 +70,7 @@
             <type>zip</type>
             <classifier>repo</classifier>
         </dependency>
-       <dependency>
+        <dependency>
             <groupId>org.onap.sdnc.northbound</groupId>
             <artifactId>optical-service-installer</artifactId>
             <version>${sdnc.northbound.version}</version>
             <type>zip</type>
             <classifier>repo</classifier>
         </dependency>
+        <!-- SDNR Related Features : Start -->
+        <dependency>
+            <groupId>org.onap.ccsdk.features</groupId>
+            <artifactId>features-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.features.sdnr.wt</groupId>
+            <artifactId>sdnr-wt-feature-aggregator-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.features</groupId>
+            <artifactId>aafshiro-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
+            <artifactId>sdnr-northbound-features-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
+            <artifactId>oofpcipoc-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
+            <artifactId>CMNotify-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
+            <artifactId>ranSlice-installer</artifactId>
+            <version>${ccsdk.features.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.oran</groupId>
+            <artifactId>a1-adapter-northbound-installer</artifactId>
+            <version>${ccsdk.oran.a1adapter.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.oran</groupId>
+            <artifactId>a1-adapter-installer</artifactId>
+            <version>${ccsdk.oran.a1adapter.version}</version>
+            <type>zip</type>
+            <classifier>repo</classifier>
+        </dependency>
+        <!-- SDNR Related Features : End -->
     </dependencies>
 
     <build>
         <plugins>
-
-
             <plugin>
-                <groupId>org.codehaus.groovy.maven</groupId>
-                <artifactId>gmaven-plugin</artifactId>
+                <groupId>org.codehaus.gmaven</groupId>
+                <artifactId>groovy-maven-plugin</artifactId>
+                <version>2.1.1</version>
                 <executions>
                     <execution>
                         <phase>validate</phase>
             <plugin>
                 <groupId>io.fabric8</groupId>
                 <artifactId>docker-maven-plugin</artifactId>
-                <version>0.28.0</version>
+                <version>0.34.0</version>
                 <inherited>false</inherited>
+                <configuration>
+                    <images>
+                        <image>
+                            <name>${image.name}</name>
+                            <build>
+                                <cleanup>try</cleanup>
+                                <noCache>true</noCache>
+                                <contextDir>${basedir}/target/docker-stage</contextDir>
+                                <dockerFile>Dockerfile</dockerFile>
+                                <args>
+                                    <AAF>true</AAF>
+                                </args>
+                                <tags>
+                                    <tag>${project.docker.latestminortag.version}</tag>
+                                    <tag>${project.docker.latestfulltag.version}</tag>
+                                    <tag>${project.docker.latesttagtimestamp.version}</tag>
+                                </tags>
+                            </build>
+                        </image>
+                        <image>
+                            <name>${standalone.image.name}</name>
+                            <build>
+                                <cleanup>try</cleanup>
+                                <noCache>true</noCache>
+                                <contextDir>${basedir}/target/docker-stage</contextDir>
+                                <dockerFile>Dockerfile</dockerFile>
+                                <args>
+                                    <AAF>false</AAF>
+                                </args>
+                                <tags>
+                                    <tag>${project.docker.latestminortag.version}</tag>
+                                    <tag>${project.docker.latestfulltag.version}</tag>
+                                    <tag>${project.docker.latesttagtimestamp.version}</tag>
+                                </tags>
+                            </build>
+                        </image>
+                    </images>
+                    <verbose>${docker.verbose}</verbose>
+                    <skipPush>${docker.skip.push}</skipPush>
+                </configuration>
                 <executions>
                     <execution>
-                        <id>generate-images</id>
-                        <phase>package</phase>
+                        <id>build-push-images</id>
                         <goals>
                             <goal>build</goal>
+                            <goal>push</goal>
                         </goals>
-                        <configuration>
-                           <images>
-                            <image>
-                             <name>${image.name}</name>
-                             <build>
-                              <cleanup>try</cleanup>
-                              <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
-                              <dockerFile>Dockerfile</dockerFile>
-                              <tags>
-                                 <tag>${project.docker.latestminortag.version}</tag>
-                                 <tag>${project.docker.latestfulltag.version}</tag>
-                                 <tag>${project.docker.latesttagtimestamp.version}</tag>
-                              </tags>
-                             </build>
-                            </image>
-                           </images>
-                          </configuration>
                     </execution>
-                    <execution>
-                        <id>start-it-instance</id>
-                        <phase>pre-integration-test</phase>
-                        <goals>
-                            <goal>start</goal>
-                        </goals>
-                        <configuration>
-                            <images>
-                                <image>
-                                    <name>mariadb:10.5</name>
-                                    <alias>sdnc-db</alias>
-                                    <run>
-                                        <env>
-                                            <MYSQL_ROOT_PASSWORD>itsASecret</MYSQL_ROOT_PASSWORD>
-                                            <MYSQL_USER>sdnctl</MYSQL_USER>
-                                            <MYSQL_PASSWORD>gamma</MYSQL_PASSWORD>
-                                            <MYSQL_DATABASE>sdnctl</MYSQL_DATABASE>
-                                        </env>
-                                        <network>
-                                            <mode>custom</mode>
-                                            <name>sdnc</name>
-                                            <alias>dbhost</alias>
-                                            <alias>sdnctldb01</alias>
-                                            <alias>sdnctldb02</alias>
-                                        </network>
-                                        <ports>
-                                            <port>sdncdb.port:3306</port>
-                                        </ports>
-                                        <log>
-                                            <enabled>true</enabled>
-                                        </log>
-                                    </run>
-                                </image>
-                                <image>
-                                    <name>${image.name}:${project.docker.latesttagtimestamp.version}</name>
-                                    <alias>sdnc-container</alias>
-                                    <run>
-                                        <env>
-                                            <MYSQL_ROOT_PASSWORD>itsASecret</MYSQL_ROOT_PASSWORD>
-                                            <MYSQL_USER>sdnctl</MYSQL_USER>
-                                            <MYSQL_PASSWORD>gamma</MYSQL_PASSWORD>
-                                            <MYSQL_DATABASE>sdnctl</MYSQL_DATABASE>
-                                            <SDNC_CONFIG_DIR>/opt/onap/sdnc/data/properties</SDNC_CONFIG_DIR>
-                                            <KARAF_CONSOLE_LOG_LEVEL>INFO</KARAF_CONSOLE_LOG_LEVEL>
-                                        </env>
-                                        <dependsOn>
-                                            <container>sdnc-db</container>
-                                        </dependsOn>
-                                        <network>
-                                            <mode>custom</mode>
-                                            <name>sdnc</name>
-                                            <alias>sdnc</alias>
-                                        </network>&gt;
-                                        <ports>
-                                            <port>sdnc.port:8181</port>
-                                        </ports>
-                                        <wait>
-                                            <log>all warp coils are now operating at peak efficiency</log>
-                                            <time>120000</time>
-                                        </wait>
-                                        <log>
-                                            <enabled>true</enabled>
-                                        </log>
-                                    </run>
-                                </image>
-                            </images>
-                        </configuration>
-                    </execution>
-                    <execution>
-                        <id>stop-it-instance</id>
-                        <phase>post-integration-test</phase>
-                        <goals>
-                            <goal>stop</goal>
-                        </goals>
-                    </execution>
-                    <execution>
-                      <id>push-images</id>
-                      <phase>${docker.push.phase}</phase>
-                      <goals>
-                       <goal>build</goal>
-                       <goal>push</goal>
-                      </goals>
-                       <configuration>
-                        <images>
-                         <image>
-                          <name>${image.name}</name>
-                          <build>
-                           <cleanup>try</cleanup>
-                           <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
-                           <dockerFile>Dockerfile</dockerFile>
-                           <tags>
-                              <tag>${project.docker.latestminortag.version}</tag>
-                              <tag>${project.docker.latestfulltag.version}</tag>
-                              <tag>${project.docker.latesttagtimestamp.version}</tag>
-                           </tags>
-                          </build>
-                         </image>
-                        </images>
-                       </configuration>
-                   </execution>
-                   <execution>
-                     <id>generate-standalone-images</id>
-                     <phase>package</phase>
-                     <goals>
-                      <goal>build</goal>
-                     </goals>
-                     <configuration>
-                      <images>
-                       <image>
-                        <name>${standalone.image.name}</name>
-                        <build>
-                         <cleanup>try</cleanup>
-                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
-                         <dockerFile>standalone.Dockerfile</dockerFile>
-                         <tags>
-                             <tag>${project.docker.latestminortag.version}</tag>
-                             <tag>${project.docker.latestfulltag.version}</tag>
-                             <tag>${project.docker.latesttagtimestamp.version}</tag>
-                         </tags>
-                        </build>
-                       </image>
-                      </images>
-                     </configuration>
-                   </execution>
-                   <execution>
-                     <id>push-standalone-images</id>
-                     <phase>${docker.push.phase}</phase>
-                     <goals>
-                      <goal>build</goal>
-                      <goal>push</goal>
-                     </goals>
-                     <configuration>
-                       <images>
-                        <image>
-                         <name>${standalone.image.name}</name>
-                         <build>
-                          <cleanup>try</cleanup>
-                          <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
-                          <dockerFile>standalone.Dockerfile</dockerFile>
-                          <tags>
-                             <tag>${project.docker.latestminortag.version}</tag>
-                             <tag>${project.docker.latestfulltag.version}</tag>
-                             <tag>${project.docker.latesttagtimestamp.version}</tag>
-                          </tags>
-                         </build>
-                        </image>
-                       </images>
-                     </configuration>
-                  </execution>
                 </executions>
             </plugin>
             <plugin>
                         <id>copy-dockerfile</id>
                         <goals>
                             <goal>copy-resources</goal>
-                        </goals><!-- here the phase you need -->
+                        </goals>
+                        <!-- here the phase you need -->
                         <phase>validate</phase>
                         <configuration>
                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
                                     <directory>src/main/docker</directory>
                                     <includes>
                                         <include>Dockerfile</include>
-                                        <include>standalone.Dockerfile</include>
                                     </includes>
                                     <filtering>true</filtering>
                                 </resource>
                         <id>copy-scripts</id>
                         <goals>
                             <goal>copy-resources</goal>
-                        </goals><!-- here the phase you need -->
+                        </goals>
+                        <!-- here the phase you need -->
                         <phase>validate</phase>
                         <configuration>
                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/bin</outputDirectory>
                                         <include>*.py</include>
                                         <include>*.sh</include>
                                     </includes>
-                                    <filtering>false</filtering>
+                                    <filtering>true</filtering>
                                 </resource>
                             </resources>
                         </configuration>
                         <id>copy-tarballs</id>
                         <goals>
                             <goal>copy-resources</goal>
-                        </goals><!-- here the phase you need -->
+                        </goals>
+                        <!-- here the phase you need -->
                         <phase>validate</phase>
                         <configuration>
                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
                         <id>copy-data</id>
                         <goals>
                             <goal>copy-resources</goal>
-                        </goals><!-- here the phase you need -->
+                        </goals>
+                        <!-- here the phase you need -->
                         <phase>validate</phase>
                         <configuration>
                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data</outputDirectory>
                                     <directory>src/main/resources</directory>
                                     <includes>
                                         <include>*.dump</include>
+                                        <include>oauth-aaa-app-config.xml</include>
                                     </includes>
                                     <filtering>false</filtering>
                                 </resource>
                         <id>copy-properties</id>
                         <goals>
                             <goal>copy-resources</goal>
-                        </goals><!-- here the phase you need -->
+                        </goals>
+                        <!-- here the phase you need -->
                         <phase>validate</phase>
                         <configuration>
                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/properties</outputDirectory>
                         <id>copy-keystores</id>
                         <goals>
                             <goal>copy-resources</goal>
-                        </goals><!-- here the phase you need -->
+                        </goals>
+                        <!-- here the phase you need -->
                         <phase>validate</phase>
                         <configuration>
                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/stores</outputDirectory>
                 <version>3.0.2</version>
                 <executions>
                     <execution>
-                        <id>unpack sdnc features</id>
+                        <id>unpack-sdnc-features</id>
                         <phase>generate-sources</phase>
                         <goals>
                             <goal>unpack-dependencies</goal>
                         </configuration>
                     </execution>
                     <execution>
-                        <id>unpack dgs</id>
+                        <id>unpack-platform-logic</id>
                         <phase>generate-sources</phase>
                         <goals>
                             <goal>unpack</goal>
                             </artifactItems>
                         </configuration>
                     </execution>
-                    <execution>
-                        <id>unpack migration utility</id>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>unpack</goal>
-                        </goals>
-                        <configuration>
-                            <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data-migrator</outputDirectory>
-                            <artifactItems>
-                                <artifactItem>
-                                    <groupId>org.onap.sdnc.oam</groupId>
-                                    <artifactId>data-migrator</artifactId>
-                                    <version>${project.version}</version>
-                                    <type>zip</type>
-                                </artifactItem>
-                            </artifactItems>
-                        </configuration>
-                    </execution>
                 </executions>
             </plugin>
             <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>exec-maven-plugin</artifactId>
-                <version>1.5.0</version>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-antrun-plugin</artifactId>
+                <version>1.8</version>
                 <executions>
                     <execution>
-                        <id>change shell permissions</id>
+                        <id>change-shell-permissions</id>
                         <phase>process-sources</phase>
-                        <goals>
-                            <goal>exec</goal>
-                        </goals>
                         <configuration>
-                            <executable>/usr/bin/find</executable>
-                            <arguments>
-                                <argument>${basedir}/target/docker-stage/opt/onap/sdnc</argument>
-                                <argument>-name</argument>
-                                <argument>*.sh</argument>
-                                <argument>-exec</argument>
-                                <argument>chmod</argument>
-                                <argument>+x</argument>
-                                <argument>{}</argument>
-                                <argument>;</argument>
-                            </arguments>
+                            <target>
+                                <chmod dir="${basedir}/target/docker-stage/opt/onap/sdnc" perm="+x" includes="**/*.sh"/>
+                            </target>
                         </configuration>
+                        <goals>
+                            <goal>run</goal>
+                        </goals>
                     </execution>
                 </executions>
             </plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-failsafe-plugin</artifactId>
                 <executions>
-                  <execution>
-                    <goals>
-                      <goal>integration-test</goal>
-                      <goal>verify</goal>
-                    </goals>
-                  </execution>
+                    <execution>
+                        <goals>
+                            <goal>integration-test</goal>
+                            <goal>verify</goal>
+                        </goals>
+                    </execution>
                 </executions>
                 <configuration>
-                  <skipITs>false</skipITs>
-                  <environmentVariables>
-                    <SDNC_PORT>${sdnc.port}</SDNC_PORT>
-                  </environmentVariables>
+                    <skipITs>false</skipITs>
+                    <environmentVariables>
+                        <SDNC_PORT>${sdnc.port}</SDNC_PORT>
+                    </environmentVariables>
                 </configuration>
-              </plugin>
+            </plugin>
         </plugins>
     </build>
 </project>