Meet MutexBot, an alternative to Yoink Bot
Yoink is an excellent shared resource manager in slack, but with the news that it was going paid at an entirely too expensive price in 2022, I figured, “why not write my own”.
So I did… meet https://mutexbot.com/, a slack shared resource manager to assist in managing you software licenses, shared accounts, dev environments etc.
The syntax is pretty straightforward
/mutex create [resource_name]
/mutex reserve [resource_name]
/mutex reserve [resource_name] [duration]
/mutex reserve [resource_name] [duration] "[note]"
/mutex release [resource_name]
/mutex delete [resource_name]
/mutex list
Hope all who find it find it useful. I’m also interesting in knowing what you use it for! Leave a comment down below with your MutexBot use case 🙂
Update June 2022 – A Beta dashboard is now available. While logged in, navigate to https://mutexbot.com/dashboard/.
Cool! Using it to reserve development environments. Any plans to have a queryable API or page available to list reservations without have to type the command? It’s a feature I wanted from Yoink so I could embed information on dashboards or have a more live view of environments without needing to type commands.
Yes actually! This was the main consideration behind enforcing account creation before allowing the app to be installed. You’ll soon see a ‘dashboard’ option that will let you see increasingly more data about your connections and reservations.
Hi, would it be possible to sort resources on “/list” command or maybe decorate it if that’s not desirable under some circumstances – current listing seems to show in “accidental” order from some storage (or maybe by creation date). Sorting would allow easy “virtual grouping” with some prefix (say environment)
Hey, that’s a good point. I’ll update it to sort alphabetically.. well.. lexicographically
done 🙂
Mate, this is very nice! Thanks for sharing. It would be useful if the bot notifies when someone acquires a resource via queue. Now it just remains silent, although the lock shows in the history.
I would be happy to contribute to your project btw (@paulera at github)
Is it possible to see who is using the mutex currently from another resource e.g. a server? Use case is only the user who has locked the resource (say dev server) can actually deploy the app on that server. So in my case, dev server should be able to read the current mutex owner and allow deploy from that use only?