extras-buildsys/server CONFIG.py, 1.17, 1.18 PackageJob.py, 1.5, 1.6 main.py, 1.8, 1.9

Daniel Williams (dcbw) fedora-extras-commits at redhat.com
Tue Jul 12 20:12:34 UTC 2005


Author: dcbw

Update of /cvs/fedora/extras-buildsys/server
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv12644/server

Modified Files:
	CONFIG.py PackageJob.py main.py 
Log Message:
2005-07-12  Dan Williams <dcbw at redhat.com>

    * Warn user and exit if server or builder is already running

    * Add aliasing/mapping of plague targets to CVS targets, to
        allow for different CVS directory names than what our
        targets are




Index: CONFIG.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/CONFIG.py,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- CONFIG.py	11 Jul 2005 00:30:36 -0000	1.17
+++ CONFIG.py	12 Jul 2005 20:12:32 -0000	1.18
@@ -57,6 +57,16 @@
 #
 config_opts['targets'] = {  'devel' :	['i386'] }
 
+
+# If you're using CVS building, sometimes the CVS directory layout won't match
+# the targets we've defined in config_opts['target'].  Add aliases for them
+# here, like "{  'devel': 'development', '4': 'FC-4' }
+#
+# Mapping -   our_target: cvs_target
+
+config_opts['cvs_target_map'] = {}
+
+
 # Target Optional Arches
 #
 # These are arches that submitters _may_ build packages on, but packages won't


Index: PackageJob.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/PackageJob.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- PackageJob.py	10 Jul 2005 19:59:32 -0000	1.5
+++ PackageJob.py	12 Jul 2005 20:12:32 -0000	1.6
@@ -286,8 +286,17 @@
 
     def _make_srpm(self):
         self._set_cur_stage('make_srpm')
+
+        # Map our target (self.target) to the CVS target alias, since CVS may have
+        # different target names that we expose
+        cvs_target_map = config_opts['cvs_target_map']
+        try:
+            cvs_target = cvs_target_map[self.target]
+        except KeyError:
+            cvs_target = self.target
+
         self.srpm_path = None
-        srpm_dir = os.path.join(self.checkout_tmpdir, self.package, self.target)
+        srpm_dir = os.path.join(self.checkout_tmpdir, self.package, cvs_target)
         if not os.path.exists(srpm_dir):
             msg = "could not find path %s for %s." % (srpm_dir, self.cvs_tag)
             raise PrepError(msg)


Index: main.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/main.py,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- main.py	11 Jul 2005 15:22:56 -0000	1.8
+++ main.py	12 Jul 2005 20:12:32 -0000	1.9
@@ -18,6 +18,7 @@
 
 import sys
 import os
+import socket
 from plague import AuthedXMLRPCServer
 from plague import lighttpdManager
 from plague import HTTPServer
@@ -101,16 +102,22 @@
     # Create the BuildMaster XMLRPC server
     UI_PORT = 8887
     ui = None
-    if config_opts['ssl_frontend'] == True:
-        ui_certs = {}
-        ui_certs['key_and_cert'] = config_opts['server_key_and_cert']
-        ui_certs['ca_cert'] = config_opts['ca_cert']
-        ui_certs['peer_ca_cert'] = config_opts['ui_ca_cert']
-        ui = UserInterfaceSSLAuth(builder_manager, bm)
-        bm_server = AuthenticatedSSLXMLRPCServer((hostname, UI_PORT), ui_certs)
-    else:
-        ui = UserInterfaceNoAuth(builder_manager, bm)
-        bm_server = AuthedXMLRPCServer.AuthedXMLRPCServer((hostname, UI_PORT))
+    try:
+        if config_opts['ssl_frontend'] == True:
+            ui_certs = {}
+            ui_certs['key_and_cert'] = config_opts['server_key_and_cert']
+            ui_certs['ca_cert'] = config_opts['ca_cert']
+            ui_certs['peer_ca_cert'] = config_opts['ui_ca_cert']
+            ui = UserInterfaceSSLAuth(builder_manager, bm)
+            bm_server = AuthenticatedSSLXMLRPCServer((hostname, UI_PORT), ui_certs)
+        else:
+            ui = UserInterfaceNoAuth(builder_manager, bm)
+            bm_server = AuthedXMLRPCServer.AuthedXMLRPCServer((hostname, UI_PORT))
+    except socket.error, e:
+        if e[0] == 98:      # Address already in use
+            print "Error: couldn't bind to address '%s:%s'.  Is the server already running?" % (hostname, UI_PORT)
+            os._exit(1)
+
     bm_server.register_instance(ui)
 
     # SRPM fileserver




More information about the scm-commits mailing list