Python 2.6 complains about module 'sha' being deprecated. It makes
execution of Ganeti commands a bit annoying, and when you run
'ganeti-watcher' in cron jobs, you get a mail message after every
execution.

Tests pass under under Python 2.6 and Python 2.4.

Cheers,

Carlos Valiente

---
 lib/utils.py |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/lib/utils.py b/lib/utils.py
index fe0dcb1..5810a8c 100644
--- a/lib/utils.py
+++ b/lib/utils.py
@@ -29,7 +29,6 @@ the command line scripts.

 import sys
 import os
-import sha
 import time
 import subprocess
 import re
@@ -47,6 +46,13 @@ import signal

 from cStringIO import StringIO

+try:
+  from hashlib import sha1
+except ImportError:
+  import sha
+  def sha1(*args):
+    return sha.new(*args)
+
 from ganeti import errors
 from ganeti import constants

@@ -330,7 +336,7 @@ def _FingerprintFile(filename):

   f = open(filename)

-  fp = sha.sha()
+  fp = sha1()
   while True:
     data = f.read(4096)
     if not data:
@@ -1179,7 +1185,7 @@ def GenerateSecret():
   @return: a sha1 hexdigest of a block of 64 random bytes

   """
-  return sha.new(os.urandom(64)).hexdigest()
+  return sha1(os.urandom(64)).hexdigest()


 def EnsureDirs(dirs):
-- 
1.6.0.2

Reply via email to