gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r18755 - in gnunet-update: etc gnunet_update share/gnunet-u


From: gnunet
Subject: [GNUnet-SVN] r18755 - in gnunet-update: etc gnunet_update share/gnunet-update
Date: Wed, 21 Dec 2011 21:26:59 +0100

Author: harsha
Date: 2011-12-21 21:26:59 +0100 (Wed, 21 Dec 2011)
New Revision: 18755

Modified:
   gnunet-update/etc/gnunet-update.conf
   gnunet-update/gnunet_update/config.py
   gnunet-update/gnunet_update/package.py
   gnunet-update/share/gnunet-update/defaults.conf
Log:
-added release counter

Modified: gnunet-update/etc/gnunet-update.conf
===================================================================
--- gnunet-update/etc/gnunet-update.conf        2011-12-21 18:03:30 UTC (rev 
18754)
+++ gnunet-update/etc/gnunet-update.conf        2011-12-21 20:26:59 UTC (rev 
18755)
@@ -21,6 +21,13 @@
 
 # Default configuration file
 
+# This section is for meta information; it influences what is written to the
+# metadata 
+[META]
+# Specify where the current release is stored. Successive package builds will
+# use the incremented number
+# RELEASE_COUNTER_FILE = /home/user/.gnunet-update/release-counter
+
 # This section is for signing
 [SECURITY]
 # Specify which GPG key to use for signing by its Fingerprint

Modified: gnunet-update/gnunet_update/config.py
===================================================================
--- gnunet-update/gnunet_update/config.py       2011-12-21 18:03:30 UTC (rev 
18754)
+++ gnunet-update/gnunet_update/config.py       2011-12-21 20:26:59 UTC (rev 
18755)
@@ -57,7 +57,8 @@
         self._defaults = {
             'HOME' : os.environ['HOME'],
             'PGP_SIGN_KEY': None,
-            'PGP_SIGN_KEY_PASSWORD' : None
+            'PGP_SIGN_KEY_PASSWORD' : None,
+            'RELEASE_COUNTER_FILE' : None
             }
     
     def get(self, section, key):

Modified: gnunet-update/gnunet_update/package.py
===================================================================
--- gnunet-update/gnunet_update/package.py      2011-12-21 18:03:30 UTC (rev 
18754)
+++ gnunet-update/gnunet_update/package.py      2011-12-21 20:26:59 UTC (rev 
18755)
@@ -180,6 +180,33 @@
 def run(action):
     """control procedure."""
     config = GnunetUpdateConfig(external_config_file);
+    release_counter_file_path = config.get('META', 'RELEASE_COUNTER_FILE')
+    if release_counter_file_path == '':
+        print ('Release counter file is required but not defined in 
configuration')
+        exit(1);
+    print "Release: "+release_counter_file_path
+    
+    release = None;
+    try:
+        with open(release_counter_file_path, 'rb') as release_counter_file:
+            release_counter_file_content = release_counter_file.read()
+            release = int(release_counter_file_content)
+    except IOError as (errno, strerr):
+        if errno == 2:
+            print ("IO Error while trying to open couter file" +
+                   release_counter_file_path)
+        elif errno == 13:
+             print release_counter_file_path + "is not readable"
+             print "Check permissions"
+        else:
+            raise
+        exit(1)
+    except ValueError:
+        print ("Error while parsing current release number" +
+               release_counter_file_path )
+        print ("Found: '" + release_counter_file_content + "' instead of a 
number")
+        exit(1)
+        
     #change the directory to gnunet_src
     if "build" == action:
         current_dir = os.getcwd()
@@ -196,7 +223,7 @@
     metadata = Metadata(machine=platform.machine(),
                         system=platform.system(),
                         pkey=config.get('SECURITY', 'PGP_SIGN_KEY'),
-                        release="0")                       
+                        release=str(release))                       
     metadata.binary_objects = binary_objects
     metadata.other_objects = other_objects
     metadata.dependencies = dependencies
@@ -245,7 +272,20 @@
         #FIXME: May be delete the temporary directory after packing?
         print "gnunet has been installed into the temp dir: " + install_prefix
         
-    tar_file.close()    
+    tar_file.close()
+
+    # Write the incremented release number
+    try:
+        with open(release_counter_file_path, 'wb') as release_counter_file:
+            release_counter_file.write(str(release + 1));
+    except IOError as (errno, errstr):
+        if errno == 13:
+            print release_counter_file_path + "is not writable"
+            print "Check permissions"
+            exit(1)
+        else:
+            raise
+
         
 def main():
     """Starting point of execution."""

Modified: gnunet-update/share/gnunet-update/defaults.conf
===================================================================
--- gnunet-update/share/gnunet-update/defaults.conf     2011-12-21 18:03:30 UTC 
(rev 18754)
+++ gnunet-update/share/gnunet-update/defaults.conf     2011-12-21 20:26:59 UTC 
(rev 18755)
@@ -25,4 +25,6 @@
 #
 # Do NOT edit this file. For customization edit etc/gnunet-update.conf file
 
+[META]
+
 [SECURITY]
\ No newline at end of file




reply via email to

[Prev in Thread] Current Thread [Next in Thread]