Extending¶
Zazu has 4 classes of plugins:
- BuildServer (aka CI or Continuous Integration)
- IssueTracker
- CodeReviewer
- Styler
Creating a new plugin¶
Zazu uses the straight.plugin framework. Creating a
new Zazu plugin is as easy as subclassing one of the base plugin types and installing the module containing the subclass
to the zazu.plugin namespace.
Build Servers¶
The build server interface exists so zazu can setup a continuous integration server to automatically build your repo when you make changes. Zazu ships with support built in for JetBrains TeamCity.
Issue Trackers¶
Zazu uses the IssueTracer interface to create new issues and ensure that new branches are associated with an issue. Zazu ships with support built in for Atlassian JIRA and GitHub issues.
Code Reviewers¶
Zazu uses the CodeReviewer interface to create new code reviews and ensure that code reviews are linked to IssueTracker issues. Zazu ships with support built in for GitHub code reviews.
Code Stylers¶
Zazu uses the Styler interface to check code style, prevent commits when there are style violations and fix these violations. Zazu ships with support built in for astyle, clang-format and autopep8.