lockbot
lockbot copied to clipboard
🔒 Coordinate use of your team's shared resources, in Slack 🤝
Lockbot
Demo: lockbot.app
Coordinate use of your team's shared resources, in Slack 🤝
Lockbot only lets each shared resource be locked by one person at a time - like a Mutex 🔒
Example use case: One person wants to deploy and test on a shared staging environment without someone else deploying and overwriting their deployed code, so they use /lock staging-env to lock the staging environment and notify the channel.
⚠ Lockbot cannot physically prevent naughty or unaware users from using a resource whilst it's locked by someone else. Your team must agree to use Lockbot whenever they start or stop using a shared resource.
How to use Lockbot
Lockbot has three main commands:
/locksGet locked resources list 📜/lock [resource-name]Lock a resource 🔒/unlock [resource-name] [options]Unlock a resource 🔓- Set
[options]toforceif you need to unlock when someone is away on holiday ⛱
- Set
Each Slack channel has its own list of resources.
When someone successfully locks or unlocks a resource, the channel is notified.
Lockbot API
It is possible to view, create and delete locks via the Lockbot HTTP API.
To explore the API take a look at the OpenAPI spec.
The API is secured using basic access authentication.
/lbtokenLearn about Lockbot API access tokens 💡/lbtoken newGenerate a new Lockbot API access token 🎫
Each access token is scoped to the Slack team and channel they were created in and to the user who created them.
Contributing
Don't be a stranger, contributions are welcome ✨
See the Contributing Guide for development setup instructions.
- Give this repo a Star ⭐️
- Ask questions and share your feedback in issues
- Create a PR or issue for bugs, enhancements, ideas and suggestions
- Join the Lockbot Community Slack workspace
- Contact @connorads
Security
If you discover a security vulnerability, please send an e-mail to [email protected]
