Fix docker build error for usecase-ui-server
[usecase-ui/server.git] / standalone / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3     Copyright 2016-2017 ZTE Corporation.
4
5     Licensed under the Apache License, Version 2.0 (the "License");
6     you may not use this file except in compliance with the License.
7     You may obtain a copy of the License at
8
9         http://www.apache.org/licenses/LICENSE-2.0
10
11     Unless required by applicable law or agreed to in writing, software
12     distributed under the License is distributed on an "AS IS" BASIS,
13     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14     See the License for the specific language governing permissions and
15     limitations under the License.
16 -->
17 <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">
18     <parent>
19         <groupId>org.onap.usecase-ui.server</groupId>
20         <artifactId>usecase-ui-server-parent</artifactId>
21         <version>1.2.0-SNAPSHOT</version>
22     </parent>
23
24     <modelVersion>4.0.0</modelVersion>
25     <artifactId>standalone</artifactId>
26     <packaging>pom</packaging>
27     <name>usecase-ui-server/standalone</name>
28
29     <properties>
30         <packagename>usecase-ui-server</packagename>
31         <linux64id>linux64</linux64id>
32         <win64id>win64</win64id>
33         <linux64outputdir>target/assembly/${linux64}</linux64outputdir>
34         <win64outputdir>target/assembly/${win64id}</win64outputdir>
35         <version.output>target/version</version.output>
36         <usecaseui.version>1.2.0</usecaseui.version>
37         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
38     </properties>
39
40     <build>
41         <finalName>usecse-ui-server</finalName>
42         <plugins>
43             <plugin>
44               <groupId>org.apache.maven.plugins</groupId> 
45               <artifactId>maven-resources-plugin</artifactId>
46               <version>2.4.3</version>
47                 <executions>
48                     <execution>
49                         <id>copy-resources-${linux64id}</id>
50                         <phase>process-resources</phase>
51                         <goals>
52                             <goal>copy-resources</goal>
53                         </goals>
54                         <configuration>
55                             <outputDirectory>${linux64outputdir}</outputDirectory>
56                             <resources>
57                                 <resource>
58                                     <directory>src/main/assembly/</directory>
59                                     <filtering>false</filtering>
60                                     <includes>
61                                         <include>**/*</include>
62                                     </includes>
63                                     <excludes>
64                                         <exclude>**/*.bat</exclude>
65                                         <exclude>Dockerfile</exclude>
66                                     </excludes>
67                                 </resource>
68                             </resources>
69                             <overwrite>true</overwrite>
70                         </configuration>
71                     </execution>
72                     <execution>
73                         <id>copy-resources-${win64id}</id>
74                         <phase>process-resources</phase>
75                         <goals>
76                             <goal>copy-resources</goal>
77                         </goals>
78                         <configuration>
79                             <outputDirectory>${win64outputdir}</outputDirectory>
80                             <resources>
81                                 <resource>
82                                     <directory>src/main/assembly/</directory>
83                                     <filtering>false</filtering>
84                                     <includes>
85                                         <include>**/*</include>
86                                     </includes>
87                                     <excludes>
88                                         <exclude>**/*.sh</exclude>
89                                         <exclude>Dockerfile</exclude>
90                                     </excludes>
91                                 </resource>
92                             </resources>
93                             <overwrite>true</overwrite>
94                         </configuration>
95                     </execution>
96                     <execution>
97                         <id>copy-dockerfile</id>
98                         <phase>process-resources</phase>
99                         <goals>
100                             <goal>copy-resources</goal>
101                         </goals>
102                         <configuration>
103                             <outputDirectory>${version.output}</outputDirectory>
104                             <resources>
105                                 <resource>
106                                     <directory>src/main/assembly/</directory>
107                                     <filtering>false</filtering>
108                                     <includes>
109                                         <include>Dockerfile</include>
110                                     </includes>
111                                 </resource>
112                             </resources>
113                             <overwrite>true</overwrite>
114                         </configuration>
115                     </execution>
116                 </executions>
117             </plugin>
118             <plugin>
119                 <groupId>org.apache.maven.plugins</groupId>
120                 <artifactId>maven-dependency-plugin</artifactId>
121                 <version>2.8</version>
122                 <executions>
123                     <execution>
124                         <id>copy-jar-${linux64id}</id>
125                         <goals>
126                             <goal>copy</goal>
127                         </goals>
128                         <phase>prepare-package</phase>
129                         <configuration>
130                             <artifactItems>
131                                 <artifactItem>
132                                     <groupId>org.onap.usecase-ui.server</groupId>
133                                     <artifactId>usecase-ui-server</artifactId>
134                                     <type>jar</type>
135                                     <overWrite>true</overWrite>
136                                     <outputDirectory>${linux64outputdir}</outputDirectory>
137                                     <destFileName>usecase-ui-server.jar</destFileName>
138                                 </artifactItem>
139                             </artifactItems>
140                         </configuration>
141                     </execution>
142                     <execution>
143                         <id>copy-jar-${win64id}</id>
144                         <goals>
145                             <goal>copy</goal>
146                         </goals>
147                         <phase>prepare-package</phase>
148                         <configuration>
149                             <artifactItems>
150                                 <artifactItem>
151                                     <groupId>org.onap.usecase-ui.server</groupId>
152                                     <artifactId>usecase-ui-server</artifactId>
153                                     <type>jar</type>
154                                     <overWrite>true</overWrite>
155                                     <outputDirectory>${win64outputdir}</outputDirectory>
156                                     <destFileName>usecase-ui-server.jar</destFileName>
157                                 </artifactItem>
158                             </artifactItems>
159                         </configuration>
160                     </execution>
161                 </executions>
162             </plugin>
163             <plugin>
164                 <groupId>org.apache.maven.plugins</groupId>
165                 <artifactId>maven-antrun-plugin</artifactId>
166                 <executions>
167                     <execution>
168                         <id>distribution</id>
169                         <phase>package</phase>
170                         <goals>
171                             <goal>run</goal>
172                         </goals>
173                         <configuration>
174                             <target name="distribution">
175                                 <tar destfile="${version.output}/${packagename}-${project.version}-linux64.tar.gz" longfile="posix" compression="gzip">
176                                     <tarfileset dir="target/assembly/linux64" filemode="0644" dirmode="0755">
177                                         <exclude name="**/*.sh"/>
178                                     </tarfileset>
179                                     <tarfileset dir="target/assembly/linux64" filemode="0755" dirmode="0755">
180                                         <include name="**/*.sh"/>
181                                     </tarfileset>
182                                 </tar>
183                                 <attachartifact file="${version.output}/${packagename}-${project.version}-linux64.tar.gz" classifier="linux64" type="tar.gz"/>
184                                 <zip destfile="${version.output}/${packagename}-${project.version}-win64.zip" update="true">
185                                     <zipfileset dir="target/assembly/win64" includes="**"/>
186                                 </zip>
187                                 <attachartifact file="${version.output}/${packagename}-${project.version}-win64.zip" classifier="win64" type="zip"/>
188                             </target>
189                         </configuration>
190                     </execution>
191                 </executions>
192             </plugin>
193         </plugins>
194     </build>
195
196     <profiles>
197         <profile>
198             <id>docker</id>
199             <build>
200                 <plugins>
201                     <plugin>
202                         <groupId>io.fabric8</groupId>
203                         <artifactId>docker-maven-plugin</artifactId>
204                         <version>0.16.5</version>
205                         <inherited>false</inherited>
206                         <configuration>
207                             <images>
208                                 <image>
209                                     <name>onap/usecase-ui-server</name>
210                                     <build>
211                                         <cleanup>try</cleanup>
212                                         <dockerFileDir>${basedir}/${version.output}</dockerFileDir>
213                                         <dockerFile>${basedir}/target/version/Dockerfile</dockerFile>
214                                         <tags>
215                                             <tag>${usecaseui.version}-SNAPSHOT-latest</tag>
216                                             <tag>${usecaseui.version}-STAGING-latest</tag>
217                                             <tag>${usecaseui.version}-STAGING-${maven.build.timestamp}</tag>
218                                         </tags>
219                                     </build>
220                                 </image>
221                             </images>
222                         </configuration>
223                         <executions>
224                             <execution>
225                                 <id>generate-images</id>
226                                 <phase>package</phase>
227                                 <goals>
228                                     <goal>build</goal>
229                                 </goals>
230                             </execution>
231
232                             <execution>
233                                 <id>push-images</id>
234                                 <phase>deploy</phase>
235                                 <goals>
236                                     <goal>build</goal>
237                                     <goal>push</goal>
238                                 </goals>
239                             </execution>
240                         </executions>
241                     </plugin>
242                 </plugins>
243             </build>
244         </profile>
245     </profiles>
246
247     <dependencies>
248         <dependency>
249           <groupId>org.onap.usecase-ui.server</groupId>
250           <artifactId>usecase-ui-server</artifactId>
251           <version>${project.version}</version>
252         </dependency>
253     </dependencies>
254 </project>