You shall not pass - Control your code quality gates with a wizard.

Eryk Szymanski
Eryk SzymanskiEngineering Manager at CollabNet
Copyright ©2015 CollabNet, Inc. All Rights Reserved.Gerrit User Summit - Mountain View CA November 2015
Code Quality Gate Wizard
Create your own submit rules in less than
three minutes.
Eryk Szymanski
Potsdam Engineering Office
CollabNet
Copyright ©2015 CollabNet, Inc. All Rights Reserved.2
Copyright ©2015 CollabNet, Inc. All Rights Reserved.3
CollabNet TeamForge - ALM Platform
Copyright ©2015 CollabNet, Inc. All Rights Reserved.4
CollabNet TeamForge - Integrated Tools
Copyright ©2015 CollabNet, Inc. All Rights Reserved.5
Code Quality Gate Wizard – The Big Picture
Copyright ©2015 CollabNet, Inc. All Rights Reserved.6
Code Quality Gate Wizard - Motivation
- This is reasonable and works very well
- But wait a second, do our customers agree?
- OK. We will write our own rules.pl file…
Copyright ©2015 CollabNet, Inc. All Rights Reserved.7
Code Quality Gate Wizard - Motivation
…in Prolog.
- In what???
- In Prolog. Look:
???
- Oh nice. I would rather go fishing instead. :)
Copyright ©2015 CollabNet, Inc. All Rights Reserved.8
Code Quality Gate Wizard - Our Goal
Easy:
- Easy to create, test and deploy the rules
- Minimize amount of code needed (UI/Wizard)
Provide an easy and non-invasive and complete way to define
submit rules for Gerrit projects.
Non-invasive:
- Compatible with rules.pl file
- Do not change the Gerrit core, but plugin is Ok
Complete:
- Everything what's in Submit Rules Cookbook
- And more :)
Copyright ©2015 CollabNet, Inc. All Rights Reserved.9
Code Quality Gate Wizard - Two Components
➔
Backend: Gerrit Workflow plugin
Provides just one prolog predicate: cn.workflow which takes
XML input that defines submit rules with filters and voting
conditions and process them. This fits in the rules.pl file.
➔
Frontent: GitEye (Free CollabNet Git Client)
•
provides the UI to generate the rules file
•
allows to test your rules against a Gerrit change and deploy it
to the selected project
•
lets you generate the rules file from an existing change
•
contains predefined examples
Copyright ©2015 CollabNet, Inc. All Rights Reserved.10
Code Quality Gate Wizard – Submit Rule
➔
Display name
➔
Actions: if satisfied or not satisfied: allow, block or ignore
➔
Filters:
•
Change details: owner, branch, topic
•
Commit details: author, commiter, msg, delta
•
Commit stats: min/max lines inserted/deleted, min/max files
modified
•
User details: current user, ignore (non-)author/
(non-)commiter
•
Voting Condition:
•
Voting Filters: Voter, Vote count/sum/range, Ignore
(non-)author, Ignore (non-)commiter
Copyright ©2015 CollabNet, Inc. All Rights Reserved.11
Code Quality Gates Wizard - Algorithm
Copyright ©2015 CollabNet, Inc. All Rights Reserved.12
GitEye – Free Git Client From CollabNet
http://www.collab.net/products/GitEye
Copyright ©2015 CollabNet, Inc. All Rights Reserved.Copyright ©2015 CollabNet, Inc. All Rights Reserved.
Demo
Code Quality Gates in Action
Copyright ©2015 CollabNet, Inc. All Rights Reserved.14
Code Quality Gate Wizard – How to launch
Copyright ©2015 CollabNet, Inc. All Rights Reserved.15
Code Quality Gate Wizard – Templates
Copyright ©2015 CollabNet, Inc. All Rights Reserved.16
Code Quality Gate Wizard – Built In Test Mode
Copyright ©2015 CollabNet, Inc. All Rights Reserved.17
Code Quality Gate Wizard – From Existing Changes
Copyright ©2015 CollabNet, Inc. All Rights Reserved.18
Code Quality Gate Wizard – Great Flexibility
Copyright ©2015 CollabNet, Inc. All Rights Reserved.19
Prezi on Quality Gates for Gerrit
http://prezi.com/2s2ukhpg53or/?utm_campaign=share&utm_medium=copy
4-Eye-Principle Illustrated
http://prezi.com/sbfm_jtuohel/?utm_campaign=share&utm_medium=copy&rc=ex0share
Git Blogs (3 part series)
http://blogs.collab.net/teamforge/you-shall-not-pass-control-your-code-quality-gates-with-a-wizard-part-iii
Learn More
Copyright ©2015 CollabNet, Inc. All Rights Reserved.Copyright ©2015 CollabNet, Inc. All Rights Reserved.
Thank you very much
Q&A
Any Questions?
Email: eszymanski@collab.net
1 of 20

