Codacy Credo

Codacy Badge CircleCI Docker Version

Tooling & Docker Definition for running Credo on Codacy

Usage

build the docker image

./build.sh codacy/codacy-credo latest

Run on a project

docker run -it -v  $srcDir:/src codacy/codacy-credo

Regenerate docs:

mix codacy.credo.generate

If you want to force a version of Elixir, update it on the .elixir-version file. If you want to force a version of Credo, update it on mix.exs

Notes

This has not been tested with custom checks. They probably won't work or will have issues with Codacy.

This project has only been tested with:

  • Elixir v1.7.3
  • Credo v1.0.0

Testing

There are two test suites that can be run on this project. The first is Elixir Unit Tests.

mix test

The Second test suite is the Codacy Plugin Test which must be run against the built docker image.

# In codacy-credo
./build.sh codacy/codacy-credo latest

# in codacy-plugins-test
sbt "runMain codacy.plugins.DockerTest all codacy/codacy-credo:latest"

Docs

Tool Developer Guide

Tool Developer Guide - Using Scala

Test

We use the codacy-plugins-test to test our external tools integration. You can follow the instructions there to make sure your tool is working as expected.

What is Codacy

Codacy is an Automated Code Review Tool that monitors your technical debt, helps you improve your code quality, teaches best practices to your developers, and helps you save time in Code Reviews.

Among Codacy’s features

  • Identify new Static Analysis issues
  • Commit and Pull Request Analysis with GitHub, BitBucket/Stash, GitLab (and also direct git repositories)
  • Auto-comments on Commits and Pull Requests
  • Integrations with Slack, HipChat, Jira, YouTrack
  • Track issues in Code Style, Security, Error Proneness, Performance, Unused Code and other categories

Codacy also helps keep track of Code Coverage, Code Duplication, and Code Complexity.

Codacy supports PHP, Python, Ruby, Java, JavaScript, and Scala, among others.

Free for Open Source

Codacy is free for Open Source projects.