Actions

Developer Area/Developer Tools

From Mahara Wiki

< Developer Area

Setting up your development tools

NOTE: Before you get started, you need to decide on which email address you will be using while developing on Mahara. This will make sure all the different tools know who you are when they are sharing information about the project.

If you are using the Cookie Pie firefox plugin, sadly you will need to disable this (or alternatively use a different browser for development tasks such as Google's Chrome!). The plugin interferes with the code review web application.

Web based tools

Mahara development uses several web-based tools for workflow. You will need to sign up at each of them and give them certain information so that your work is attributed to you throughout.

Launchpad.net

The Mahara bug tracker is on launchpad.net.

This means that to use the bug tracking workflow you will need to sign up for a launchpad.net account. If you already have a launchpad account, you can skip ahead to the next step.

Gitorious.org

Mahara's code tree is hosted on gitorious.org. If you have already signed up with launchpad, gitorious accepts your launchpad url (which is openid) for logins (look under the heading text). If you don't already have an account, or an openid url, please register an account.

Please make sure that you have the same email address registered to both launchpad and gitorious.

Gerrit code review (reviews.mahara.org)

All code changes to Mahara go through a code review process. This is hosted at reviews.mahara.org and uses the launchpad openid for signin.

To create your account on the Mahara code review system (which uses Gerrit Code Review):

  1. install the CAcert root certificate in your browser
  2. uninstall the Cookie Pie Firefox extension if you have it. It will prevent you from logging in.
  3. click the "Sign In" in the top right corner of the page
  4. enter your preferred OpenID (we recommend using Launchpad: https://launchpad.net/~username)
  5. click the "Settings" in the top right corner of the page
  6. add these details:
    • username (hint: use the one you use on mahara.org, all lowercase)
    • full name
    • email address(es)
    • ssh key (hint: use the one you use on gitorious)

Previous documentation mentioned the 'mahara reviewers' group. You do not need direct commit or to be part of the 'mahara reviewers' group to send your patchsets through the gerrit system.

Mahara.org

Lastly! You should sign up at mahara.org!

Locally installed tools

Git Version Control System

If you plan to submit code changes will need to set up a local git repository, and you'll need the git software for this.

If you are running Ubuntu or Debian, this is done by:

sudo apt-get install git-core

On Fedora, you will need to (with root privileges) do:

yum install git-core

(if this didn't work, check to see if the extras repository is enabled. Though this could be a sign your Fedora is a really old version and you might need to update.

On windows, you should download an installer from the git website.

Once you have git installed, please set your name locally with:

git config --global user.name "FirstName LastName"

And you will also need to set your email. This should be the same email that is in your user profile for all the web tools.

git config --global user.email "[email protected]"

Secure Shell (SSH) Key

Please refer to the excellent guide for setting up your key on the launchpad.net site. You will need to give them your key anyway:

https://launchpad.net/~<YOUR-LAUNCHPAD-USERNAME-GOES-HERE>/+editsshkeys

You will also need to add the key to your Gitorious profile:

https://gitorious.org/~<YOUR-GITORIOUS-USERNAME-GOES-HERE>/keys