davidcognite

RM Pull Request Process

Blog Post created by davidcognite Employee on Nov 14, 2016

Alfresco Records Management is now able to accept Pull Requests to our GitHub project. Following the success that Dave Draper and the Aikau project has had in receiving community contributions, the RM team was keen to get the process sorted out to enable us to accept pull requests from our GitHub mirror. We accepted our first pull request from the community last week: Fix for Dynamic Extensions by cetra3 · Pull Request #2 · Alfresco/records-management · GitHub  - thanks to Aussie partner Parashift for sending that one in.

 

As explained previously, we use a mirror script to create a public copy of our community code base. This script now pushes any PRs made in GitHub back to our internal Git server and creates a bamboo branch for us to review the code from.

 

As part of this change, our scrum master Christine Thompson has opened up the RM JIRA project so that we can create issues that are publicly readable without an account, which we feel better matches the openness of working with Community members on pull requests.

 

So, if you find an issue you'd like to fix:

1) Raise a JIRA when you discover the issue (it'll be invisible after you create it as RM tickets default to "Internal" access only, but we'll open up the access when we triage it).

2) Send us a Pull Request.

3) Our build servers will pick up the change and run our automated tests on it.

4) We'll try to review the code as quickly as possible (how long that takes depends on the size of the change, severity of the bug and balancing it with other priorities), but will keep JIRA and the PR discussion updated.

 

If you're planning on starting work on any significant code submission, it might be worth checking the approach with us first to avoid disappointment - we may already be working on a fix or have a refactor of that area of the code planned. It's likely that we'll also need to get a contributor agreement signed.

 

I'm eagerly awaiting the next PR; if you could change any code in the RM module, what would it be and why?

Outcomes