Final commit to master merge from
[sdc.git] / sdc-os-chef / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3
4     <modelVersion>4.0.0</modelVersion>
5
6     <artifactId>sdc-os-chef</artifactId>
7     <packaging>pom</packaging>
8     
9
10     <parent>
11         <groupId>org.openecomp.sdc</groupId>
12         <artifactId>sdc-main</artifactId>
13                 <version>1.2.0-SNAPSHOT</version>
14     </parent>
15
16
17     <properties>
18         <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
19         <docker.latest.tag>${project.version}-latest</docker.latest.tag>
20     </properties>
21
22     <build>
23         <plugins>
24             <plugin>
25                 <artifactId>maven-clean-plugin</artifactId>
26                 <version>3.0.0</version>
27                 <executions>
28                     <execution>
29                         <id>clean.tosca.chef.os.folder</id>
30                         <phase>clean</phase>
31                         <goals>
32                             <goal>clean</goal>
33                         </goals>
34                         <configuration>
35                             <filesets>
36                                 <!-- static configuration files -->
37                                 <fileset>       
38                                         <directory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-catalog-be/files/default</directory>
39                                         <followSymlinks>false</followSymlinks>
40                                         <includes>
41                                         <include>Artifact-Generator.properties</include>
42                                         <include>error-configuration.yaml</include>
43                                         <include>ecomp-error-configuration.yaml</include>
44                                         <include>logback.xml</include>
45                                     </includes>
46                                 </fileset>
47                                 <!-- BE WAR's -->
48                                 <fileset>       
49                                         <directory>${project.parent.basedir}/sdc-os-chef/sdc-backend</directory>
50                                         <followSymlinks>false</followSymlinks>
51                                     <includes>
52                                         <include>*.war</include>
53                                         </includes>
54                                 </fileset>
55                                 <!-- FE WAR's -->
56                                 <fileset>       
57                                         <directory>${project.parent.basedir}/sdc-os-chef/sdc-frontend/</directory>
58                                         <followSymlinks>false</followSymlinks>
59                                     <includes>
60                                         <include>*.war</include>
61                                         </includes>
62                                 </fileset>
63                                         <fileset>
64                                     <directory>${project.basedir}/sdc-backend/chef-repo/cookbooks/sdc-normatives/files/default</directory>
65                                                                         <followSymlinks>false</followSymlinks>
66                                     <includes>
67                                         <include>normatives.tar.gz</include>
68                                         </includes>
69                                 </fileset>
70                                 <fileset>
71                                     <directory>${project.basedir}/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/</directory>
72                                     <followSymlinks>false</followSymlinks>
73                                     <includes>
74                                         <include>**/default.rb</include>
75                                     </includes>
76                                 </fileset>
77                                 <fileset>
78                                     <directory>${project.basedir}/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/files/default/tools</directory>
79                                     <followSymlinks>false</followSymlinks>
80                                 </fileset>
81                                 <!-- Sanity jar -->
82                                 <fileset>
83                                     <directory>${project.basedir}/sdc-sanity</directory>
84                                     <followSymlinks>false</followSymlinks>
85                                     <includes>
86                                         <include>*.jar</include>
87                                         </includes>
88                                 </fileset>
89                                 <!-- Sanity test suites -->
90                                 <fileset>
91                                     <directory>${project.basedir}/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/testSuites</directory>
92                                     <followSymlinks>false</followSymlinks>
93                                 </fileset>
94                             </filesets>
95                         </configuration>
96                     </execution>
97                 </executions>
98             </plugin>
99             <plugin>
100                 <groupId>ru.yaal.maven</groupId>
101                 <artifactId>write-text-files-maven-plugin</artifactId>
102                 <version>1.1</version>
103                 <configuration>
104                     <charset>UTF-8</charset>
105                     <files>
106                         <file>
107                             <path>
108                                 ${project.basedir}\sdc-cassandra\chef-repo\cookbooks\cassandra-actions\attributes\default.rb
109                             </path>
110                             <lines>
111                                 <line>normal['version'] ="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}"</line>
112                             </lines>
113                         </file>
114                     </files>
115                 </configuration>
116                 <executions>
117                     <execution>
118                         <id>write-text-files</id>
119                         <phase>prepare-package</phase>
120                         <goals>
121                             <goal>write-text-files</goal>
122                         </goals>
123                     </execution>
124                 </executions>
125             </plugin>
126         </plugins>
127     </build>
128
129     <profiles>
130         <profile>
131             <id>docker-staging</id>
132             <properties>
133                 <docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag>
134                 <docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag>
135             </properties>
136         </profile>
137
138         <profile>
139             <id>docker</id>
140             <activation>
141                 <activeByDefault>false</activeByDefault>
142             </activation>
143             <build>
144                 <plugins>
145                     <plugin>
146                         <artifactId>maven-resources-plugin</artifactId>
147                         <version>3.0.2</version>
148                         <executions>
149                             <execution>
150                                 <id>copy-resources-apidocs</id>
151                                 <phase>validate</phase>
152                                 <goals>
153                                     <goal>copy-resources</goal>
154                                 </goals>
155                                 <configuration>
156                                     <outputDirectory>${basedir}/sdc-backend</outputDirectory>
157                                     <resources>
158                                         <resource>
159                                             <directory>
160                                                 ${project.parent.basedir}/openecomp-be/tools/swagger-ui/api-docs
161                                             </directory>
162                                             <includes>
163                                                 <include>api-docs.war</include>
164                                             </includes>
165                                         </resource>
166                                     </resources>
167                                 </configuration>
168                             </execution>
169                                                         
170                                                         <execution>
171                                                                 <id>copy-static-configuration-files</id>
172                                                                 <phase>validate</phase>
173                                                                 <goals>
174                                                                         <goal>copy-resources</goal>
175                                                                 </goals>
176                                                                 <configuration>
177                                                                 <outputDirectory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-catalog-be/files/default</outputDirectory>
178                                                                 <resources>
179                                                                         <resource>
180                                                                                 <directory>${project.parent.basedir}/catalog-be/src/main/resources/config</directory>
181                                                                                 <includes>
182                                                                                         <include>Artifact-Generator.properties</include>
183                                                                                         <include>error-configuration.yaml</include>
184                                                                                         <include>ecomp-error-configuration.yaml</include>
185                                                                                         <include>logback.xml</include>
186                                                                                 </includes>
187                                                                         </resource>
188                                                                 </resources>
189                                                                 </configuration>
190                                                         </execution>
191                                                         
192                             <execution>
193                                 <id>copy-resources-be</id>
194                                 <phase>validate</phase>
195                                 <goals>
196                                     <goal>copy-resources</goal>
197                                 </goals>
198                                 <configuration>
199                                     <outputDirectory>${basedir}/sdc-backend</outputDirectory>
200                                     <resources>
201                                         <resource>
202                                             <directory>${project.parent.basedir}/catalog-be/target</directory>
203                                             <includes>
204                                                 <include>catalog-be-${project.version}.war</include>
205                                             </includes>
206                                         </resource>
207                                         <resource>
208                                             <directory>
209                                                 ${project.parent.basedir}/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/target
210                                             </directory>
211                                             <includes>
212                                                 <include>onboarding-be-${project.version}.war</include>
213                                             </includes>
214                                         </resource>
215                                     </resources>
216                                 </configuration>
217                             </execution>
218                             
219                             <execution>
220                                 <id>copy-resources-fe</id>
221                                 <phase>validate</phase>
222                                 <goals>
223                                     <goal>copy-resources</goal>
224                                 </goals>
225                                 <configuration>
226                                     <outputDirectory>${basedir}/sdc-frontend</outputDirectory>
227                                     <resources>
228                                         <resource>
229                                                 <directory>${project.parent.basedir}/catalog-fe/target</directory>
230                                             <includes>
231                                                 <include>catalog-fe-${project.version}.war</include>
232                                             </includes>
233                                         </resource>
234                                         <resource>
235                                             <directory>${project.parent.basedir}/openecomp-ui/target</directory>
236                                             <includes>
237                                                 <include>onboarding-fe-${project.version}.war</include>
238                                             </includes>
239                                         </resource>
240                                     </resources>
241                                 </configuration>
242                             </execution>
243                             
244                             <execution>
245                                 <id>copy-tests-suites</id>
246                                 <phase>validate</phase>
247                                 <goals>
248                                     <goal>copy-resources</goal>
249                                 </goals>
250                                 <configuration>
251                                     <outputDirectory>sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/testSuites</outputDirectory>
252                                     <resources>
253                                         <resource>
254                                             <directory>${project.parent.basedir}/test-apis-ci/src/main/resources/ci/testSuites</directory>
255                                             <includes>
256                                                 <include>*</include>
257                                             </includes>
258                                         </resource>
259                                     </resources>
260                                 </configuration>
261                             </execution>
262                             
263                             <execution>
264                                 <id>copy-resources-test-apis-ci</id>
265                                 <phase>validate</phase>
266                                 <goals>
267                                     <goal>copy-resources</goal>
268                                 </goals>
269                                 <configuration>
270                                     <outputDirectory>${basedir}/sdc-sanity</outputDirectory>
271                                     <resources>
272                                         <resource>
273                                             <directory>${project.parent.basedir}/test-apis-ci/target</directory>
274                                             <includes>
275                                                 <include>test-apis-ci-${project.version}-jar-with-dependencies.jar</include>
276                                             </includes>
277                                         </resource>
278                                     </resources>
279                                 </configuration>
280                             </execution>
281                             
282                             
283                             <execution>
284                                 <id>copy-dox-files</id>
285                                 <phase>validate</phase>
286                                 <goals>
287                                     <goal>copy-resources</goal>
288                                 </goals>
289                                 <configuration>
290                                     <outputDirectory>${basedir}/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/files/default</outputDirectory>
291                                     <resources>
292                                         <resource>
293                                             <directory>${project.parent.basedir}/openecomp-be</directory>
294                                             <includes>
295                                                 <include>tools/build/**</include>
296                                             </includes>
297                                         </resource>
298                                         <resource>
299                                             <directory>${project.parent.basedir}/openecomp-be</directory>
300                                             <includes>
301                                                 <include>tools/install/**</include>
302                                             </includes>
303                                         </resource>
304                                     </resources>
305                                 </configuration>
306                             </execution>
307                             
308                             <execution>
309                                                                 <id>copy-normatives</id>
310                                                                 <phase>validate</phase>
311                                                                 <goals>
312                                                                         <goal>copy-resources</goal>
313                                                                 </goals>
314                                                                 <configuration>
315                                                                         <outputDirectory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-normatives/files/default</outputDirectory>
316                                                                         <resources>
317                                                                                 <resource>
318                                                                                         <directory>${project.parent.basedir}/catalog-be/target</directory>
319                                                                                         <includes>
320                                                                                                 <include>normatives.tar.gz</include>
321                                                                                         </includes>
322                                                                                 </resource>
323                                                                         </resources>
324                                                                 </configuration>
325                                                         </execution>
326                                                         
327                                 <execution>
328                                         <id>copy-sdctool</id>
329                                         <phase>validate</phase>
330                                         <goals>
331                                         <goal>copy-resources</goal>
332                                         </goals>
333                                         <configuration>
334                                         <outputDirectory>${project.parent.basedir}/sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/files/default</outputDirectory>
335                                         <resources>
336                                                 <resource>
337                                                 <directory>${project.parent.basedir}/asdctool/target</directory>
338                                                 <includes>
339                                                         <include>sdctool.tar</include>
340                                                 </includes>
341                                                 </resource>
342                                         </resources>
343                                         </configuration>
344                                 </execution>
345                         </executions>
346                     </plugin>
347                         
348                     <plugin>
349                         <groupId>io.fabric8</groupId>
350                         <artifactId>docker-maven-plugin</artifactId>
351                         <version>0.23.0</version>
352
353                         <configuration>
354                             <verbose>true</verbose>
355                             <apiVersion>1.23</apiVersion>
356                             <registry>nexus3.onap.org:10001</registry>
357                             <authConfig>
358                                 <pull>
359                                                     <username>docker</username>
360                                                     <password>docker</password>
361                                             </pull>
362                                     </authConfig>
363                             <images>
364
365                                 <!-- Build backend image -->
366                                 <image>
367                                     <name>onap/sdc-backend</name>
368                                     <alias>sdc-backend</alias>
369                                     <build>
370                                         <cleanup>try</cleanup>
371                                         <dockerFileDir>${project.basedir}/sdc-backend</dockerFileDir>
372                                         <tags>
373                                             <tag>${docker.tag}</tag>
374                                             <tag>${docker.latest.tag}</tag>
375                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
376                                         </tags>
377                                     </build>
378                                 </image>
379
380                                 <!-- Build frontend image -->
381                                 <image>
382                                     <name>onap/sdc-frontend</name>
383                                     <alias>sdc-frontend</alias>
384                                     <build>
385                                         <cleanup>try</cleanup>
386                                         <dockerFileDir>${project.basedir}/sdc-frontend</dockerFileDir>
387                                         <tags>
388                                             <tag>${docker.tag}</tag>
389                                             <tag>${docker.latest.tag}</tag>
390                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
391                                         </tags>
392                                     </build>
393                                 </image>
394
395                                 <!-- Build elastic search image -->
396                                 <image>
397                                     <name>onap/sdc-elasticsearch</name>
398                                     <alias>sdc-elasticsearch</alias>
399                                     <build>
400                                         <cleanup>try</cleanup>
401                                         <dockerFileDir>${project.basedir}/sdc-elasticsearch</dockerFileDir>
402                                         <tags>
403                                             <tag>${docker.tag}</tag>
404                                             <tag>${docker.latest.tag}</tag>
405                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
406                                         </tags>
407                                     </build>
408                                 </image>
409
410                                 <!-- Build kibana image -->
411                                 <image>
412                                     <name>onap/sdc-kibana</name>
413                                     <alias>sdc-kibana</alias>
414                                     <build>
415                                         <cleanup>try</cleanup>
416                                         <dockerFileDir>${project.basedir}/sdc-kibana</dockerFileDir>
417                                         <tags>
418                                             <tag>${docker.tag}</tag>
419                                             <tag>${docker.latest.tag}</tag>
420                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
421                                         </tags>
422                                     </build>
423                                 </image>
424
425                                 <!-- Build cassandra image -->
426                                 <image>
427                                     <name>onap/sdc-cassandra</name>
428                                     <alias>sdc-cassandra</alias>
429                                     <build>
430                                         <cleanup>try</cleanup>
431                                         <dockerFileDir>${project.basedir}/sdc-cassandra</dockerFileDir>
432                                         <tags>
433                                             <tag>${docker.tag}</tag>
434                                             <tag>${docker.latest.tag}</tag>
435                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
436                                         </tags>
437                                     </build>
438                                 </image>
439
440                                 <!-- Build sanity image -->
441                                 <image>
442                                     <name>onap/sdc-sanity</name>
443                                     <alias>sdc-sanity</alias>
444                                     <build>
445                                         <cleanup>try</cleanup>
446                                         <dockerFileDir>${project.basedir}/sdc-sanity</dockerFileDir>
447                                         <tags>
448                                             <tag>${docker.tag}</tag>
449                                             <tag>${docker.latest.tag}</tag>
450                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
451                                         </tags>
452                                     </build>
453                                 </image>
454
455                             </images>
456                         </configuration>
457                         <executions>
458                             <execution>
459                                 <id>clean-images</id>
460                                 <phase>pre-clean</phase>
461                                 <goals>
462                                     <goal>remove</goal>
463                                 </goals>
464                                 <configuration>
465                                     <removeAll>true</removeAll>
466                                     <image>onap/sdc-backend,onap/sdc-frontend,onap/sdc-elasticsearch,onap/sdc-kibana,onap/sdc-cassandra,onap/sdc-sanity</image>
467                                 </configuration>
468                             </execution>
469
470                             <execution>
471                                 <id>generate-images</id>
472                                 <phase>package</phase>
473                                 <goals>
474                                     <goal>build</goal>
475                                 </goals>
476                             </execution>
477
478                             <execution>
479                                 <id>push-images</id>
480                                 <phase>deploy</phase>
481                                 <goals>
482                                     <goal>push</goal>
483                                 </goals>
484                                 <configuration>
485                                     <image>
486                                         onap/sdc-backend,onap/sdc-frontend,onap/sdc-elasticsearch,onap/sdc-kibana,onap/sdc-cassandra,onap/sdc-sanity</image>
487                                 </configuration>
488                             </execution>
489                         </executions>
490                     </plugin>
491                 </plugins>
492             </build>
493         </profile>
494     </profiles>
495 </project>