summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Crute <mcrute@gmail.com>2011-02-24 14:43:09 -0500
committerMike Crute <mcrute@gmail.com>2011-02-24 14:43:09 -0500
commit1d40d3931dd6778ced0a6a1eecd5acf39998c76f (patch)
tree5d18bab240b9cd228e5f10152710b6120479d896
parent8a0b3af4c4583966f3e6e5d2257f1dabe57adcd9 (diff)
downloadhg_hosting-1d40d3931dd6778ced0a6a1eecd5acf39998c76f.tar.bz2
hg_hosting-1d40d3931dd6778ced0a6a1eecd5acf39998c76f.tar.xz
hg_hosting-1d40d3931dd6778ced0a6a1eecd5acf39998c76f.zip
Minor re-factoring of lock script
-rwxr-xr-xlock-repo.py30
1 files changed, 19 insertions, 11 deletions
diff --git a/lock-repo.py b/lock-repo.py
index f651d3a..e3de55a 100755
--- a/lock-repo.py
+++ b/lock-repo.py
@@ -11,26 +11,34 @@ Mercurial Shared SSH Repo Lock Script
11import os 11import os
12import repolib 12import repolib
13 13
14def main(argv):
15 log = repolib.get_logger('validate-login')
16 14
17 if ('SSH_HG_REPO' not in os.environ or 15def check_repo(env, log):
18 'SSH_HG_USER' not in os.environ): 16 repo = repolib.Repository(env['SSH_HG_REPO'])
19 log.error("Failed to execute pre-lock checks") 17 repo.load_from_hgrc()
18
19 if not repo.can_be_written_by(env['SSH_HG_USER']):
20 log.error("You can not write to this repository.")
20 return 1 21 return 1
21 22
23 return 0
24
25
26def main(argv):
27 log = repolib.get_logger('validate-login')
28
22 try: 29 try:
23 repo = repolib.Repository(os.environ['SSH_HG_REPO']) 30 return check_repo(os.environ, log)
24 repo.load_from_hgrc() 31
25 except IOError: 32 except IOError:
26 log.error("Could not load repository config") 33 log.error("Could not load repository config.")
34 log.error("Failed to execute pre-lock checks.")
27 return 1 35 return 1
28 36
29 if not repo.can_be_written_by(os.environ['SSH_HG_USER']): 37 except KeyError:
30 log.error("You can not write to this repository") 38 log.error("Incomplete or corrupted environment.")
39 log.error("Failed to execute pre-lock checks.")
31 return 1 40 return 1
32 41
33 return 0
34 42
35if __name__ == "__main__": 43if __name__ == "__main__":
36 import sys 44 import sys