Enable docker push into nexus3 63/7063/3
authorKanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
Wed, 9 Aug 2017 03:58:19 +0000 (09:28 +0530)
committerKanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
Wed, 9 Aug 2017 06:17:01 +0000 (11:47 +0530)
It adds required settings in pom.xml for
pushing the cli docker image into nexus
as part of mvn deploy phase.

CLI-26
Change-Id: I693593ad99f5761328bc0145649a6e54f7ab7b51
Signed-off-by: Kanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
deployment/docker/pom.xml
deployment/docker/src/main/docker/Dockerfile

index 4ab7550..c3cef0e 100644 (file)
     <packaging>pom</packaging>
 
   <properties>
-        <docker.image.version>1.0.0</docker.image.version>
+        <docker.image.name>onap/cli</docker.image.name>
+        <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
+        <docker.push.registry></docker.push.registry>
+        <skip.docker.build>true</skip.docker.build>
+        <skip.docker.tag>true</skip.docker.tag>
+        <skip.docker.push>true</skip.docker.push>
   </properties>
 
     <build>
@@ -42,8 +47,8 @@
                 <version>0.4.11</version>
                 <configuration>
                     <verbose>true</verbose>
+                    <imageName>${docker.image.name}</imageName>
                     <serverId>docker-hub</serverId>
-                    <imageName>onap-cli</imageName>
                     <dockerDirectory>${basedir}/src/main/docker</dockerDirectory>
                     <resources>
                         <resource>
                         </resource>
                     </resources>
                 </configuration>
+                <executions>
+                    <execution>
+                        <id>build-image</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>build</goal>
+                        </goals>
+                        <configuration>
+                            <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>tag-image-timestamped-version</id>
+                        <phase>deploy</phase>
+                        <goals>
+                            <goal>tag</goal>
+                        </goals>
+                        <configuration>
+                            <image>${docker.image.name}</image>
+                            <newName>${docker.push.registry}/${docker.image.name}:${project.version}-${maven.build.timestamp}</newName>
+                            <pushImage>${skip.docker.push}</pushImage>
+                            <skipDockerTag>${skip.docker.tag}</skipDockerTag>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>tag-image-latest-version</id>
+                        <phase>deploy</phase>
+                        <goals>
+                            <goal>tag</goal>
+                        </goals>
+                        <configuration>
+                            <image>${docker.image.name}</image>
+                            <newName>${docker.push.registry}/${docker.image.name}:latest</newName>
+                            <pushImage>${skip.docker.push}</pushImage>
+                            <skipDockerTag>${skip.docker.tag}</skipDockerTag>
+                        </configuration>
+                    </execution>
+                </executions>
             </plugin>
         </plugins>
     </build>
index e59789b..06c266c 100644 (file)
@@ -16,4 +16,4 @@ RUN ln ./bin/onap.sh /usr/sbin/onap
 
 ENTRYPOINT /bin/bash
 
-RUN echo ONAP CLI successfully installed !!
\ No newline at end of file
+RUN echo ONAP CLI docker successfully created !!
\ No newline at end of file