labs-tools-pywikibugs

  •        0

1. User makes a change on [https://bugzilla.wikimedia.org/](Wikimedia Bugzilla)2. Bugzilla sends an e-mail to the list [https://lists.wikimedia.org/mailman/listinfo/wikibugs-l](wikibugs-l@lists.wikimedia.org)3. Tools mail server receives the e-mail. `.forward` pipes it to [/toredis.py](toredis.py)4. toredis.py sends the e-mail to Redis ('PUBLISH')The Redis step is useful because the mail and exec hosts are not necessarily thesame. Making them find eachother is also not completely trivial.5. The IRC bot listens to events on Redis ('SUBSCRIBE')6. The IRC bot receives the new e-mail7. `bzparser.py` parses the e-mail into a dict8. Asynchronously, `bzparser.py` retrieves real names for e-mail addresses. If no response is received within 30 seconds, the request is stopped. (`pywikibugs.parse_email.fixup_future`)9. For each channel, `pywikibugs.send_messages` builds a message (via build_message) and dispatches it to the IRC channel

https://github.com/wikimedia/labs-tools-pywikibugs

Tags
Implementation
License
Platform

   

comments powered by Disqus


Related Projects







Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.

Tag Cloud >>