Skip to content

pedrowaty/gReview

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gReview - The Bamboo Gerrit Integration Plugin

This plugin polls Gerrit for changes submitted to the Gerrit review system. When a new change is submitted, gReview will checkout the change and verify it builds. gReview will update the Gerrit change to reflect the correct score for a successful or unsuccessful build.

Features

  • Gerrit Code Review Integration.
  • GitWeb Integration.
  • Builds and Verifies Changes Submitted to Gerrit.
  • Changes are built independently in the order they are submitted.
  • Change dependencies are resolved naturally through Gerrit PatchSets.
  • Change comments automatically updated with build results.
  • Gerrit Change Display Tab available in Build Summary.
  • All the Features Provided By Bamboo

Requirements

Install

Bamboo

The Bamboo install guide can be found here.

Native Git

Native Git can be downloaded from the git website here.

Gerrit

A quick install is available here.

A Tomcat install guide is also in the works.

gReview

This plugin can be installed via the Universal Plugin Manager in Bamboo.

Usage

Enable Native Git

  • Login as admin.
  • Goto the Administration console by selecting "Administration" link at top.
  • Click on "Executables" link on the left under "Build Resources".
  • Click on "add an executable as a server capability".
  • Select "Git" as "Capability Type".
  • Provide path to "git.exe".
  • Click on "Add".

Setup Gerrit

  • Login as admin.
  • Select 'Configure Plan' under 'Actions' in the dropdown menu on the right.
  • Select the 'Source Repositoryies' Tab.
  • Select 'Add Repository'.

Enable Gerrit Verification

  • Login as admin.
  • Select 'Plan Configuration' under 'Actions' in the dropdown menu on the right.
  • Select the 'Stages' Tab.
  • Select the job you're interested in. Usually there is only one, 'Default Job'.
  • Under the job configuration, select the "Miscellaneous" tab.
  • Check 'Run Gerrit Verification after main build.'

Viewing Gerrit Change Information

Gerrit change information is available under the Build Summary Gerrit Tab

Adding Gitweb

Troubleshooting

Connection Issues

Make sure you have Gerrit setup correctly with SSH identity key generated and host used in the SSH connection string added to known host. Detailed instructions are available in the Gerrit documentation.

Note: Some builds will still hang in native msysgit mode on Windows due to the following issue with the bamboo-git-plugin: https://jira.atlassian.com/browse/BAM-11096.

You can work around this issue by manually adding your hostname, used in the repository configuration, to the msysgit/.ssh/known_hosts file. Example:

127.0.0.1 ssh-rsa XXXXB3NzaC1yc2EAAAADAQABBBBgQC699HzXHwr1H6OJeVlRo7h4r+3PY d0wNkqzl6EUAeU2iZjqFqQL2ZiNVqs2JrpTNadbgtXBNk9rhQIWajQZG9ZJG/OPxe+NOkbWQVev rcELsw5N2wxcJOWz+ey1tFv3VCtNCLUGgF7yIg0kZZVQ+HvAzLoMbiHs0haVmEjnLherSw==

NullPointerException Encountered after Upgrade

If this is an upgrade, and you encouter a NullException when attempting to build, you may need to resave your repository settings.Release 1.2.3 changed the way the ssh private key is stored for multiple repositories. Resaving should resolve this issue.

Unable to Delete Repository

This is an old issue and has been fixed in new releases of Bamboo. Here's the ticket.

Debugging

If problems persist, you can turn on debugging in the Administration console to help resolve and report issues. Steps to turn on debugging:

  • Goto Administration->System->Log Settings
  • Add com.houghtonassociates.bamboo.plugins=DEBUG

Check your Bamboo home directory for log output:

Ex: bamboo-home\logs\atlassian-bamboo.log

Bug Fixes and Enhancements

1.2.9 Updates

  • Issue #21 Gerrit Chain Results screen shows changes from other repositories
  • Issue #20 Edit Gerrit Repository' screen force to re-enter passphrase for private key
  • Issue #19 NPE on Bamboo agent after job is dispatched by gReview

1.2.8 Updates

  • Issue #16 4.2.X Support.

1.2.3 Updates

  • Issue #13 gReview doesn't uniquely store connections settings per plan.

1.2.2 Updates

  • Issue #12: NullPointer exception encountered in GerritService

1.2.1 Updates

  • Issue #11: Error message reported by failed build can break verification update.

1.2.0 Updates

  • Issue #10: Exclude Display of Commit Action Tag in Build Changes
  • Issue #9: Exception on failed build
  • Issue #8: Setting non standard port does not work
  • Issue #7: Include Build Results URL for Verified Changes in Gerrit
  • Issue #6: GitWeb Integration

1.1.3 Updates

  • Issue #5: Gerrit Tab Displays on Unrelated Plans

1.1.2 Updates

  • Issue #4: Build Plan Fails When no Changes Open

1.1 Updates

  • Issue #1: Checkout Fails When Bamboo Configured with Native Git
  • Issue #2: Add Git Submodules Capability

How to build the Bamboo Gerrit Plugin

Impatient way:

  1. `mvn package' (Apache Maven 2.2.1 was used to develop this plugin)

More patient way:

  1. Download and install the latest JDK.
  2. Download and install the Atlassian Plugin SDK.
  3. Run `atlas-package -DskipTests' in the directory containing Bamboo Gerrit Plugin pom.xml.
  4. Grab plugin JAR file from `./target/greview-.jar'.

Full documentation on how to develop Atlassian Plugins is available at the Atlassian Developer Site.

How to deploy Git Plugin into existing Bamboo instance

Full documentation on installing Atlassian Plugins is available at:

Maintainer

Jason Huntley

profile for Jason Huntley on Stack Exchange, a network of free, community-driven Q&A sites

About

A Bamboo plugin integrating Gerrit which allows Bamboo to verify changes and update the Gerrit review system.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published