mirror of
				https://git.launchpad.net/~ubuntu-release/britney/+git/britney2-ubuntu
				synced 2025-10-29 23:54:08 +00:00 
			
		
		
		
	Make "approve" hints require the tpu package to be built on all arches
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk> Previously, an "approve" hint would allow a package to migrate from testing-proposed-updates to testing even if packages were not available for some architectures on which the package existed in testing. The t-p-u package must now have built on the same architectures as the existing package in testing; the previous behaviour can be achieved by combining "approve" and "force" hints.
This commit is contained in:
		
							parent
							
								
									4cdd25e517
								
							
						
					
					
						commit
						a015c1ef63
					
				
							
								
								
									
										38
									
								
								britney.py
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								britney.py
									
									
									
									
									
								
							| @ -139,11 +139,11 @@ does for the generation of the update excuses. | ||||
|        that the highest urgency uploaded since the previous testing | ||||
|        transition is taken into account. | ||||
| 
 | ||||
|     8. All the architecture-dependent binary packages and the | ||||
|        architecture-independent ones for the `nobreakall' architectures | ||||
|        have to be built from the source we are considering. If this is | ||||
|        not true, then these are called `out-of-date' architectures and | ||||
|        the package is ignored. | ||||
|     8. If the suite is unstable, all the architecture-dependent binary | ||||
|        packages and the architecture-independent ones for the `nobreakall' | ||||
|        architectures have to be built from the source we are considering. | ||||
|        If this is not true, then these are called `out-of-date' | ||||
|        architectures and the package is ignored. | ||||
| 
 | ||||
|     9. The source package must have at least a binary package, otherwise | ||||
|        it is ignored. | ||||
| @ -156,7 +156,10 @@ does for the generation of the update excuses. | ||||
|        updated even if it is marked as ignored from the previous steps. | ||||
| 
 | ||||
|    12. If the suite is testing-proposed-updates, the source package can | ||||
|        be updated only if there is an explicit approval for it. | ||||
|        be updated only if there is an explicit approval for it.  Unless | ||||
|        a `force' hint exists, the new package must also be available | ||||
|        on all of the architectures for which it has binary packages in | ||||
|        testing. | ||||
| 
 | ||||
|    13. If the package will be ignored, mark it as "Valid candidate", | ||||
|        otherwise mark it as "Not considered". | ||||
| @ -1294,6 +1297,29 @@ class Britney: | ||||
|                 else: | ||||
|                     update_candidate = False | ||||
| 
 | ||||
|         if suite == 'tpu': | ||||
|             # o-o-d(ish) checks for t-p-u | ||||
|             for arch in self.options.architectures: | ||||
|                 # If the package isn't in testing or the testing | ||||
|                 # package produces no packages on this architecture, | ||||
|                 # then it can't be out-of-date.  We assume that if | ||||
|                 # the t-p-u package has produced any binaries for | ||||
|                 # this architecture then it is ok | ||||
| 
 | ||||
|                 if not src in self.sources["testing"] or \ | ||||
|                    (len([x for x in self.sources["testing"][src][BINARIES] if x.endswith("/"+arch)]) == 0) or \ | ||||
|                    (len([x for x in self.sources[suite][src][BINARIES] if x.endswith("/"+arch)]) > 0): | ||||
|                     continue | ||||
| 
 | ||||
|                 text = "Not yet built on <a href=\"http://buildd.debian.org/build.php?arch=%s&pkg=%s&ver=%s&suite=testing\" target=\"_blank\">%s</a> (relative to testing)" % (urllib.quote(arch), urllib.quote(src), urllib.quote(source_u[VERSION]), arch) | ||||
| 
 | ||||
|                 if arch in self.options.fucked_arches.split(): | ||||
|                     text = text + " (but %s isn't keeping up, so never mind)" % (arch) | ||||
|                 else: | ||||
|                     update_candidate = False | ||||
| 
 | ||||
|                 excuse.addhtml(text) | ||||
| 
 | ||||
|         # at this point, we check the status of the builds on all the supported architectures | ||||
|         # to catch the out-of-date ones | ||||
|         pkgs = {src: ["source"]} | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user