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