forked from pool/cloud-init
- Add cloud-init-reproduce-build.patch (boo#1069635)
+ Make builds reproducible OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=101
This commit is contained in:
parent
cd1e7e121f
commit
529dfe1b71
50
cloud-init-reproduce-build.patch
Normal file
50
cloud-init-reproduce-build.patch
Normal file
@ -0,0 +1,50 @@
|
||||
--- setup.py.orig
|
||||
+++ setup.py
|
||||
@@ -18,11 +18,13 @@ import tempfile
|
||||
|
||||
import setuptools
|
||||
from setuptools.command.install import install
|
||||
+from setuptools.command.egg_info import egg_info
|
||||
|
||||
from distutils.errors import DistutilsArgError
|
||||
|
||||
import subprocess
|
||||
|
||||
+RENDERED_TMPD_PREFIX = "RENDERED_TEMPD"
|
||||
|
||||
def is_f(p):
|
||||
return os.path.isfile(p)
|
||||
@@ -107,7 +109,7 @@ def render_tmpl(template):
|
||||
return template
|
||||
|
||||
topdir = os.path.dirname(sys.argv[0])
|
||||
- tmpd = tempfile.mkdtemp(dir=topdir)
|
||||
+ tmpd = tempfile.mkdtemp(dir=topdir, prefix=RENDERED_TMPD_PREFIX)
|
||||
atexit.register(shutil.rmtree, tmpd)
|
||||
bname = os.path.basename(template).rstrip(tmpl_ext)
|
||||
fpath = os.path.join(tmpd, bname)
|
||||
@@ -155,6 +157,24 @@ if os.uname()[0] == 'FreeBSD':
|
||||
elif os.path.isfile('/etc/redhat-release'):
|
||||
USR_LIB_EXEC = "usr/libexec"
|
||||
|
||||
+class MyEggInfo(egg_info):
|
||||
+ """This makes sure to not include the rendered files in SOURCES.txt."""
|
||||
+
|
||||
+ def find_sources(self):
|
||||
+ ret = egg_info.find_sources(self)
|
||||
+ # update the self.filelist.
|
||||
+ self.filelist.exclude_pattern(RENDERED_TMPD_PREFIX + ".*",
|
||||
+ is_regex=True)
|
||||
+ # but since mfname is already written we have to update it also.
|
||||
+ mfname = os.path.join(self.egg_info, "SOURCES.txt")
|
||||
+ if os.path.exists(mfname):
|
||||
+ with open(mfname) as fp:
|
||||
+ files = [f for f in fp
|
||||
+ if not f.startswith(GENERATED_FILE_PREFIX)]
|
||||
+ with open(mfname, "w") as fp:
|
||||
+ fp.write(''.join(files))
|
||||
+ return ret
|
||||
+
|
||||
|
||||
# TODO: Is there a better way to do this??
|
||||
class InitsysInstallData(install):
|
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 6 13:08:04 UTC 2017 - rjschwei@suse.com
|
||||
|
||||
- Add cloud-init-reproduce-build.patch (boo#1069635)
|
||||
+ Make builds reproducible
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 27 13:21:13 CET 2017 - kukuk@suse.de
|
||||
|
||||
|
@ -48,7 +48,11 @@ Patch27: cloud-init-sysconfig-netpathfix.patch
|
||||
Patch29: datasourceLocalDisk.patch
|
||||
Patch34: cloud-init-tests-set-exec.patch
|
||||
Patch35: cloud-init-final-no-apt.patch
|
||||
# FIXME cloud-init-resize-ro-btrfs.patch
|
||||
# proposed for upstream merge (lp#1734787)
|
||||
Patch36: cloud-init-resize-ro-btrfs.patch
|
||||
# FIXME cloud-init-reproduce-build.patch, expecting upstream merge
|
||||
Patch37: cloud-init-reproduce-build.patch
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: filesystem
|
||||
# pkg-config is needed to find correct systemd unit dir
|
||||
@ -213,7 +217,7 @@ Documentation and examples for cloud-init tools
|
||||
%patch34
|
||||
%patch35 -p1
|
||||
%patch36
|
||||
|
||||
%patch37
|
||||
|
||||
%build
|
||||
%if 0%{?suse_version} && 0%{?suse_version} <= 1315
|
||||
|
Loading…
Reference in New Issue
Block a user