X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Farchive.py;h=0174bea9f815cd7d70bf2f2114b19bf759be5e67;hb=eaeb6e11bb70258da5ca64a2acad15ae07960e18;hp=b77bfa0bc076c1a2bfe80f566763736040783217;hpb=6be73ea6efc53d9358f08a3bd1fd71908b04b898;p=dak.git diff --git a/daklib/archive.py b/daklib/archive.py index b77bfa0b..0174bea9 100644 --- a/daklib/archive.py +++ b/daklib/archive.py @@ -274,7 +274,6 @@ class ArchiveTransaction(object): ) rest = dict( maintainer=maintainer, - #install_date=datetime.now().date(), poolfile=db_file_dsc, dm_upload_allowed=(control.get('DM-Upload-Allowed', 'no') == 'yes'), ) @@ -298,8 +297,6 @@ class ArchiveTransaction(object): setattr(db_source, key, value) for key, value in rest2.iteritems(): setattr(db_source, key, value) - # XXX: set as default in postgres? - db_source.install_date = datetime.now().date() session.add(db_source) session.flush() @@ -783,18 +780,25 @@ class ArchiveUpload(object): def _check_new_binary_overrides(self, suite): new = False - - binaries = self.changes.binaries source = self.changes.source + if source is not None and not source.package_list.fallback: packages = source.package_list.packages_for_suite(suite) binaries = [ entry for entry in packages ] - - for b in binaries: - override = self._binary_override(suite, b) - if override is None: - self.warnings.append('binary:{0} is NEW.'.format(b.name)) - new = True + for b in binaries: + override = self._binary_override(suite, b) + if override is None: + self.warnings.append('binary:{0} is NEW.'.format(b.name)) + new = True + else: + binaries = self.changes.binaries + for b in binaries: + if utils.is_in_debug_section(b.control) and suite.debug_suite is not None: + continue + override = self._binary_override(suite, b) + if override is None: + self.warnings.append('binary:{0} is NEW.'.format(b.name)) + new = True return new @@ -1025,14 +1029,33 @@ class ArchiveUpload(object): source = self.changes.source if source is not None: component = source_component_func(source) - db_source = self.transaction.install_source(self.directory, source, suite, component, changed_by, fingerprint=self.fingerprint) + db_source = self.transaction.install_source( + self.directory, + source, + suite, + component, + changed_by, + fingerprint=self.fingerprint + ) else: db_source = None db_binaries = [] for binary in self.changes.binaries: + copy_to_suite = suite + if utils.is_in_debug_section(binary.control) and suite.debug_suite is not None: + copy_to_suite = suite.debug_suite + component = binary_component_func(binary) - db_binary = self.transaction.install_binary(self.directory, binary, suite, component, fingerprint=self.fingerprint, source_suites=source_suites, extra_source_archives=extra_source_archives) + db_binary = self.transaction.install_binary( + self.directory, + binary, + copy_to_suite, + component, + fingerprint=self.fingerprint, + source_suites=source_suites, + extra_source_archives=extra_source_archives + ) db_binaries.append(db_binary) if suite.copychanges: @@ -1154,7 +1177,7 @@ class ArchiveUpload(object): continue script = rule['Script'] - retcode = daklib.daksubprocess.call([script, os.path.join(self.directory, f.filename), control['Version'], arch, os.path.join(self.directory, self.changes.filename)], shell=False) + retcode = daklib.daksubprocess.call([script, os.path.join(self.directory, f.filename), control['Version'], arch, os.path.join(self.directory, self.changes.filename), suite.suite_name], shell=False) if retcode != 0: print "W: error processing {0}.".format(f.filename) remaining.append(f) @@ -1256,7 +1279,7 @@ class ArchiveUpload(object): source_suites = self.session.query(Suite).filter(Suite.suite_id.in_(source_suite_ids)).subquery() source_component_func = lambda source: self._source_override(overridesuite, source).component - binary_component_func = lambda binary: self._binary_component(overridesuite, binary) + binary_component_func = lambda binary: self._binary_component(overridesuite, binary, only_overrides=False) (db_source, db_binaries) = self._install_to_suite(redirected_suite, source_component_func, binary_component_func, source_suites=source_suites, extra_source_archives=[suite.archive])