Arquillian Development and Contribution

In this short article you will find guideline how to contribute and work with Arquillian code.

 

But before we start - huge thanks for willing to help us making Arquillian better!

 

Tooling prerequisites

 

 

Workflow

Perform Once

  • Fork the one of the GitHub Arquillian's repository which you like to start working on into your own account.
  • Clone the Arquillian Git Repo from your remote repo
  • Change into the repo directory
    • $> cd repo_name
  • Add a remote to the upstream
    • Committers
    • Read-only
      • $> git remote add upstream git://github.com/arquillian/repo_name.git

 

You are all done now and can starting hacking!

 

Perform During Development

  • Ensure your local repository is up-to-date with the upstream
    • $> git pull upstream master
  • Build and run tests, installing into the local M2 repository
    • $> mvn clean install 
  • When about to work on an issue, perform all work in a new branch named after the associated JIRA
    • $> git branch ARQ-XYZ
      $> git checkout ARQ-XYZ
  • After done making changes, add any files to the staging area, and commit to the branch
    • $> git status
    • $> git add <files> -v 
    • $> git commit -m '[ARQ-XYZ] Commit message referencing JIRA issue' 

               You can also use git prepare-commit-message hook which automatically prepends commit message with the branch name.

 

  • Push the branch to your repository
    • $> git push origin ARQ-XYZ
  • Get the changes upstream
    • Committers
      • $> git remote add username userRepoLocation
        $> git fetch username
        $> git checkout -b ARQ-XYZ remotes/username/ARQ-XYZ
        $> mvn clean install
        $> git checkout master
        $> git merge ARQ-XYZ
        $> mvn clean install
        $> git push origin master
        $> git push upstream master
    • Contributor (anonymous)

 

Code format

New formatting rules are located at http://community.jboss.org/message/624825.

 

Formalities

Before we push your change request we need your agreement on Contributor License, so if you don't have a JBoss community account yet (for JIRA, forum etc.) please create one and sign CLA for Arquillian project.

 

That's it. Welcome in the JBoss community!