aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/prserv.bbclass
diff options
context:
space:
mode:
authorLianhao Lu <lianhao.lu@intel.com>2011-05-18 21:15:01 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-05-27 17:07:57 +0100
commitb1f6120c04731d3d66f322ce550b0d223c118dab (patch)
tree206755721946f7b1be7870c4b4dbedeee1e18b11 /meta/classes/prserv.bbclass
parentad00ad1d530074dc3a0f3376f96ad5a88a7b24e2 (diff)
downloadopenembedded-core-contrib-b1f6120c04731d3d66f322ce550b0d223c118dab.tar.gz
classes/package(prserv).bbclass: Get PRAUTO and use PKGV/PKGR.
1. Added package_get_auto_pr to PACKAGEFUNCS to get the auto incremented value(PRAUTO) from remote PR service. 2. use PKGV/PKGR for pkgdata which will be used by package_write_xxx. 3. Added supporting functions in prserv.bbclass. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Diffstat (limited to 'meta/classes/prserv.bbclass')
-rw-r--r--meta/classes/prserv.bbclass29
1 files changed, 29 insertions, 0 deletions
diff --git a/meta/classes/prserv.bbclass b/meta/classes/prserv.bbclass
new file mode 100644
index 0000000000..de46ff6897
--- /dev/null
+++ b/meta/classes/prserv.bbclass
@@ -0,0 +1,29 @@
+def prserv_make_conn(d):
+ import prserv.serv
+ host=d.getVar("PRSERV_HOST",True)
+ port=d.getVar("PRSERV_PORT",True)
+ try:
+ conn=None
+ conn=prserv.serv.PRServerConnection(host,int(port))
+ d.setVar("__PRSERV_CONN",conn)
+ except Exception, exc:
+ bb.fatal("Connecting to PR service %s:%s failed: %s" % (host, port, str(exc)))
+
+ return conn
+
+def prserv_get_pr_auto(d):
+ if not d.getVar('USE_PR_SERV', True):
+ bb.warn("Not using network based PR service")
+ return None
+
+ conn=d.getVar("__PRSERV_CONN", True)
+ if conn is None:
+ conn=prserv_make_conn(d)
+ if conn is None:
+ return None
+
+ version=d.getVar("PF", True)
+ checksum=d.getVar("BB_TASKHASH", True)
+ auto_rev=conn.getPR(version,checksum)
+ bb.debug(1,"prserv_get_pr_auto: version: %s checksum: %s result %d" % (version, checksum, auto_rev))
+ return auto_rev