Description: https://meta.wikimedia.org/wiki/Toolhub
Timeline: 2021-08-12 or before (depends on completion of T273020: Security Readiness Review For Toolhub)
Diagram: <Link to an architectural diagram>
Technologies:
- Python >=3.7
- Numerous 3rd party Python libraries (Django, etc)
- Numerous 3rd party JavaScript libraries (vue.js, etc)
Task runner (Celery or similar)
WMF services this new service talks to:
- MySQL/MariaDB database T271480: Setup production database for Toolhub
- Elasticsearch T271376: Discuss production Elasticsearch needs with the Search team
- Memcached
Redis (Celery task queue)
Which services will connect to this service and how:
- Direct usage by end-users on the internet (https)
Will this service use our event platform? No
Does this service talk to an external service? Yes. Part of the application is an HTTP(S) web crawler which will need to periodically fetch URLs registered by end users to populate/update information in the MySQL database.
Point person: @bd808
See also:
- T271483: Complete and announce initial production deployment of Toolhub
- T261017: Determine basic hosting parameters for Toolhub
Checklist
- Review helm charts:
- toolhub namespaces in k8s.
- toolhub puppet private tokens.
- Generate TLS certificates
- Review helmfile.d files:
- LVS setup - NOTE: should only be pooled in eqiad T288685: Establish active/active multi-dc support for Toolhub
- DNS for LVS records
- Discovery DNS
- Monitoring dashboard
- Integration and Acceptance tests