Recommended

Diffy gets enterprise grade by
Diffy gets enterprise gradeDiffy gets enterprise grade
Diffy gets enterprise gradeEryk Szymanski
689 views23 slides
Bringing Pull Request to Gerrit by
Bringing Pull Request to GerritBringing Pull Request to Gerrit
Bringing Pull Request to GerritEryk Szymanski
3K views23 slides
Code Review with Git and Gerrit - Devoxx 2011 - Tools in Action - 2011-11-14 by
Code Review with Git and Gerrit - Devoxx 2011 - Tools in Action - 2011-11-14Code Review with Git and Gerrit - Devoxx 2011 - Tools in Action - 2011-11-14
Code Review with Git and Gerrit - Devoxx 2011 - Tools in Action - 2011-11-14msohn
2.6K views24 slides
Introducing GitLab by
Introducing GitLabIntroducing GitLab
Introducing GitLabTaisuke Inoue
1.1K views10 slides
Gerrit is Getting Native with RPM, Deb and Docker by
Gerrit is Getting Native with RPM, Deb and DockerGerrit is Getting Native with RPM, Deb and Docker
Gerrit is Getting Native with RPM, Deb and DockerLuca Milanesio
3.2K views26 slides
Git Lab Introduction by
Git Lab IntroductionGit Lab Introduction
Git Lab IntroductionKrunal Doshi
831 views24 slides

More Related Content

What's hot

Gerrit Code Review with GitHub plugin by
Gerrit Code Review with GitHub pluginGerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub pluginLuca Milanesio
15K views31 slides
Git & GitLab by
Git & GitLabGit & GitLab
Git & GitLabGaurav Wable
858 views34 slides
Gerrit Code Review v3.2 and v3.3 by
Gerrit Code Review v3.2 and v3.3Gerrit Code Review v3.2 and v3.3
Gerrit Code Review v3.2 and v3.3Luca Milanesio
142 views25 slides
Introducing GitLab (September 2018) by
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Noa Harel
1.3K views44 slides
What's New for GitLab CI/CD February 2020 by
What's New for GitLab CI/CD February 2020What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020Noa Harel
636 views15 slides
Using Git/Gerrit and Jenkins to Manage the Code Review Processord by
Using Git/Gerrit and Jenkins to Manage the Code Review ProcessordUsing Git/Gerrit and Jenkins to Manage the Code Review Processord
Using Git/Gerrit and Jenkins to Manage the Code Review ProcessordMarc Karasek
3.8K views17 slides

What's hot(20)

