Sputnik automates code review for Java projects on GitHub

Sputnik automates code review for Java projects on GitHub

Sputnik, a new service that performs continuous automatic code reviews for Java, can integrate directly with open source projects hosted on GitHub at no charge.

The service’s underlying software is open source and is hosted on GitHub. Users can contribute to the code directly, or they pull a copy to use on premises, although the convenience of plugging into an existing GitHib repository is a big draw.

Sputnik uses the Jenkins continuous integration server and the Maven and Gradle build systems. It performs code analyses with the Gerrit or Stash code tools, featuring support for Checkstyle, PMD, FindBugs, CodeNarc, JSHint, JSLint, TSLint, and Sonar. Any problems found by those tools are reported back to Gerrit or Stash, although with Sonar, rules generated by that program can be plugged directly into Sputnik’s configuration file. Sputnik’s service version takes care of all the integration with the third-party tools.

Sputnik example reporthttps://sputnik.ci/
Results from a Sputnik build check. The results of various code style-checking applications are aggregated and presented in a single report. Shown here are results from Checkstyle and FindBugs, both for Java.

Aside from supporting generic Java applications, Sputnik can also screen code written in two other languages that run on the JVM, Groovy and Scala. The former,now an Apache Software Foundation project, has carved out a niche in automating servers and business taskflows. Scala, meanwhile, is currently one of the majorfunctional languages, along with Clojure. In theory, Sputnik could add support for other JVM-hosted languages, provided they have code analysis tools that are compatible with Gerrit or Stash.

By default, you use Sputnik by attaching a GitHub repository to it, with GitLab support planned for sometime in the future. Public, open source repos cost nothing to use, but the cost for integrating with commercial GitHub repos is by quote only at this time. Alternatively, a copy of Sputnik can be checked out and set up locally, but that requires manually integration with all the accompanying tools.

 

[Source:- Javaworld]