As part of my open source development tooling investigation, I came across Coverity Scan Static Analysis. And thanks to Arkfps’ post I could automate the process of submitting the results. And now Appveyor includes Coverity on it’s images. But I decided to take his work one step further, and so I built a small utility to compress and submit the results.

PublishCoverity is available on NuGet, and has two use cases: Compress and Publish.

Compress takes a directory and compresses it to produce an output zip file.

Signature:
    PublishCoverity compress [-o <file>] [-i <folder>] [--overwrite] [--dryrun]

Example:
    PublishCoverity compress -o results.zip -i cov-int

Publish takes that file and some of your project data and posts it off to Coverity for you.

Signature:
    PublishCoverity publish -t <token> -e <email> [-r <name>] [-z <file>] [-d <desc>] [--codeVersion <version>] [--dryrun] [--nologo]
    
Example:
    PublishCoverity publish -t COVERITYTOKEN -e example@example.com -r MyUser/MyProject -z results.zip -d "my project" --codeVersion 0.1.2.3

Although this is still evolving, the gist of what is above will be available to compress and/or publish your results to Coverity Scan. The idea is that anything that I can reasonably determine for you I will try and make optional. Such as your repository name from the AppVeyor Build Environment variables.

I’ve already had a request to add some guards around the results to ensure they are valid and complete before sending, but right now version 0.9 is available on NuGet for you to install and use, and the source is available on GitHub All feedback and features requests welcome as GitHub issues, or just comment on this post.

Enjoy!