Gerrit Code Review with GitHub plugin by Luca Milanesio
Gerrit Code Review with GitHub pluginGerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub plugin
Luca Milanesio15K views
Gerrit Code Review v3.2 and v3.3 by Luca Milanesio
Gerrit Code Review v3.2 and v3.3Gerrit Code Review v3.2 and v3.3
Gerrit Code Review v3.2 and v3.3
Luca Milanesio142 views
Introducing GitLab (September 2018) by Noa Harel
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)
Noa Harel1.3K views
What's New for GitLab CI/CD February 2020 by Noa Harel
What's New for GitLab CI/CD February 2020What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020
Noa Harel636 views
Using Git/Gerrit and Jenkins to Manage the Code Review Processord by Marc Karasek
Using Git/Gerrit and Jenkins to Manage the Code Review ProcessordUsing Git/Gerrit and Jenkins to Manage the Code Review Processord
Using Git/Gerrit and Jenkins to Manage the Code Review Processord
Marc Karasek3.8K views
Zero-Downtime Gerrit Code Review Upgrade by Luca Milanesio
Zero-Downtime Gerrit Code Review UpgradeZero-Downtime Gerrit Code Review Upgrade
Zero-Downtime Gerrit Code Review Upgrade
Luca Milanesio3.4K views
GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal) by Pedro Moreira da Silva
GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal)GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal)
GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal)
What's New in GitLab and Software Development Trends by Noa Harel
What's New in GitLab and Software Development TrendsWhat's New in GitLab and Software Development Trends
What's New in GitLab and Software Development Trends
Noa Harel899 views
Gerrit linuxtag2011 by thkoch
Gerrit linuxtag2011Gerrit linuxtag2011
Gerrit linuxtag2011
thkoch4K views
Self Hosted Web-based GIT Repository Managers by Purav Gandhi
Self Hosted Web-based GIT Repository ManagersSelf Hosted Web-based GIT Repository Managers
Self Hosted Web-based GIT Repository Managers
Purav Gandhi1.6K views
Introducing GitLab (September 2018) by Noa Harel
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)
Noa Harel223 views
Egit democamp-darmstadt-2011-06-21 by Stefan Lay
Egit democamp-darmstadt-2011-06-21Egit democamp-darmstadt-2011-06-21
Egit democamp-darmstadt-2011-06-21
Stefan Lay940 views
How Git and Gerrit make you more productive by Karsten Dambekalns
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productive
Karsten Dambekalns10.5K views
Version control with git by Purav Gandhi
Version control with gitVersion control with git
Version control with git
Purav Gandhi664 views
Flex and .NET Integration by icaraion
Flex and .NET IntegrationFlex and .NET Integration
Flex and .NET Integration
icaraion789 views
Gerrit jenkins-big data-continuous-delivery by Luca Milanesio
Gerrit jenkins-big data-continuous-deliveryGerrit jenkins-big data-continuous-delivery
Gerrit jenkins-big data-continuous-delivery
Luca Milanesio1.7K views

Viewers also liked

Large Scale Development with Git and Gerrit - EclipseCon Europe 2012 by
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012msohn
2.7K views24 slides
0601031 business opportunities in afganistan.doc by
0601031 business opportunities in afganistan.doc0601031 business opportunities in afganistan.doc
0601031 business opportunities in afganistan.docSupa Buoy
1.6K views62 slides
Behavioural Meetup: Professor Adam Joinson by
Behavioural Meetup: Professor Adam Joinson Behavioural Meetup: Professor Adam Joinson
Behavioural Meetup: Professor Adam Joinson behavioural
428 views35 slides
Question 5: How did you attract/address your audience? by
Question 5: How did you attract/address your audience? Question 5: How did you attract/address your audience?
Question 5: How did you attract/address your audience? Joei Hen
161 views9 slides
0601008 prospective market potential for corporate by
0601008 prospective market potential for corporate0601008 prospective market potential for corporate
0601008 prospective market potential for corporateSupa Buoy
395 views77 slides
Evaluation Question 2 by
Evaluation Question 2 Evaluation Question 2
Evaluation Question 2 Joei Hen
322 views9 slides

Viewers also liked(20)

