I've been working to set up an external returner on the master side for my Saltstack deployment -- a 'master_job_cache', as specified in the documentation.
I started with Slack and mongo_return. I quickly discovered that neither of these work with master_job_cache. My understanding is that they do not implement the right functions to make this work, particularly save_load (revelaed through searching and reading the logs). I then tried mongo_future_return, given that it implements the correct functions -- with the understanding that according to the docs it is currently unstable. I've got pymongo installed and my master-side configuration looks like this:
returner: mongo_future_return
mongo:
db: salt_returns
host: 194.168.1.4
user: salt_master
password: solidWellBuiltPassword
port: 27017
master_job_cache: mongo_future_return
However, this results in a stack trace when I run it, with the master side logs telling me:
Could not deserialize msgpack message.This often happens when trying to read a file not in binary modeTo see message payload, enable debug logging and retry. Exception: unpack(b) received extra data.
So, first question: given what I've explained so far, is there anything I appear to be doing incorrectly that I should address in order to make these mongo returners work?
Second, and main question: what returners have worked for you with the master_job_cache option? Is there a list of those THAT WORK WITH MASTER JOB CACHE (I know there is a list of returners, many don't specify). I don't have the time to try each one individually, though I will likely give MySQL and Postgres a shot.
Thanks for your help in advance.