Analysis
We haven’t been able to find the exact root cause for this problem. Obviously, it had something to do with the OAuth authentication against OPS. We decided to stop spending time on investigating the problem further as we headed for a more sustainable solution.
Solution
As George Song’s fine python-epo-ops-client library worked well, we finally started using it in favor of the custom OPS client implementation based on requests+requests-oauthlib we were having before.
Not all OPS services are ported yet, so this amendment is currently living in the epo-ops-client branch per Start using "epo-ops-client" library for accessing OPS, · ip-tools/patzilla@9d9019f · GitHub. It should help you when aiming to run PatZilla on a recent Ubuntu 18.04.1 LTS (Bionic Beaver) or others.
Credits
Thanks George for conceiving and maintaining such a nice drop-in replacement we have been switch over to with minimal effort.