Page MenuHomePhabricator

Add MediaWiki login support to Discourse
Closed, ResolvedPublic

Description

Discourse uses OmniAuth which already has a MediaWiki plugin so all that's needed here is the scaffolding to turn the OmniAuth plugin into a Discourse plugin. For a typical site that's supported by OmniAuth the auth plugin is just a few dozen lines of declarative code.

Related Objects

Event Timeline

Qgil triaged this task as High priority.Jun 27 2019, 7:06 AM
Qgil added a project: Space.
Qgil added a subscriber: elappen-WMF.

If what Gergo says it's true, implementing this feature might be simpler than trying to debug and fix T226545: Loop trying to create an account in Wikimedia Space in certain cases.

@elappen-WMF, just to start somewhere, can you ask our Discourse contractor to have a look to this task and see whether he (or someone he knows) can implement Wikimedia login via OmniAuth?

Qgil edited projects, added Space (Jul-Sep-2019); removed Space.

Yep, I'll send him a message to get the ball rolling.

The developer has begun work on this, and is pursuing implementing the existing Wikimedia OmniAuth Strategy in Discourse.

A first version of the Wikimedia login plugin for Discourse is available at https:// discourse-mediawiki.wmflabs.org. Testers wanted!

https://discourse-mediawiki.wmflabs.org/t/testing-wikimedia-login-for-this-discourse-instance/1460

As soon as we are confident about the quality of this plugin we will install it here in Space and we will remove the Phabricator login workaround.

@elappen-WMF, I installed and configured the plugin in discourse-mediawiki, @Tgr approved the OAuth client request, and I gave Angus admin permissions to discourse-mediawiki. With this, you should have everything you need to check feedback and fine tune as needed.

Let me know when the plugin is ready for discuss-space, and I will install it and configure it there.

Wikimedia login is now deployed on Space. I have released notifying people of this change, and informing them what to do in the case of account duplication.