A command line utility to fetch a list of flaky tests from a CircleCI project.
CircleCI provides an "Insights" section for your workflows, but it's limited in how far back the data goes. circleci-flaky
allows you to specify up to 100 of the previous failed builds to check for recurring failed tests. It defaults to checking the master branch and displaying all failed tests, but both of these can be customized.
$ circleci-flaky -h
usage: circleci-flaky [-h] [--branch BRANCH] [--builds N] [--top N] project
Check a CircleCI project for flaky tests
positional arguments:
project the project to check
optional arguments:
-h, --help show this help message and exit
--branch BRANCH branch to check for failures (default: master)
--builds N number of failed builds to check (default: 30)
--top N limit results to the top N (default: all)
You can install circleci-flaky
via pip from PyPI.
# If you run both Python 2 and 3 on your system, use pip3
sudo pip3 install circleci-flaky
# If you only run Python 3, you can just use pip
sudo pip install circleci-flaky
Because this tool leverages the CircleCI API, you'll need a Personal API Token. Navigate to https://circleci.com/account/api and create a new token (note it down).
Run the command like so:
CIRCLECI_TOKEN=your_token circleci-flaky org/repo
If you want to persist the token for multiple runs in your terminal, export it instead:
export CIRCLECI_TOKEN=your_token
then run the command without specifying the token:
circleci-flaky org/repo
Contributors welcome!
Distributed under the terms of the MIT license, circleci-flaky
is free and open source software.
If you encounter any problems, please file an issue along with a detailed description.