Large Scale Development with Git and Gerrit - EclipseCon Europe 2012 by msohn
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
msohn2.7K views
0601031 business opportunities in afganistan.doc by Supa Buoy
0601031 business opportunities in afganistan.doc0601031 business opportunities in afganistan.doc
0601031 business opportunities in afganistan.doc
Supa Buoy1.6K views
Behavioural Meetup: Professor Adam Joinson by behavioural
Behavioural Meetup: Professor Adam Joinson Behavioural Meetup: Professor Adam Joinson
Behavioural Meetup: Professor Adam Joinson
behavioural428 views
Question 5: How did you attract/address your audience? by Joei Hen
Question 5: How did you attract/address your audience? Question 5: How did you attract/address your audience?
Question 5: How did you attract/address your audience?
Joei Hen161 views
0601008 prospective market potential for corporate by Supa Buoy
0601008 prospective market potential for corporate0601008 prospective market potential for corporate
0601008 prospective market potential for corporate
Supa Buoy395 views
Evaluation Question 2 by Joei Hen
Evaluation Question 2 Evaluation Question 2
Evaluation Question 2
Joei Hen322 views
弹幕视频网站用户使用研究 by chencheng0614
弹幕视频网站用户使用研究弹幕视频网站用户使用研究
弹幕视频网站用户使用研究
chencheng0614669 views
0601018 survey of small & medium ad agencies by Supa Buoy
0601018 survey of small & medium ad agencies0601018 survey of small & medium ad agencies
0601018 survey of small & medium ad agencies
Supa Buoy235 views
The mindmapbook by sooner123
The mindmapbookThe mindmapbook
The mindmapbook
sooner123360 views
0601060 equity analysis of telecom sector by Supa Buoy
0601060 equity analysis of telecom sector0601060 equity analysis of telecom sector
0601060 equity analysis of telecom sector
Supa Buoy722 views
Circuits elèctrics: Manel i Dèlia by lagessera
Circuits elèctrics: Manel i DèliaCircuits elèctrics: Manel i Dèlia
Circuits elèctrics: Manel i Dèlia
lagessera607 views
Why Do Men Commit Suicide More Than Women? by Peter Orszag
Why Do Men Commit Suicide More Than Women?Why Do Men Commit Suicide More Than Women?
Why Do Men Commit Suicide More Than Women?
Peter Orszag1.2K views
Entertainment march-220313-130709195956-phpapp01 by Supa Buoy
Entertainment march-220313-130709195956-phpapp01Entertainment march-220313-130709195956-phpapp01
Entertainment march-220313-130709195956-phpapp01
Supa Buoy216 views
Circuits i maquines:Eric i Maria by lagessera
Circuits i maquines:Eric i MariaCircuits i maquines:Eric i Maria
Circuits i maquines:Eric i Maria
lagessera478 views
0601085 perceptible analysis of depository services by Supa Buoy
0601085 perceptible analysis of depository services0601085 perceptible analysis of depository services
0601085 perceptible analysis of depository services
Supa Buoy392 views
личный кабинет учителя by nioleska
личный кабинет учителяличный кабинет учителя
личный кабинет учителя
nioleska342 views
Виховання патріотичних цінностей – пріоритетне завдання сучасного позашкілля by Максим Пишняк
Виховання патріотичних цінностей – пріоритетне завдання сучасного позашкілляВиховання патріотичних цінностей – пріоритетне завдання сучасного позашкілля
Виховання патріотичних цінностей – пріоритетне завдання сучасного позашкілля

Similar to You shall not pass - Control your code quality gates with a wizard.

Optimize Your Enterprise Git Webinar by
Optimize Your Enterprise Git WebinarOptimize Your Enterprise Git Webinar
Optimize Your Enterprise Git WebinarCollabNet
753 views39 slides
Git Gerrit Mit Teamforge by
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeCollabNet
1.2K views55 slides
Static Analysis Tools and Frameworks: Overcoming a Dangerous Blind Spot by
Static Analysis Tools and Frameworks: Overcoming a Dangerous Blind SpotStatic Analysis Tools and Frameworks: Overcoming a Dangerous Blind Spot
Static Analysis Tools and Frameworks: Overcoming a Dangerous Blind SpotCigital
788 views27 slides
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to... by
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...Datacratic
1.4K views31 slides
Chromium contribution by
Chromium contributionChromium contribution
Chromium contributionGyuyoung Kim
317 views25 slides
Webinar : SVN to GIT Migration by
Webinar : SVN to GIT Migration Webinar : SVN to GIT Migration
Webinar : SVN to GIT Migration Newt Global Consulting LLC
590 views20 slides

Similar to You shall not pass - Control your code quality gates with a wizard.(20)

