6be62b777d79c7b910011e991e7c3dd56b697900
[oom/platform/cert-service.git] / certServiceK8sExternalProvider / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5   <parent>
6     <artifactId>oom-certservice</artifactId>
7     <groupId>org.onap.oom.platform.cert-service</groupId>
8     <version>2.1.1-SNAPSHOT</version>
9   </parent>
10   <modelVersion>4.0.0</modelVersion>
11
12   <artifactId>oom-certservice-k8s-external-provider</artifactId>
13   <packaging>mvn-golang</packaging>
14
15   <properties>
16     <version.mvn-clean-plugin>3.1.0</version.mvn-clean-plugin>
17     <version.mvn-golang-wrapper-plugin>2.3.5</version.mvn-golang-wrapper-plugin>
18   </properties>
19
20   <build>
21     <!--Changing standard Maven project source structure to make it Go compatible-->
22     <sourceDirectory>${basedir}</sourceDirectory>
23     <directory>${basedir}${file.separator}bin</directory>
24
25     <defaultGoal>clean package</defaultGoal>
26
27     <plugins>
28       <plugin>
29         <groupId>org.apache.maven.plugins</groupId>
30         <artifactId>maven-clean-plugin</artifactId>
31         <version>${version.mvn-clean-plugin}</version>
32         <configuration>
33           <followSymLinks>false</followSymLinks>
34           <excludeDefaultDirectories>true</excludeDefaultDirectories>
35           <filesets>
36             <fileset>
37               <directory>${basedir}${file.separator}bin</directory>
38             </fileset>
39           </filesets>
40         </configuration>
41       </plugin>
42       <plugin>
43         <groupId>com.igormaznitsa</groupId>
44         <artifactId>mvn-golang-wrapper</artifactId>
45         <version>${version.mvn-golang-wrapper-plugin}</version>
46         <extensions>true</extensions>
47         <executions>
48           <execution>
49             <id>run</id>
50             <goals>
51               <goal>run</goal>
52             </goals>
53             <configuration>
54               <packages>
55                 <package>onap.org/oom-certservice/k8s-external-provider</package>
56               </packages>
57             </configuration>
58           </execution>
59           <execution>
60             <id>install</id>
61             <goals>
62               <goal>install</goal>
63             </goals>
64             <configuration>
65               <packages>
66                 <package>onap.org/oom-certservice/k8s-external-provider/main</package>
67                 <package>onap.org/oom-certservice/k8s-external-provider/certservice-provisioner</package>
68               </packages>
69             </configuration>
70           </execution>
71         </executions>
72       </plugin>
73     </plugins>
74   </build>
75
76   <profiles>
77
78     <profile>
79       <id>docker-staging</id>
80       <properties>
81         <docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag>
82         <docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag>
83       </properties>
84     </profile>
85
86     <profile>
87       <id>docker</id>
88       <activation>
89         <activeByDefault>false</activeByDefault>
90       </activation>
91       <properties>
92         <os.detected.name>linux</os.detected.name>
93         <os.detected.arch>x86_64</os.detected.arch>
94         <os.detected.classifier>${os.detected.name}-${os.detected.arch}</os.detected.classifier>
95       </properties>
96       <build>
97         <plugins>
98           <plugin>
99             <groupId>io.fabric8</groupId>
100             <artifactId>docker-maven-plugin</artifactId>
101             <version>${docker-maven-plugin.version}</version>
102             <executions>
103               <execution>
104                 <id>docker-build-image</id>
105                 <phase>package</phase>
106                 <goals>
107                   <goal>build</goal>
108                 </goals>
109               </execution>
110               <execution>
111                 <id>docker-push-image</id>
112                 <phase>deploy</phase>
113                 <goals>
114                   <goal>push</goal>
115                 </goals>
116               </execution>
117             </executions>
118             <configuration>
119               <skipPush>${skipDockerPush}</skipPush>
120               <verbose>true</verbose>
121               <imagePullPolicy>IfNotPresent</imagePullPolicy>
122               <images>
123                 <image>
124                   <alias>${project.artifactId}</alias>
125                   <name>${docker-image.namespace}/${docker-image.name}:${docker-image.tag.latest}
126                   </name>
127                   <registry>${docker-image.registry}</registry>
128                   <build>
129                     <dockerFileDir>${project.basedir}</dockerFileDir>
130                     <tags>
131                       <tag>${project.version}-${maven.build.timestamp}Z</tag>
132                     </tags>
133                   </build>
134                 </image>
135               </images>
136             </configuration>
137           </plugin>
138         </plugins>
139       </build>
140     </profile>
141   </profiles>
142
143
144 </project>