As a follow-up to the parent task, one thing we can try is an HTTP GET request to the the URL associated with the thumbnail. That should result in the thumbnail getting created, which we can then make use of in jobs that send thumbnail contents to PhotoDNA.
>>! In T355243#9470445, @Tgr wrote:
>>>! In T355243#9470364, @Tgr wrote:
>> Although when I try this, there are a bunch of `Thumbor-*` headers on the response so it doesn't seem like it was created by MediaWiki shelling out. So I don't really understand what's going on - thumb.php also uses RENDER_NOW internally.
>
> I think what happens (but not at all sure about it) is that the [[https://gerrit.wikimedia.org/g/mediawiki/core/+/6d71df9dcb0fb043db9942819e2f5883cec97c0e/thumb.php#340|existence check]] in thumb.php makes Swift/Thumbor generate that file on demand. So I think you just need to copy that logic (we should probably encapsulate it in some File method for convenience).