Optimize Your Enterprise Git Webinar by CollabNet
Optimize Your Enterprise Git WebinarOptimize Your Enterprise Git Webinar
Optimize Your Enterprise Git Webinar
CollabNet753 views
Git Gerrit Mit Teamforge by CollabNet
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
CollabNet1.2K views
Static Analysis Tools and Frameworks: Overcoming a Dangerous Blind Spot by Cigital
Static Analysis Tools and Frameworks: Overcoming a Dangerous Blind SpotStatic Analysis Tools and Frameworks: Overcoming a Dangerous Blind Spot
Static Analysis Tools and Frameworks: Overcoming a Dangerous Blind Spot
Cigital788 views
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to... by Datacratic
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
Datacratic1.4K views
Chromium contribution by Gyuyoung Kim
Chromium contributionChromium contribution
Chromium contribution
Gyuyoung Kim317 views
Amazon CI-CD Practices for Software Development Teams by Amazon Web Services
Amazon CI-CD Practices for Software Development Teams Amazon CI-CD Practices for Software Development Teams
Amazon CI-CD Practices for Software Development Teams
Amazon Web Services1.8K views
Git/Gerrit with TeamForge by CollabNet
Git/Gerrit with TeamForgeGit/Gerrit with TeamForge
Git/Gerrit with TeamForge
CollabNet3.3K views
Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ... by Hyperleger Tokyo Meetup
 Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ... Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
Introducing CollabNet TeamForge® 8.0 by CollabNet
Introducing CollabNet TeamForge® 8.0Introducing CollabNet TeamForge® 8.0
Introducing CollabNet TeamForge® 8.0
CollabNet1.4K views
Difference between Github vs Gitlab vs Bitbucket by jeetendra mandal
Difference between Github vs Gitlab vs BitbucketDifference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs Bitbucket
jeetendra mandal351 views
Salesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines by Abhinav Gupta
Salesforce CI (Continuous Integration) - SFDX + Bitbucket PipelinesSalesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
Salesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
Abhinav Gupta3K views
Open up your platform with Open Source and GitHub by Scott Graham
Open up your platform with Open Source and GitHubOpen up your platform with Open Source and GitHub
Open up your platform with Open Source and GitHub
Scott Graham1.3K views
Ship code like a keptn by Rob Jahn
Ship code like a keptnShip code like a keptn
Ship code like a keptn
Rob Jahn432 views
Bitbucket as a code server and pmt by malike4u
Bitbucket as a code server and pmt Bitbucket as a code server and pmt
Bitbucket as a code server and pmt
malike4u409 views
Don't Let Git Get Your Goat! by CollabNet
Don't Let Git Get Your Goat!Don't Let Git Get Your Goat!
Don't Let Git Get Your Goat!
CollabNet1.3K views
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018 by Amazon Web Services
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Amazon Web Services1.7K views
How Reddit Scales to 1B+ Video Views a Month Using AWS (CTD320) - AWS re:Inve... by Amazon Web Services
How Reddit Scales to 1B+ Video Views a Month Using AWS (CTD320) - AWS re:Inve...How Reddit Scales to 1B+ Video Views a Month Using AWS (CTD320) - AWS re:Inve...
How Reddit Scales to 1B+ Video Views a Month Using AWS (CTD320) - AWS re:Inve...

Recently uploaded

SOA PPT ON SEA TURTLES.pptx by
SOA PPT ON SEA TURTLES.pptxSOA PPT ON SEA TURTLES.pptx
SOA PPT ON SEA TURTLES.pptxEuniceOseiYeboah
9 views18 slides
HITCON CISO Summit 2023 - Closing by
HITCON CISO Summit 2023 - ClosingHITCON CISO Summit 2023 - Closing
HITCON CISO Summit 2023 - ClosingHacks in Taiwan (HITCON)
178 views33 slides
OSMC 2023 | Icinga for Windows – Age of PowerShell by Christian Stein by
OSMC 2023 | Icinga for Windows – Age of PowerShell by Christian SteinOSMC 2023 | Icinga for Windows – Age of PowerShell by Christian Stein
OSMC 2023 | Icinga for Windows – Age of PowerShell by Christian SteinNETWAYS
8 views35 slides
OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un... by
OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un...OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un...
OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un...NETWAYS
11 views19 slides
Yin Sun - Shell by
Yin Sun - ShellYin Sun - Shell
Yin Sun - ShellDutch Power
62 views17 slides
falsettos by
falsettosfalsettos
falsettosRenzoCalandra
6 views48 slides

