8.2.9. FAQ

Q: How do I make CI fail when new issues are found?

A: Configure /Results/Dashboard/limit_violations in your axivion_config:

  • Set failure_exit_code to specify the exit code

  • Set failure_message for diagnostic output

  • Add limits for each issue category to fail on new violations

For more advanced scenarios (e.g., counting new violations between analyses), use the dashboard’s HTTP JSON API /api/projects/{projectName}/issues to query issue deltas between the latest and previous analyses, then apply custom post-processing scripts.

Q: Why are Git clones consuming disk space in my database directory?

A: The sourceserver_gitdir configuration creates one Git clone per Axivion project, which is inefficient.

Solution: In version 7.8+, remove the sourceserver_gitdir setting. Axivion will automatically detect the repository and create a single shared clone instead of one per project:

  1. Remove sourceserver_gitdir from the Git configuration

  2. The next analysis will create a shared clone in the new location

  3. Once all projects are updated, you can remove the old project-specific clones

Dashboard: When using database_mode=managed_upload (formerly upload=true), you also get automatic cleanup of old databases when Automatic Project Cleanup is enabled in Settings → General.

Q: How do I switch from GitHub to a different Git provider (e.g., Gitlab)?

A: Axivion does not distinguish between different Git repository providers. During analysis, Axivion runs git remote -v to identify the repository URL (including any tokens). This information is stored in the database. For the dashboard to access the repository, the user running the dashboard needs proper credentials via SSH keys or similar mechanisms.

Note: Username/password authentication is not supported. If you’re using managed database mode (upload=true), you don’t need to manage repository clones manually in most cases.