kubernetes / kubernetes/community
Automate removal of inactive Slack users
- Dominant language
- Jupyter Notebook
- Stars
- 13k
- Forks
- 5.4k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 29
Description
### Describe the issue
Kubernetes Slack is running into some problems with total number of accounts. We would like to deactivate accounts which were inactive (no logins) for some period of time, probably 1 year.
There do not appear to be any existing tools which implement this, either via Slack or third parties. So this task would require writing scripts to use the Slack API in order to deactivate batches of users. Requirements of this task include:
- Learning or knowing the Slack API, both documented and undocumented features
- Working in SIG-Contribex to set parameters of deactivation
- Writing a repeatable script in which can deactivate batches of users based on their date of last activity. Golang is preferred, can discuss other languages
- Testing and troubleshooting the script
If someone finds an existing 3rd-party tool which does implement the goal, that's also acceptable.
As nobody on our Slack team currently has advanced working knowledge of the Slack API, anyone working on this task would need to be self-guided; mentorship on the Slack API is not available. Members of SIG-Contribex can mentor other parts of the task.
/sig contributor-experience
/area slack-management
/help
Contributor guide
Research direction
Start by investigating the Slack API, including documented and undocumented user activity and deactivation capabilities, then work with SIG-Contribex to define the inactivity period and other parameters. The work is complete when a repeatable script can deactivate batches of users by last activity date and has been tested and troubleshot, or an acceptable third-party tool is identified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100