Skip to content
This repository has been archived by the owner on Jan 12, 2023. It is now read-only.

Recommended pre push hook

Jeff Boek edited this page Jul 23, 2018 · 4 revisions

If you want to reduce your PR turn-around time, I'd recommend adding a pre-push hook: this script will stop a push if the unit tests or linters fail, finding the failures before it hits TaskCluster (which takes forever to dig through the logs):

#!/bin/sh

./gradlew -q \
        checkstyle \
        ktlint \
        pmd \
        detektCheck \
        testFocusWebviewUniversalDebug


# Tasks omitted because they take a long time to run:
# - unit test on all variants
# - UI tests
# - lint (compiles all variants)

To use it:

  1. Create a file with these ^ contents (exclude the "`") at <repo>/.git/hooks/pre-push
  2. Make it executable: chmod 755 <repo>/.git/hooks/pre-push

And it will run before pushes. Notes:

  • Run git push ... --no-verify to push without making the check
  • It takes ~30 seconds to run. If you think this hook takes too long, you can remove the unit test line and it becomes almost instant.
Clone this wiki locally