add revision attribute to repo class
This patch adds a programmatic attribute 'revision' to the repo class. This attribute contains the exact revision at the time of the checkout of a repository. By that, we can avoid the ambiguity of refspecs containing tags or branch names. Internally, the revision is not yet used but just made available for future downstream users (e.g. plugins). Note, that the revision has to be re-queried on each access, as the Config class re-instantiates the repos for each consumer. Signed-off-by: Felix Moessbauer <felix.moessbauer@siemens.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
This commit is contained in:
		
				
					committed by
					
						 Jan Kiszka
						Jan Kiszka
					
				
			
			
				
	
			
			
			
						parent
						
							53369faf55
						
					
				
				
					commit
					23dcf955a2
				
			| @@ -72,6 +72,15 @@ class Repo: | ||||
|                 except ValueError: | ||||
|                     continue | ||||
|             return self.url | ||||
|         elif item == 'revision': | ||||
|             if not self.refspec: | ||||
|                 return None | ||||
|             (_, output) = run_cmd(self.resolve_branch_cmd(), | ||||
|                                   cwd=self.path, fail=False) | ||||
|             if output: | ||||
|                 return output.strip() | ||||
|             return self.refspec | ||||
|  | ||||
|         # Default behaviour | ||||
|         raise AttributeError | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user