Willing to contribute after reading Ops Blog

Hi folks.

I want to contribute in developing the discourse forum with anything that I can start. I know ROR still use it at the Mobile API backend at full-time job. I am also a DevOps from the heart working on an automated build and distributed system for company’s product although I have little experience in Open Source projects.

Please poke me or give a Hi because I would be taking a look around here.

Hey @tinaunglin! Glad to see you’re interested in helping us out. I’m the owner for Discourse but @leo is the one who has been working on plugins with us, so he’s the best person to help you get started on hacking.

I’m also actually working on automating Discourse updates and someone with experience would be very helpful. Do you know/use puppet?

I would definitely reach to @leo out and ask if he/she has something to get started.

I know puppet but I am not currently using or applying it daily. Are you willing to go with puppet for automated deployment or may I know what you are working on ?

Hey, sorry about the delay in responding.

Discourse is created with ROR, so we’re using it for a number of plugins. The two which are live at the moment on the site are: https://github.com/Mozilla-cIT/discourse-persona-mozillians & https://github.com/Mozilla-cIT/discourse-bugzilla

Not having any experience in Ruby (on Rails) other than developing Discourse plugins, I have no idea if it’s some accepted paradigm or if it’s a unique implementation. Just about everything I’ve learnt has come from the Discourse Meta forum, particularly the extensibility category. A great place to start is reading the ‘Brand new plugin interface’ topic:
https://meta.discourse.org/t/brand-new-plugin-interface/8793

Before you get started with development, you’ll want to set up a Discourse development environment first. The Discourse team have instructions for that also: https://github.com/discourse/discourse/blob/master/docs/INSTALL-digital-ocean.md#install-discourse

I’ve tagged a number of issues with “good first bug”, but two which feel like good introductions to the plugin interface are: ‘Add mozillians URL to Discourse profile’ and ‘Add onebox engine for bugzilla’:


If you need help with either of them, please feel free to reach out to me. :smile:

2 Likes

Just setup the development environment within a vagrant debian box by the given instructions form their github wiki. Successfully hooked at discourse.moz in local hosts and now trying to test the Discourse Persona Mozillian Plugins.

I would try to understand the auth flow and discourse’s model first.
Where can I get an app name and a key to fetch API from mozillians.org platform ? Or just test with dummy data to put users into groups automatically?

That forum link you have given me was a great help.
Thanks

I developed using https://www.mockable.io/ to mock the ‘Community Site’ Mozillians API.

As an example: https://demo5569439.mockable.io/api/v1/users/?app_name=foobar&app_key=12345&email=leo@mozilla.org.uk

So now, if you were to change the ‘mozillians_url’ setting to ‘https://demo5569439.mockable.io’ and then log in with leo@mozilla.org.uk, the plugin should work.

1 Like

@tinaunglin - have you been successful in getting everything you need to contribute? Please let us know if you need more help.