summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2013-06-26 13:42:34 -0700
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2013-06-26 13:42:34 -0700
commita519dc9298317b678bca43597892df5aa13d874d (patch)
treea1d81b5822659ef6bfb5cbcd6e711386366ca168
parent8daee5c5e0434bfc8caf8fac90bea4faf0605651 (diff)
parent39a639a33048178d98c4b3f7972589b45afd3151 (diff)
downloadbcfg2-a519dc9298317b678bca43597892df5aa13d874d.tar.gz
bcfg2-a519dc9298317b678bca43597892df5aa13d874d.tar.bz2
bcfg2-a519dc9298317b678bca43597892df5aa13d874d.zip
Merge pull request #65 from dikim33/maint
Make the "latest" value more usable in VCS.py
-rw-r--r--src/lib/Bcfg2/Client/Tools/VCS.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/lib/Bcfg2/Client/Tools/VCS.py b/src/lib/Bcfg2/Client/Tools/VCS.py
index 3d19f5f1a..aca5dbbc7 100644
--- a/src/lib/Bcfg2/Client/Tools/VCS.py
+++ b/src/lib/Bcfg2/Client/Tools/VCS.py
@@ -161,13 +161,20 @@ class VCS(Bcfg2.Client.Tools.Tool):
def Verifysvn(self, entry, _):
"""Verify svn repositories"""
+ headrev = pysvn.Revision( pysvn.opt_revision_kind.head )
client = pysvn.Client()
try:
cur_rev = str(client.info(entry.get('name')).revision.number)
+ server = client.info2(entry.get('sourceurl'), headrev, recurse=False)
+ if server:
+ server_rev = str(server[0][1].rev.number)
except:
self.logger.info("Repository %s does not exist" % entry.get('name'))
return False
+ if entry.get('revision') == 'latest' and cur_rev == server_rev:
+ return True
+
if cur_rev != entry.get('revision'):
self.logger.info("At revision %s need to go to revision %s" %
(cur_rev, entry.get('revision')))