Recently uploaded(20)

OSMC 2023 | Icinga for Windows – Age of PowerShell by Christian Stein by NETWAYS
OSMC 2023 | Icinga for Windows – Age of PowerShell by Christian SteinOSMC 2023 | Icinga for Windows – Age of PowerShell by Christian Stein
OSMC 2023 | Icinga for Windows – Age of PowerShell by Christian Stein
NETWAYS8 views
OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un... by NETWAYS
OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un...OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un...
OSMC 2023 | IGNITE: Serving Server-Side WASM with Web Awareness with NGINX Un...
NETWAYS11 views
OSMC 2023 | Know your data: The stats behind your alerts by Dave McAllister by NETWAYS
OSMC 2023 | Know your data: The stats behind your alerts by Dave McAllisterOSMC 2023 | Know your data: The stats behind your alerts by Dave McAllister
OSMC 2023 | Know your data: The stats behind your alerts by Dave McAllister
NETWAYS10 views
Speaking with confidence-converted.pdf by Abdul salam
Speaking with confidence-converted.pdfSpeaking with confidence-converted.pdf
Speaking with confidence-converted.pdf
Abdul salam 16 views
BLogSite (Web Programming) (1).pdf by Fiverr
BLogSite (Web Programming) (1).pdfBLogSite (Web Programming) (1).pdf
BLogSite (Web Programming) (1).pdf
Fiverr11 views
Post-event report intro session-1.docx by RohitRathi59
Post-event report intro session-1.docxPost-event report intro session-1.docx
Post-event report intro session-1.docx
RohitRathi5912 views
231121 SP slides - PAS workshop November 2023.pdf by PAS_Team
231121 SP slides - PAS workshop November 2023.pdf231121 SP slides - PAS workshop November 2023.pdf
231121 SP slides - PAS workshop November 2023.pdf
PAS_Team150 views
Christan van Dorst - Hyteps by Dutch Power
Christan van Dorst - HytepsChristan van Dorst - Hyteps
Christan van Dorst - Hyteps
Dutch Power65 views
Helko van den Brom - VSL by Dutch Power
Helko van den Brom - VSLHelko van den Brom - VSL
Helko van den Brom - VSL
Dutch Power63 views
Roozbeh Torkzadeh - TU Eindhoven by Dutch Power
Roozbeh Torkzadeh - TU EindhovenRoozbeh Torkzadeh - TU Eindhoven
Roozbeh Torkzadeh - TU Eindhoven
Dutch Power62 views
OSMC 2023 | IGNITE: Metrics, Margins, Mutiny – How to make your SREs (not) ru... by NETWAYS
OSMC 2023 | IGNITE: Metrics, Margins, Mutiny – How to make your SREs (not) ru...OSMC 2023 | IGNITE: Metrics, Margins, Mutiny – How to make your SREs (not) ru...
OSMC 2023 | IGNITE: Metrics, Margins, Mutiny – How to make your SREs (not) ru...
NETWAYS7 views
OSMC | SNMP Monitoring at scale by Rocco Pezzani & Thomas Gelf by NETWAYS
OSMC | SNMP Monitoring at scale by Rocco Pezzani & Thomas Gelf OSMC | SNMP Monitoring at scale by Rocco Pezzani & Thomas Gelf
OSMC | SNMP Monitoring at scale by Rocco Pezzani & Thomas Gelf
NETWAYS11 views

