Add Labels to Docker images 88/109088/5
authorChrisC <christophe.closset@intl.att.com>
Fri, 12 Jun 2020 08:31:14 +0000 (10:31 +0200)
committerChrisC <christophe.closset@intl.att.com>
Fri, 12 Jun 2020 12:47:11 +0000 (14:47 +0200)
Add vcs_ref and vcs_branch as labels in the maven docker build
Added a profile to make this work both in local and with Gerrit

Issue-ID: SDC-3113
Signed-off-by: ChrisC <christophe.closset@intl.att.com>
Change-Id: I341341fe7846b974e5275dcf150d5111c686f38c

pom.xml

diff --git a/pom.xml b/pom.xml
index 5cab49a..6613c29 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -44,6 +44,9 @@
                   <tag>${docker.tag}</tag>
                   <tag>${docker.latest.tag}</tag>
                 </tags>
+                <buildOptions>
+                  <labels>{"vcs_branch":"${scmBranch}","vcs_ref":"${scmRevision}"}</labels>
+                </buildOptions>
                 <dockerFileDir>${project.basedir}/base_sdc-jetty</dockerFileDir>
               </build>
             </image>
@@ -58,6 +61,9 @@
                   <tag>${docker.tag}</tag>
                   <tag>${docker.latest.tag}</tag>
                 </tags>
+                <buildOptions>
+                  <labels>{"vcs_branch":"${scmBranch}","vcs_ref":"${scmRevision}"}</labels>
+                </buildOptions>
                 <dockerFileDir>${project.basedir}/base_sdc-cassandra</dockerFileDir>
               </build>
             </image>
@@ -71,6 +77,9 @@
                   <tag>${docker.tag}</tag>
                   <tag>${docker.latest.tag}</tag>
                 </tags>
+                <buildOptions>
+                  <labels>{"vcs_branch":"${scmBranch}","vcs_ref":"${scmRevision}"}</labels>
+                </buildOptions>
                 <dockerFileDir>${project.basedir}/base_sdc-cqlsh</dockerFileDir>
               </build>
             </image>
@@ -84,6 +93,9 @@
                   <tag>${docker.tag}</tag>
                   <tag>${docker.latest.tag}</tag>
                 </tags>
+                <buildOptions>
+                  <labels>{"vcs_branch":"${scmBranch}","vcs_ref":"${scmRevision}"}</labels>
+                </buildOptions>
                 <dockerFileDir>${project.basedir}/base_sdc-python</dockerFileDir>
               </build>
             </image>
                   <tag>${docker.tag}</tag>
                   <tag>${docker.latest.tag}</tag>
                 </tags>
+                <buildOptions>
+                  <labels>{"vcs_branch":"${scmBranch}","vcs_ref":"${scmRevision}"}</labels>
+                </buildOptions>
                 <dockerFileDir>${project.basedir}/base_sdc-sanity</dockerFileDir>
               </build>
             </image>
                   <tag>${docker.tag}</tag>
                   <tag>${docker.latest.tag}</tag>
                 </tags>
+                <buildOptions>
+                  <labels>{"vcs_branch":"${scmBranch}","vcs_ref":"${scmRevision}"}</labels>
+                </buildOptions>
                 <dockerFileDir>${project.basedir}/base_sdc-vnc</dockerFileDir>
               </build>
             </image>
           </execution>
         </executions>
       </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>buildnumber-maven-plugin</artifactId>
+        <version>1.4</version>
+        <executions>
+          <execution>
+            <phase>validate</phase>
+            <id>gen-scm-info</id>
+            <goals>
+              <goal>create</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <doCheck>false</doCheck>
+          <shortRevisionLength>8</shortRevisionLength>
+          <buildNumberPropertyName>scmRevision</buildNumberPropertyName>
+        </configuration>
+      </plugin>
     </plugins>
   </build>
+
+  <profiles>
+    <profile>
+      <id>gerrit-only</id>
+      <activation>
+        <property>
+          <name>GERRIT_BRANCH</name>
+        </property>
+      </activation>
+      <properties>
+        <scmBranch>${GERRIT_BRANCH}</scmBranch>
+      </properties>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>buildnumber-maven-plugin</artifactId>
+            <version>1.4</version>
+            <executions>
+              <execution>
+                <id>gen-scm-info</id>
+                <phase>none</phase>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>build-helper-maven-plugin</artifactId>
+            <version>3.1.0</version>
+            <executions>
+              <execution>
+                <id>regex-property</id>
+                <goals>
+                  <goal>regex-property</goal>
+                </goals>
+                <configuration>
+                  <name>scmRevision</name>
+                  <value>${GERRIT_PATCHSET_REVISION}</value>
+                  <regex>.{0,32}$</regex>
+                  <replacement></replacement>
+                </configuration>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
+
   <repositories>
     <repository>
       <id>central</id>