0.01
No commit activity in last 3 years
No release in over 3 years
Checks Atlassian Stash pull requests and comments on issues in added code
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

 Project Readme

Face Control

Gem Version Travis CI Coveralls

Run static analysis of pull requests in Bitbucket Server (formerly Stash) and comment on problems in added lines.

Currently supports RuboCop and CoffeeLint and also checks for TODOs and FIXMEs.

Inspired by Hound.

Installation

gem install face_control

You also need to have CoffeeLint installed and available in PATH.

Usage

face-control <project> <repository> <pull_request_id>

It's natural to run this on a continuous integration server (see “Example” below).

If you don't want to receive RuboCop comments with certain severity level, pass the severity in the --skip-severity option like so:

face-control --skip-severity convention <project> <repository> <pull_request_id>

Instead of --skip-severity you can use just -S.

You can also pass multiple severity levels as a comma-separated list:

face-control -S convention,refactor <project> <repository> <pull_request_id>

face-control uses the same configuration file (~/.stashconfig.yml) as the official Bitbucket Server Command Line Tools to connect to your Stash instance.

Example

Here's a Jenkins project setup as an example:

Source Code Management → Git → Repositories → Refspec:

+refs/pull-requests/*:refs/remotes/origin/pull-requests/*

It makes Jenkins fetch otherwise ignored Stash-created branches.

Source Code Management → Git → Branches to build → Branch Specifier:

origin/pull-requests/*/merge

Merge results of open non-conflicting pull requests.

Build → Execute shell → Command:

export PULL_REQUEST_ID=`echo $GIT_BRANCH | cut -d / -f 3`

gem install rubocop face_control
npm install -g coffeelint

face-control <project> <repository> $PULL_REQUEST_ID

Etymology

Face control in Wikipedia.

Sponsored by FunBox