diff options
author | Matej Perina <matej.perina@pantheon.tech> | 2019-04-03 09:17:40 +0200 |
---|---|---|
committer | Samuel Kontris <samuel.kontris@pantheon.tech> | 2019-08-28 12:18:55 +0200 |
commit | e385a7a1d1934c6a3d22df3c3244678ca415134a (patch) | |
tree | 477dead11f726bd3b61d29e56654eaca49a38b20 /lighty/lighty-ubuntu-docker/pom.xml | |
parent | 400d508da587d8c4fd5c19c15437b2fc2213c9b7 (diff) |
Proposal to remove OSGi dependencies from the CCSDK project
Dependencies on the OSGi frameworks and libraries are removed
by integrating the CCSDK project with the lighty.io.
It's a toolkit that allows to use ODL services (in this case
core services and the Restconf) without the dependency
on the Karaf framework and the Blueprint DI.
The ccsdk-lighty-module artifact contains lighty.io module
that groups all other modules from other repositories and
starts/stops them at once.
The ccsdk-lighty-distribution artifact starts
the lighty.io core, Restconf and the CCSDK integrated with
the lighty.io and creates zip distribution with the CCSDK
lighty.io application and necessary libraries.
The distribution-lighty-ubuntu-docker artifact creates
the docker image with the zip distribution from
the ccsdk-lighty-application artifact and necessary
configuration files.
For more information see the README.md file
in the lighty/docs directory.
More info about the lighty.io - https://lighty.io
Change-Id: Id29935c8e2951b400ad3217ff412bc5155384487
Signed-off-by: Matej Perina <matej.perina@pantheon.tech>
Signed-off-by: Samuel Kontris <samuel.kontris@pantheon.tech>
Diffstat (limited to 'lighty/lighty-ubuntu-docker/pom.xml')
-rw-r--r-- | lighty/lighty-ubuntu-docker/pom.xml | 343 |
1 files changed, 343 insertions, 0 deletions
diff --git a/lighty/lighty-ubuntu-docker/pom.xml b/lighty/lighty-ubuntu-docker/pom.xml new file mode 100644 index 00000000..53616037 --- /dev/null +++ b/lighty/lighty-ubuntu-docker/pom.xml @@ -0,0 +1,343 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.onap.ccsdk.distribution</groupId> + <artifactId>distribution-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + </parent> + + <artifactId>distribution-lighty-ubuntu-docker</artifactId> + <packaging>pom</packaging> + + <name>ccsdk-distribution :: lighty :: ${project.artifactId}</name> + <description>Creates Lighty container</description> + <organization> + <name>ONAP</name> + </organization> + + <properties> + <image.name>onap/ccsdk-lighty-ubuntu-image</image.name> + <lighty.app.name>ccsdk-lighty-distribution-${project.version}</lighty.app.name> + <lighty.app.zip>${lighty.app.name}-bin.zip</lighty.app.zip> + <lighty.app.jar>${lighty.app.name}.jar</lighty.app.jar> + <ccsdk.project.version>${project.version}</ccsdk.project.version> + <ccsdk.build.timestamp>${maven.build.timestamp}</ccsdk.build.timestamp> + <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy> + <docker.push.phase>deploy</docker.push.phase> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-lighty-dependency-versions</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <build> + <plugins> + + + <plugin> + <groupId>org.codehaus.groovy.maven</groupId> + <artifactId>gmaven-plugin</artifactId> + <executions> + <execution> + <phase>validate</phase> + <goals> + <goal>execute</goal> + </goals> + <configuration> + <source>${basedir}/../../src/main/scripts/TagVersion.groovy</source> + </configuration> + </execution> + </executions> + </plugin> + + + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <version>3.0.2</version> + <executions> + <execution> + <id>unpack dgs</id> + <phase>generate-sources</phase> + <goals> + <goal>unpack</goal> + </goals> + <configuration> + <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory> + <artifactItems> + <artifactItem> + <groupId>${project.groupId}</groupId> + <artifactId>platform-logic-installer</artifactId> + <version>${project.version}</version> + <type>zip</type> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <artifactId>maven-resources-plugin</artifactId> + <version>2.6</version> + <executions> + <execution> + <id>copy-dockerfile</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage</outputDirectory> + <resources> + <resource> + <directory>src/main/docker</directory> + <includes> + <include>Dockerfile</include> + </includes> + <filtering>true</filtering> + </resource> + </resources> + </configuration> + </execution> + + <execution> + <id>copy-ccsdk-lighty-zip</id> + <goals> + <goal>copy-resources</goal> + </goals> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage</outputDirectory> + <resources> + <resource> + <directory>${basedir}/../ccsdk-lighty-distribution/target</directory> + <includes> + <include>${lighty.app.zip}</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + + <execution> + <id>copy-scripts</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory> + <resources> + <resource> + <directory>./src/main/scripts</directory> + <includes> + <include>*.sh</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + + <execution> + <id>copy-odl-resources</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage</outputDirectory> + <resources> + <resource> + <directory>./src/main/resources</directory> + <includes> + <include>idmlight.db.mv.db</include> + <include>org.ops4j.pax.logging.cfg</include> + <include>install_ccsdk.yml</include> + <include>ansible-sources.list</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + <execution> + <id>copy-config</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage</outputDirectory> + <resources> + <resource> + <directory>./src/main/resources</directory> + <includes> + <include>org.ops4j.pax.logging.cfg</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + <execution> + <id>copy-data</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data</outputDirectory> + <resources> + <resource> + <directory>./src/main/resources</directory> + <includes> + <include>*.dump</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + <execution> + <id>copy-properties</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/properties</outputDirectory> + <resources> + <resource> + <directory>./src/main/properties</directory> + <includes> + <include>*.properties</include> + <include>*.json</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + <execution> + <id>copy-keystores</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/stores</outputDirectory> + <resources> + <resource> + <directory>./src/main/stores</directory> + <includes> + <include>*.jks</include> + </includes> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <version>1.5.0</version> + <executions> + + <execution> + <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/ccsdk</argument> + <argument>-name</argument> + <argument>*.sh</argument> + <argument>-exec</argument> + <argument>chmod</argument> + <argument>+x</argument> + <argument>{}</argument> + <argument>;</argument> + </arguments> + </configuration> + </execution> + </executions> + </plugin> + + </plugins> + </build> + + <profiles> + <profile> + <id>docker</id> + <build> + <plugins> + <plugin> + <groupId>io.fabric8</groupId> + <artifactId>docker-maven-plugin</artifactId> + <version>0.28.0</version> + <inherited>false</inherited> + <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> + <executions> + <execution> + <id>generate-images</id> + <phase>package</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> + </execution> + </executions> + </plugin> + + </plugins> + </build> + </profile> + + </profiles> +</project> |