Craig Condit created YUNIKORN-2420:
--------------------------------------
Summary: [Shim] Create reproducible binaries
Key: YUNIKORN-2420
URL: https://issues.apache.org/jira/browse/YUNIKORN-2420
Project: Apache YuniKorn
Issue Type: Sub-task
Components: shim - kubernetes
Reporter: Craig Condit
Assignee: Craig Condit
The binaries produced by the k8shim Makefile currently differ from one run to
the next in 2 ways:
* Go-generated BuildID (random)
* Build timestamp (current time/date)
The first one can be solved by explicitly setting an empty string for the
buildid in the go linker flags. The second can be solved by using a
constently-derived build timestamp:
# If possible, use the latest git commit timestamp, normalized to ISO8601 UTC
# If the current source tree is not a git tree, use the contents of the
build.date file in the top-level directory.
# Fallback to the current date.
# In all cases, save the result to build.date.
Using this process allows us to ensure that a reasonable build date is always
used (if available). When we generate release tarballs, as long as the
build.date file is generated as part of the release process, the results will
be reproducible as well. The build.date file should be ignored by git, but
supplied with the generated source tarball to ensure consistency.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]