You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by mt...@apache.org on 2022/03/12 17:05:43 UTC

[nifi] branch main updated: NIFI-9791 Use maven.build.timestamp during manifest generation instead of buildhelper timestamp

This is an automated email from the ASF dual-hosted git repository.

mthomsen pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new e226d3b  NIFI-9791 Use maven.build.timestamp during manifest generation instead of buildhelper timestamp
e226d3b is described below

commit e226d3be525e40c42d9b42835757790063b5a504
Author: Bryan Bende <bb...@gmail.com>
AuthorDate: Sat Mar 12 10:13:08 2022 -0500

    NIFI-9791 Use maven.build.timestamp during manifest generation instead of buildhelper timestamp
    
    This closes #5861
    
    Signed-off-by: Mike Thomsen <mt...@apache.org>
---
 .../runtime/manifest/impl/RuntimeManifestGenerator.java    | 14 +++++++++++++-
 .../src/main/resources/build.properties                    |  2 +-
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/nifi-manifest/nifi-runtime-manifest-core/src/main/java/org/apache/nifi/runtime/manifest/impl/RuntimeManifestGenerator.java b/nifi-manifest/nifi-runtime-manifest-core/src/main/java/org/apache/nifi/runtime/manifest/impl/RuntimeManifestGenerator.java
index 5954b77..334a4a1 100644
--- a/nifi-manifest/nifi-runtime-manifest-core/src/main/java/org/apache/nifi/runtime/manifest/impl/RuntimeManifestGenerator.java
+++ b/nifi-manifest/nifi-runtime-manifest-core/src/main/java/org/apache/nifi/runtime/manifest/impl/RuntimeManifestGenerator.java
@@ -34,6 +34,8 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.Properties;
 
 /**
@@ -47,6 +49,7 @@ public class RuntimeManifestGenerator {
     private static final String PROJECT_VERSION_PROPERTY = "Project-Version";
     private static final String BUILD_REVISION = "Build-Revision";
     private static final String BUILD_TIMESTAMP = "Build-Timestamp";
+    private static final String BUILD_TIMESTAMP_FORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'";
     private static final String BUILD_JDK = "Build-Jdk";
     private static final String BUILD_JDK_VENDOR = "Build-Jdk-Vendor";
 
@@ -75,10 +78,19 @@ public class RuntimeManifestGenerator {
         final String buildJdk = buildProperties.getProperty(BUILD_JDK);
         final String buildJdkVendor = buildProperties.getProperty(BUILD_JDK_VENDOR);
 
+        long buildTimestampMillis;
+        try {
+            final SimpleDateFormat buildTimestampFormat = new SimpleDateFormat(BUILD_TIMESTAMP_FORMAT);
+            final Date buildTimestampDate = buildTimestampFormat.parse(buildTimestamp);
+            buildTimestampMillis = buildTimestampDate.getTime();
+        } catch (Exception e) {
+            buildTimestampMillis = System.currentTimeMillis();
+        }
+
         final BuildInfo buildInfo = new BuildInfo();
         buildInfo.setVersion(runtimeVersion);
         buildInfo.setRevision(buildRevision);
-        buildInfo.setTimestamp(Long.valueOf(buildTimestamp));
+        buildInfo.setTimestamp(buildTimestampMillis);
         buildInfo.setCompiler(buildJdkVendor + " " + buildJdk);
 
         final RuntimeManifest runtimeManifest = new StandardRuntimeManifestBuilder()
diff --git a/nifi-manifest/nifi-runtime-manifest/src/main/resources/build.properties b/nifi-manifest/nifi-runtime-manifest/src/main/resources/build.properties
index aaf21ca..988b887 100644
--- a/nifi-manifest/nifi-runtime-manifest/src/main/resources/build.properties
+++ b/nifi-manifest/nifi-runtime-manifest/src/main/resources/build.properties
@@ -16,7 +16,7 @@
 Project-Version:${project.version}
 Build-Branch:${buildBranch}
 Build-Revision:${buildRevision}
-Build-Timestamp:${timestamp}
+Build-Timestamp:${maven.build.timestamp}
 Built-By:${user.name}
 Maven-Home:${maven.home}
 Maven-Version:${maven.version}