aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxudan16 <xudan16@huawei.com>2022-07-08 14:45:52 +0800
committerDan Xu <xudan16@huawei.com>2022-07-12 02:24:05 +0000
commitfe06a99cd9bce8ea94493d9735d629377946b3f2 (patch)
treef9395b9a5ff6b991ce5ce11af60f1082897e71be
parent2369b55a48d6ca3ce251b86e0c4150806e60f183 (diff)
Add standalone module into intent analysis
This standalone module is used for docker build. This is align with UUI other projects. Signed-off-by: xudan16 <xudan16@huawei.com> Issue-ID: USECASEUI-693 Change-Id: I5fa71ff770f1d27851cc37460c37ca5477393bf2
-rw-r--r--pom.xml16
-rw-r--r--standalone/pom.xml210
-rw-r--r--standalone/src/main/assembly/Dockerfile14
3 files changed, 240 insertions, 0 deletions
diff --git a/pom.xml b/pom.xml
index 96ecf00..bd3e901 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,4 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (C) 2022 Huawei Technologies Co., Ltd. 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.
+ -->
<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">
@@ -17,6 +32,7 @@
<version>0.0.1-SNAPSHOT</version>
<modules>
<module>intentanalysis</module>
+ <module>standalone</module>
</modules>
<properties>
diff --git a/standalone/pom.xml b/standalone/pom.xml
new file mode 100644
index 0000000..08be9d3
--- /dev/null
+++ b/standalone/pom.xml
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (C) 2022 Huawei Technologies Co., Ltd. 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.
+ -->
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.onap.usecase-ui.intent-analysis</groupId>
+ <artifactId>usecase-ui-intent-analysis-parent</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.onap.usecase-ui.intent-analysis</groupId>
+ <artifactId>standalone</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <name>standalone</name>
+ <description>Distribute Binary Files and Docker Image for Intent Analysis Server</description>
+
+ <properties>
+ <intent.version>0.0.1</intent.version>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <java.version>1.8</java.version>
+ <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
+ <linux64outputdir>target/assembly/linux64</linux64outputdir>
+ <dockeroutput>target/version/${intent.version}</dockeroutput>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.onap.usecase-ui.intent-analysis</groupId>
+ <artifactId>server</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <build>
+ <finalName>usecase-ui-intent-analysis</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-resources-linux64</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${linux64outputdir}</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/assembly/</directory>
+ <filtering>false</filtering>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ <excludes>
+ <exclude>Dockerfile</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <overwrite>true</overwrite>
+ </configuration>
+ </execution>
+ <execution>
+ <id>copy-dockerfile</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${dockeroutput}</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/assembly/</directory>
+ <filtering>false</filtering>
+ <includes>
+ <include>Dockerfile</include>
+ </includes>
+ </resource>
+ </resources>
+ <overwrite>true</overwrite>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.8</version>
+ <executions>
+ <execution>
+ <id>copy-jar-linux64</id>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <phase>prepare-package</phase>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>org.onap.usecase-ui.intent-analysis</groupId>
+ <artifactId>server</artifactId>
+ <type>jar</type>
+ <overWrite>true</overWrite>
+ <outputDirectory>${linux64outputdir}</outputDirectory>
+ <destFileName>usecase-ui-intent-analysis.jar</destFileName>
+ </artifactItem>
+ </artifactItems>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.8</version>
+ <executions>
+ <execution>
+ <id>distribution</id>
+ <phase>package</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks name="${project.artifactId}">
+ <tar destfile="${dockeroutput}/usecase-ui-intent-analysis-${project.version}-linux64.tar.gz" longfile="posix" compression="gzip">
+ <tarfileset dir="${linux64outputdir}" filemode="0644" dirmode="0755">
+ <exclude name="**/*.sh"/>
+ </tarfileset>
+ <tarfileset dir="${linux64outputdir}" filemode="0755" dirmode="0755">
+ <include name="**/*.sh"/>
+ </tarfileset>
+ </tar>
+ <attachartifact file="${dockeroutput}/usecase-ui-intent-analysis-${project.version}-linux64.tar.gz" classifier="linux64" type="tar.gz"/>
+ </tasks>
+ </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.16.5</version>
+ <inherited>false</inherited>
+ <configuration>
+ <images>
+ <image>
+ <name>onap/usecase-ui-intent-analysis</name>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${basedir}/${dockeroutput}</dockerFileDir>
+ <dockerFile>${basedir}/${dockeroutput}/Dockerfile</dockerFile>
+ <tags>
+ <tag>${intent.version}-SNAPSHOT-latest</tag>
+ <tag>${intent.version}-STAGING-latest</tag>
+ <tag>${intent.version}-STAGING-${maven.build.timestamp}</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>deploy</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
diff --git a/standalone/src/main/assembly/Dockerfile b/standalone/src/main/assembly/Dockerfile
new file mode 100644
index 0000000..cdbe957
--- /dev/null
+++ b/standalone/src/main/assembly/Dockerfile
@@ -0,0 +1,14 @@
+FROM nexus3.onap.org:10001/onap/integration-java11:9.0.0
+
+USER root
+
+RUN mkdir /home/uui
+
+ADD usecase-ui-intent-analysis-*-linux64.tar.gz /home/uui/
+
+WORKDIR /home/uui
+
+EXPOSE 8083
+
+ENTRYPOINT ["sh", "-c"]
+CMD ["exec java -jar usecase-ui-intent-analysis.jar"]