blob: 488692c9b68d0c264f6a5ef2efba45141244d537 [file] [log] [blame]
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -05001<?xml version="1.0" encoding="UTF-8"?>
Timoney, Dan (dt5972)ea652692019-01-08 15:56:26 -05002<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">
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -05003 <modelVersion>4.0.0</modelVersion>
4
5 <parent>
6 <groupId>org.onap.ccsdk.parent</groupId>
7 <artifactId>odlparent-lite</artifactId>
Timoney, Dan (dt5972)e7cfae52019-01-03 15:14:58 -05008 <version>1.2.1-SNAPSHOT</version>
Timoney, Dan (dt5972)ea652692019-01-08 15:56:26 -05009 <relativePath/>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -050010 </parent>
11
12 <groupId>org.onap.ccsdk.distribution</groupId>
13 <artifactId>distribution-odlsli-ubuntu</artifactId>
Timoney, Dan (dt5972)e7cfae52019-01-03 15:14:58 -050014 <version>0.4.1-SNAPSHOT</version>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -050015 <packaging>pom</packaging>
16
Timoney, Dan (dt5972)e7cfae52019-01-03 15:14:58 -050017 <name>ccsdk-distribution :: odlsli-ubuntu</name>
18 <description>Creates Ubuntu-based ODLSLI Docker container</description>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -050019 <organization>
20 <name>openECOMP</name>
21 </organization>
22
23 <properties>
Timoney, Dan (dt5972)e7cfae52019-01-03 15:14:58 -050024 <base.image.name>onap/ccsdk-odl-fluorine-ubuntu-image</base.image.name>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -050025 <image.name>onap/ccsdk-odlsli-image</image.name>
26 <ccsdk.project.version>${project.version}</ccsdk.project.version>
27 <ccsdk.features.version>${project.version}</ccsdk.features.version>
28 <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
29 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
30 <opendaylight.root>opt/opendaylight</opendaylight.root>
31 <docker.push.phase>deploy</docker.push.phase>
32 <docker.verbose>true</docker.verbose>
33 <ansible.gpg.key>93C4A3FD7BB9C367</ansible.gpg.key>
Timoney, Dan (dt5972)aa9d8252019-02-04 18:02:21 -050034 <odl.features.extra>odl-restconf-all,odl-mdsal-all,odl-mdsal-apidocs,odl-daexim-all</odl.features.extra>
35 <ccsdk.odl.features>ccsdk-sli-core-all,ccsdk-sli-adaptors-all,ccsdk-sli-northbound-all,ccsdk-sli-plugins-all,ccsdk-features-all</ccsdk.odl.features>
36 <odl.boot.features.extra>${odl.features.extra},${ccsdk.odl.features}</odl.boot.features.extra>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -050037 </properties>
38
39 <dependencies>
40 <dependency>
41 <groupId>${project.groupId}</groupId>
42 <artifactId>dependencies</artifactId>
43 <version>${project.version}</version>
44 <classifier>repo</classifier>
45 <type>zip</type>
46 </dependency>
47
48 <dependency>
49 <groupId>org.onap.ccsdk.sli.core</groupId>
50 <artifactId>dblib-installer</artifactId>
51 <version>${ccsdk.sli.core.version}</version>
52 <classifier>repo</classifier>
53 <type>zip</type>
54 </dependency>
55 <dependency>
56 <groupId>org.onap.ccsdk.sli.core</groupId>
57 <artifactId>filters-installer</artifactId>
58 <version>${ccsdk.sli.core.version}</version>
59 <classifier>repo</classifier>
60 <type>zip</type>
61 </dependency>
62 <dependency>
63 <groupId>org.onap.ccsdk.sli.core</groupId>
64 <artifactId>sli-installer</artifactId>
65 <version>${ccsdk.sli.core.version}</version>
66 <classifier>repo</classifier>
67 <type>zip</type>
68 </dependency>
69 <dependency>
70 <groupId>org.onap.ccsdk.sli.core</groupId>
71 <artifactId>sliapi-installer</artifactId>
72 <version>${ccsdk.sli.core.version}</version>
73 <classifier>repo</classifier>
74 <type>zip</type>
75 </dependency>
76 <dependency>
77 <groupId>org.onap.ccsdk.sli.core</groupId>
78 <artifactId>sliPluginUtils-installer</artifactId>
79 <version>${ccsdk.sli.core.version}</version>
80 <classifier>repo</classifier>
81 <type>zip</type>
82 </dependency>
83 <dependency>
84 <groupId>org.onap.ccsdk.sli.core</groupId>
85 <artifactId>utils-installer</artifactId>
86 <version>${ccsdk.sli.core.version}</version>
87 <classifier>repo</classifier>
88 <type>zip</type>
89 </dependency>
90 <dependency>
91 <groupId>org.onap.ccsdk.sli.core</groupId>
92 <artifactId>slicore-features-installer</artifactId>
93 <version>${ccsdk.sli.core.version}</version>
94 <classifier>repo</classifier>
95 <type>zip</type>
96 </dependency>
97 <dependency>
98 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
99 <artifactId>aai-service-installer</artifactId>
100 <version>${ccsdk.sli.adaptors.version}</version>
101 <classifier>repo</classifier>
102 <type>zip</type>
103 </dependency>
104 <dependency>
105 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
106 <artifactId>ansible-adapter-installer</artifactId>
107 <version>${ccsdk.sli.adaptors.version}</version>
108 <classifier>repo</classifier>
109 <type>zip</type>
110 </dependency>
111 <dependency>
112 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
113 <artifactId>mdsal-resource-installer</artifactId>
114 <version>${ccsdk.sli.adaptors.version}</version>
115 <classifier>repo</classifier>
116 <type>zip</type>
117 </dependency>
118 <dependency>
119 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
Timoney, Dan (dt5972)c3c74752019-01-30 10:58:25 -0500120 <artifactId>netbox-client-installer</artifactId>
121 <version>${ccsdk.sli.adaptors.version}</version>
122 <classifier>repo</classifier>
123 <type>zip</type>
124 </dependency>
125 <dependency>
126 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -0500127 <artifactId>resource-assignment-installer</artifactId>
128 <version>${ccsdk.sli.adaptors.version}</version>
129 <classifier>repo</classifier>
130 <type>zip</type>
131 </dependency>
132 <dependency>
133 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
Timoney, Dan (dt5972)c3c74752019-01-30 10:58:25 -0500134 <artifactId>saltstack-adapter-installer</artifactId>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -0500135 <version>${ccsdk.sli.adaptors.version}</version>
136 <classifier>repo</classifier>
137 <type>zip</type>
138 </dependency>
139 <dependency>
140 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
141 <artifactId>sql-resource-installer</artifactId>
142 <version>${ccsdk.sli.adaptors.version}</version>
143 <classifier>repo</classifier>
144 <type>zip</type>
145 </dependency>
146 <dependency>
147 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
148 <artifactId>sliadaptors-features-installer</artifactId>
149 <version>${ccsdk.sli.adaptors.version}</version>
150 <classifier>repo</classifier>
151 <type>zip</type>
152 </dependency>
153 <dependency>
154 <groupId>org.onap.ccsdk.sli.northbound</groupId>
155 <artifactId>asdcApi-installer</artifactId>
156 <version>${ccsdk.sli.northbound.version}</version>
157 <classifier>repo</classifier>
158 <type>zip</type>
159 </dependency>
160 <dependency>
161 <groupId>org.onap.ccsdk.sli.northbound</groupId>
162 <artifactId>dataChange-installer</artifactId>
163 <version>${ccsdk.sli.northbound.version}</version>
164 <classifier>repo</classifier>
165 <type>zip</type>
166 </dependency>
167 <dependency>
168 <groupId>org.onap.ccsdk.sli.northbound</groupId>
169 <artifactId>lcm-installer</artifactId>
170 <version>${ccsdk.sli.northbound.version}</version>
171 <classifier>repo</classifier>
172 <type>zip</type>
173 </dependency>
174 <dependency>
175 <groupId>org.onap.ccsdk.sli.northbound</groupId>
176 <artifactId>slinorthbound-features-installer</artifactId>
177 <version>${ccsdk.sli.northbound.version}</version>
178 <classifier>repo</classifier>
179 <type>zip</type>
180 </dependency>
181 <dependency>
182 <groupId>org.onap.ccsdk.sli.plugins</groupId>
183 <artifactId>properties-node-installer</artifactId>
184 <version>${ccsdk.sli.plugins.version}</version>
185 <classifier>repo</classifier>
186 <type>zip</type>
187 </dependency>
188 <dependency>
189 <groupId>org.onap.ccsdk.sli.plugins</groupId>
190 <artifactId>restapi-call-node-installer</artifactId>
191 <version>${ccsdk.sli.plugins.version}</version>
192 <classifier>repo</classifier>
193 <type>zip</type>
194 </dependency>
195 <dependency>
196 <groupId>org.onap.ccsdk.sli.plugins</groupId>
Munir Ahmaddf56c572019-01-09 08:45:42 -0500197 <artifactId>template-node-installer</artifactId>
198 <version>${ccsdk.sli.plugins.version}</version>
199 <classifier>repo</classifier>
200 <type>zip</type>
201 </dependency>
202 <dependency>
203 <groupId>org.onap.ccsdk.sli.plugins</groupId>
Timoney, Dan (dt5972)b1ac7252018-12-14 13:00:43 -0500204 <artifactId>restconf-client-installer</artifactId>
205 <version>${ccsdk.sli.plugins.version}</version>
206 <classifier>repo</classifier>
207 <type>zip</type>
208 </dependency>
209 <dependency>
210 <groupId>org.onap.ccsdk.sli.plugins</groupId>
211 <artifactId>sshapi-call-node-installer</artifactId>
212 <version>${ccsdk.sli.plugins.version}</version>
213 <classifier>repo</classifier>
214 <type>zip</type>
215 </dependency>
216 <dependency>
217 <groupId>org.onap.ccsdk.sli.plugins</groupId>
218 <artifactId>sliplugins-features-installer</artifactId>
219 <version>${ccsdk.sli.plugins.version}</version>
220 <classifier>repo</classifier>
221 <type>zip</type>
222 </dependency>
223 <dependency>
224 <groupId>org.onap.ccsdk.features</groupId>
225 <artifactId>features-installer</artifactId>
226 <version>${ccsdk.features.version}</version>
227 <classifier>repo</classifier>
228 <type>zip</type>
229 </dependency>
230 <dependency>
231 <groupId>org.onap.ccsdk.features</groupId>
232 <artifactId>blueprints-processor-installer</artifactId>
233 <version>${ccsdk.features.version}</version>
234 <classifier>repo</classifier>
235 <type>zip</type>
236 </dependency>
237 </dependencies>
238
239 <build>
240 <extensions>
241 <extension>
242 <!-- this extension is required by wagon in order to pass the proxy -->
243 <groupId>org.apache.maven.wagon</groupId>
244 <artifactId>wagon-http-lightweight</artifactId>
245 <version>2.2</version>
246 </extension>
247 </extensions>
248 <plugins>
249
250
251 <plugin>
252 <groupId>org.codehaus.groovy.maven</groupId>
253 <artifactId>gmaven-plugin</artifactId>
254 <executions>
255 <execution>
256 <phase>validate</phase>
257 <goals>
258 <goal>execute</goal>
259 </goals>
260 <configuration>
261 <source>
262 println project.properties['ccsdk.project.version'];
263 def versionArray;
264 if (project.properties['ccsdk.project.version'] != null ) {
265 versionArray = project.properties['ccsdk.project.version'].split('\\.');
266 }
267
268 if (project.properties['ccsdk.project.version'].endsWith("-SNAPSHOT"))
269 {
270 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
271 } else {
272 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
273 }
274
275 println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
276 </source>
277 </configuration>
278 </execution>
279 </executions>
280 </plugin>
281
282
283
284 <plugin>
285 <artifactId>maven-resources-plugin</artifactId>
286 <version>2.6</version>
287 <executions>
288 <execution>
289 <id>copy-dockerfile</id>
290 <goals>
291 <goal>copy-resources</goal>
292 </goals><!-- here the phase you need -->
293 <phase>validate</phase>
294 <configuration>
295 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
296 <resources>
297 <resource>
298 <directory>src/main/docker</directory>
299 <includes>
300 <include>Dockerfile</include>
301 </includes>
302 <filtering>true</filtering>
303 </resource>
304 </resources>
305 </configuration>
306 </execution>
307
308 <execution>
309 <id>copy-scripts</id>
310 <goals>
311 <goal>copy-resources</goal>
312 </goals><!-- here the phase you need -->
313 <phase>validate</phase>
314 <configuration>
315 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory>
316 <resources>
317 <resource>
318 <directory>../src/main/scripts</directory>
319 <includes>
320 <include>*.sh</include>
321 </includes>
322 <filtering>false</filtering>
323 </resource>
324 </resources>
325 </configuration>
326 </execution>
327
328 <execution>
329 <id>copy-odl-resources</id>
330 <goals>
331 <goal>copy-resources</goal>
332 </goals><!-- here the phase you need -->
333 <phase>validate</phase>
334 <configuration>
335 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
336 <resources>
337 <resource>
338 <directory>../src/main/resources</directory>
339 <includes>
340 <include>idmlight.db.mv.db</include>
341 <include>org.ops4j.pax.logging.cfg</include>
342 <include>install_ccsdk.yml</include>
343 <include>ansible-sources.list</include>
344 </includes>
345 <filtering>false</filtering>
346 </resource>
347 </resources>
348 </configuration>
349 </execution>
350 <execution>
351 <id>copy-config</id>
352 <goals>
353 <goal>copy-resources</goal>
354 </goals><!-- here the phase you need -->
355 <phase>validate</phase>
356 <configuration>
357 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
358 <resources>
359 <resource>
360 <directory>../src/main/resources</directory>
361 <includes>
362 <include>org.ops4j.pax.logging.cfg</include>
363 </includes>
364 <filtering>false</filtering>
365 </resource>
366 </resources>
367 </configuration>
368 </execution>
369 <execution>
370 <id>copy-data</id>
371 <goals>
372 <goal>copy-resources</goal>
373 </goals><!-- here the phase you need -->
374 <phase>validate</phase>
375 <configuration>
376 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data</outputDirectory>
377 <resources>
378 <resource>
379 <directory>../src/main/resources</directory>
380 <includes>
381 <include>*.dump</include>
382 </includes>
383 <filtering>false</filtering>
384 </resource>
385 </resources>
386 </configuration>
387 </execution>
388 <execution>
389 <id>copy-properties</id>
390 <goals>
391 <goal>copy-resources</goal>
392 </goals><!-- here the phase you need -->
393 <phase>validate</phase>
394 <configuration>
395 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/properties</outputDirectory>
396 <resources>
397 <resource>
398 <directory>../src/main/properties</directory>
399 <includes>
400 <include>*.properties</include>
401 </includes>
402 <filtering>false</filtering>
403 </resource>
404 </resources>
405 </configuration>
406 </execution>
407 <execution>
408 <id>copy-keystores</id>
409 <goals>
410 <goal>copy-resources</goal>
411 </goals><!-- here the phase you need -->
412 <phase>validate</phase>
413 <configuration>
414 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/stores</outputDirectory>
415 <resources>
416 <resource>
417 <directory>../src/main/stores</directory>
418 <includes>
419 <include>*.jks</include>
420 </includes>
421 <filtering>false</filtering>
422 </resource>
423 </resources>
424 </configuration>
425 </execution>
426 </executions>
427 </plugin>
428 <plugin>
429 <groupId>org.apache.maven.plugins</groupId>
430 <artifactId>maven-dependency-plugin</artifactId>
431 <version>3.0.2</version>
432 <executions>
433 <execution>
434 <id>unpack features</id>
435 <phase>generate-sources</phase>
436 <goals>
437 <goal>unpack-dependencies</goal>
438 </goals>
439 <configuration>
440 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
441 <excludeTransitive>true</excludeTransitive>
442 </configuration>
443 </execution>
444 <execution>
445 <id>unpack dgs</id>
446 <phase>generate-sources</phase>
447 <goals>
448 <goal>unpack</goal>
449 </goals>
450 <configuration>
451 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory>
452 <artifactItems>
453 <artifactItem>
454 <groupId>${project.groupId}</groupId>
455 <artifactId>platform-logic-installer</artifactId>
456 <version>${project.version}</version>
457 <type>zip</type>
458 </artifactItem>
459 </artifactItems>
460 </configuration>
461 </execution>
462 </executions>
463 </plugin>
464 <plugin>
465 <groupId>org.codehaus.mojo</groupId>
466 <artifactId>exec-maven-plugin</artifactId>
467 <version>1.5.0</version>
468 <executions>
469
470 <execution>
471 <id>change shell permissions</id>
472 <phase>process-sources</phase>
473 <goals>
474 <goal>exec</goal>
475 </goals>
476 <configuration>
477 <executable>/usr/bin/find</executable>
478 <arguments>
479 <argument>${basedir}/target/docker-stage/opt/onap/ccsdk</argument>
480 <argument>-name</argument>
481 <argument>*.sh</argument>
482 <argument>-exec</argument>
483 <argument>chmod</argument>
484 <argument>+x</argument>
485 <argument>{}</argument>
486 <argument>;</argument>
487 </arguments>
488 </configuration>
489 </execution>
490 </executions>
491 </plugin>
492
493
494 </plugins>
495 </build>
496
497 <profiles>
498 <profile>
499 <id>docker</id>
500 <build>
501 <plugins>
502 <plugin>
503 <groupId>io.fabric8</groupId>
504 <artifactId>docker-maven-plugin</artifactId>
505 <version>0.16.5</version>
506 <inherited>false</inherited>
507 <configuration>
508 <images>
509 <image>
510 <name>${image.name}</name>
511 <build>
512 <cleanup>try</cleanup>
513 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
514 <dockerFile>${basedir}/target/docker-stage/Dockerfile</dockerFile>
515 <tags>
516 <tag>${project.version}</tag>
517 <tag>${project.version}-STAGING-${maven.build.timestamp}</tag>
518 <tag>${project.docker.latesttag.version}</tag>
519 </tags>
520 </build>
521 </image>
522 </images>
523 </configuration>
524 <executions>
525 <execution>
526 <id>generate-images</id>
527 <phase>package</phase>
528 <goals>
529 <goal>build</goal>
530 </goals>
531 </execution>
532
533 <execution>
534 <id>push-images</id>
535 <phase>${docker.push.phase}</phase>
536 <goals>
537 <goal>build</goal>
538 <goal>push</goal>
539 </goals>
540 </execution>
541 </executions>
542 </plugin>
543 </plugins>
544 </build>
545 </profile>
546 </profiles>
547</project>