summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/hashserv/tests.py
diff options
context:
space:
mode:
authorPaul Barker <pbarker@konsulko.com>2021-02-05 11:26:11 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-02-10 23:48:16 +0000
commit73160aac0608cc186be1ec991b08ff8f130cdb8f (patch)
treea4b9d783b02e6efb4f715a7797b4f9fd47477291 /bitbake/lib/hashserv/tests.py
parent94f34b951bedaf7c64ba61c07144bc42cc8e9937 (diff)
downloadpoky-73160aac0608cc186be1ec991b08ff8f130cdb8f.tar.gz
bitbake: hashserv: server: Support searching upstream for outhash
Use the new get-outhash message to perform a read-only query against an upstream server (if present) when a reported taskhash/outhash combination is not found in the current database. If a matching entry is found upstream it is copied into the current database so it can be found by future queries. (Bitbake rev: 2be4f7f0d2ccb09917398289e8140e1467e84bb2) Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/hashserv/tests.py')
-rw-r--r--bitbake/lib/hashserv/tests.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/bitbake/lib/hashserv/tests.py b/bitbake/lib/hashserv/tests.py
index 6f04e30d61..1a696481e3 100644
--- a/bitbake/lib/hashserv/tests.py
+++ b/bitbake/lib/hashserv/tests.py
@@ -246,6 +246,18 @@ class HashEquivalenceCommonTests(object):
246 self.assertClientGetHash(side_client, taskhash4, unihash4) 246 self.assertClientGetHash(side_client, taskhash4, unihash4)
247 self.assertClientGetHash(self.client, taskhash4, None) 247 self.assertClientGetHash(self.client, taskhash4, None)
248 248
249 # Test that reporting a unihash in the downstream is able to find a
250 # match which was previously reported to the upstream server
251 taskhash5 = '35788efcb8dfb0a02659d81cf2bfd695fb30faf9'
252 outhash5 = '2765d4a5884be49b28601445c2760c5f21e7e5c0ee2b7e3fce98fd7e5970796f'
253 unihash5 = 'f46d3fbb439bd9b921095da657a4de906510d2cd'
254 result = self.client.report_unihash(taskhash5, self.METHOD, outhash5, unihash5)
255
256 taskhash6 = '35788efcb8dfb0a02659d81cf2bfd695fb30fafa'
257 unihash6 = 'f46d3fbb439bd9b921095da657a4de906510d2ce'
258 result = down_client.report_unihash(taskhash6, self.METHOD, outhash5, unihash6)
259 self.assertEqual(result['unihash'], unihash5, 'Server failed to copy unihash from upstream')
260
249 def test_ro_server(self): 261 def test_ro_server(self):
250 (ro_client, ro_server) = self.start_server(dbpath=self.server.dbpath, read_only=True) 262 (ro_client, ro_server) = self.start_server(dbpath=self.server.dbpath, read_only=True)
251 263