You shall not pass - Control your code quality gates with a wizard.

  • 1. Copyright ©2015 CollabNet, Inc. All Rights Reserved.Gerrit User Summit - Mountain View CA November 2015 Code Quality Gate Wizard Create your own submit rules in less than three minutes. Eryk Szymanski Potsdam Engineering Office CollabNet
  • 2. Copyright ©2015 CollabNet, Inc. All Rights Reserved.2
  • 3. Copyright ©2015 CollabNet, Inc. All Rights Reserved.3 CollabNet TeamForge - ALM Platform
  • 4. Copyright ©2015 CollabNet, Inc. All Rights Reserved.4 CollabNet TeamForge - Integrated Tools
  • 5. Copyright ©2015 CollabNet, Inc. All Rights Reserved.5 Code Quality Gate Wizard – The Big Picture
  • 6. Copyright ©2015 CollabNet, Inc. All Rights Reserved.6 Code Quality Gate Wizard - Motivation - This is reasonable and works very well - But wait a second, do our customers agree? - OK. We will write our own rules.pl file…
  • 7. Copyright ©2015 CollabNet, Inc. All Rights Reserved.7 Code Quality Gate Wizard - Motivation …in Prolog. - In what??? - In Prolog. Look: ??? - Oh nice. I would rather go fishing instead. :)
  • 8. Copyright ©2015 CollabNet, Inc. All Rights Reserved.8 Code Quality Gate Wizard - Our Goal Easy: - Easy to create, test and deploy the rules - Minimize amount of code needed (UI/Wizard) Provide an easy and non-invasive and complete way to define submit rules for Gerrit projects. Non-invasive: - Compatible with rules.pl file - Do not change the Gerrit core, but plugin is Ok Complete: - Everything what's in Submit Rules Cookbook - And more :)
  • 9. Copyright ©2015 CollabNet, Inc. All Rights Reserved.9 Code Quality Gate Wizard - Two Components ➔ Backend: Gerrit Workflow plugin Provides just one prolog predicate: cn.workflow which takes XML input that defines submit rules with filters and voting conditions and process them. This fits in the rules.pl file. ➔ Frontent: GitEye (Free CollabNet Git Client) • provides the UI to generate the rules file • allows to test your rules against a Gerrit change and deploy it to the selected project • lets you generate the rules file from an existing change • contains predefined examples
  • 10. Copyright ©2015 CollabNet, Inc. All Rights Reserved.10 Code Quality Gate Wizard – Submit Rule ➔ Display name ➔ Actions: if satisfied or not satisfied: allow, block or ignore ➔ Filters: • Change details: owner, branch, topic • Commit details: author, commiter, msg, delta • Commit stats: min/max lines inserted/deleted, min/max files modified • User details: current user, ignore (non-)author/ (non-)commiter • Voting Condition: • Voting Filters: Voter, Vote count/sum/range, Ignore (non-)author, Ignore (non-)commiter
  • 11. Copyright ©2015 CollabNet, Inc. All Rights Reserved.11 Code Quality Gates Wizard - Algorithm
  • 12. Copyright ©2015 CollabNet, Inc. All Rights Reserved.12 GitEye – Free Git Client From CollabNet http://www.collab.net/products/GitEye
  • 13. Copyright ©2015 CollabNet, Inc. All Rights Reserved.Copyright ©2015 CollabNet, Inc. All Rights Reserved. Demo Code Quality Gates in Action
  • 14. Copyright ©2015 CollabNet, Inc. All Rights Reserved.14 Code Quality Gate Wizard – How to launch
  • 15. Copyright ©2015 CollabNet, Inc. All Rights Reserved.15 Code Quality Gate Wizard – Templates
  • 16. Copyright ©2015 CollabNet, Inc. All Rights Reserved.16 Code Quality Gate Wizard – Built In Test Mode
  • 17. Copyright ©2015 CollabNet, Inc. All Rights Reserved.17 Code Quality Gate Wizard – From Existing Changes
  • 18. Copyright ©2015 CollabNet, Inc. All Rights Reserved.18 Code Quality Gate Wizard – Great Flexibility
  • 19. Copyright ©2015 CollabNet, Inc. All Rights Reserved.19 Prezi on Quality Gates for Gerrit http://prezi.com/2s2ukhpg53or/?utm_campaign=share&utm_medium=copy 4-Eye-Principle Illustrated http://prezi.com/sbfm_jtuohel/?utm_campaign=share&utm_medium=copy&rc=ex0share Git Blogs (3 part series) http://blogs.collab.net/teamforge/you-shall-not-pass-control-your-code-quality-gates-with-a-wizard-part-iii Learn More
  • 20. Copyright ©2015 CollabNet, Inc. All Rights Reserved.Copyright ©2015 CollabNet, Inc. All Rights Reserved. Thank you very much Q&A Any Questions? Email: eszymanski@collab.net