[dak/master 2/8] Add header to Contents files.
Signed-off-by: Torsten Werner <twerner@debian.org>
---
daklib/contents.py | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/daklib/contents.py b/daklib/contents.py
index ed982d8..6aadb66 100755
--- a/daklib/contents.py
+++ b/daklib/contents.py
@@ -32,6 +32,8 @@ from daklib.threadpool import ThreadPool
from sqlalchemy import desc, or_
from subprocess import Popen, PIPE
+import os
+
class ContentsWriter(object):
'''
ContentsWriter writes the Contents-$arch.gz files.
@@ -167,6 +169,18 @@ select bc.file, substring(o.section from position('/' in o.section) + 1) || '/'
values['component'] = self.component.component_name
return "%(root)s%(suite)s/%(component)s/Contents-%(architecture)s.gz" % values
+ def get_header(self):
+ '''
+ Returns the header for the Contents files as a string.
+ '''
+ try:
+ filename = os.join(Config()['Dir::Templates'], 'contents')
+ header_file = open(filename)
+ return header_file.read()
+ finally:
+ if header_file:
+ header_file.close()
+
def write_file(self):
'''
Write the output file.
@@ -174,6 +188,7 @@ select bc.file, substring(o.section from position('/' in o.section) + 1) || '/'
command = ['gzip', '--rsyncable']
output_file = open(self.output_filename(), 'w')
pipe = Popen(command, stdin = PIPE, stdout = output_file).stdin
+ pipe.write(self.get_header())
for item in self.fetch():
pipe.write(item)
pipe.close()
--
1.7.2.3
Reply to: