Skip to content

Documentation, automation scripts and deployments, enabling the creation of an open-source, high quality, enterprise-wide code quality infrastructure over multiple languages and platforms:gem::star::tada:

License

Notifications You must be signed in to change notification settings

shakedlokits/CodeQuality

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The following document introduces the my perspective on the integration of SonarQube and it's role within the code quality tool-set from my experiences as a solutions architect, designing a code quality metric infrastructure at RedHat for the past 2 years. Here you will find the project summary, compatibility matrix, workflows and additional reading materials on specific subjects.

Objective

We aimed to build a high quality, enterprise-wide code quality monitoring system. Enabling senior managers to prioritize projects more precisely, aiding project managers to focus their development efforts better and guiding developers through complexity, vulnerability and testability issues by aiming to centralize every project's quality metrics and issues, providing each project with all of the standard code quality metrics and presenting this information in a differential representation on several levels of fidelity – from a developer's view to a manager's.

Documentation

Compatability Matrix

The following matrix illustrates the current tested monitoring and reporting capabilities of the CodeQuality project for specific project languages

Language / Metric Code Coverage Static Analysis Jenkins Automation Jenkins Publishing SonarQube Publishing
Java
Ruby
C/C++
Python

Implemetation Time Assessment

It is difficult to estimate the time your project will require without knowing the details of your environment. It is suggested that you view the documentation provided and determine if it fits with the way your project works. If it appears to you that following the documentation will provide you what you need the effort should be on the order of one to a couple weeks.

Testing Environment

All supported functionality and plug-ins are being tested on a testing and CI environment build upon the following structure.

The following components are:

  • Jenkins Master used for running and managing workflow verification tests as well as plug-in integration and unit tests

  • SonarServer used to collect test results from the tested workflows and testing reporting configurations

  • Docker Daemon used for testing environment provisioning

testing workflow

Machine Environment

All machines are held on an OpenStack server with a 4.6.7-200.fc23.x86_64, python v2.7 image.

Working Versions

Jenkins Master - v2.60.3 Docker Daemon - v1.9.0, build 76d6bc9 Sonar Server - v6.7 LTS (Installation Instructions) Sonar Scanner - v2.8

Contributing

We are super happy to recieve more documentation and new tooling methods you are using to make this project as useful as we could so please read the CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us (:

License

This project is licensed under the GPL v3(hehe) - see the LICENSE.md file for more details

Super Special Thanks

I'd like to give million thanks to Alex Braverman who've been with me this entire process and made this pain-stakingly long process bearable with amounts of dark humor this world is yet ready to recieve. I also wanna thank the fabulous Jared Wilkerson who carried and is still carrying through with finishing some final touches on the visualization parts of this project and the awesome person he is in general. Finally and of course, great credit goes to the entire RedHat community for being such and inspiring people to follow in their footsteps.

About

Documentation, automation scripts and deployments, enabling the creation of an open-source, high quality, enterprise-wide code quality infrastructure over multiple languages and platforms:gem::star::tada:

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published