:linkattrs: = Plugins The Gerrit server functionality can be extended by installing plugins. [[installation]] == Plugin Installation Plugin installation is as easy as dropping the plugin jar into the `$site_path/plugins/` folder. It may take link:config-gerrit.html#plugins.checkFrequency[a few minutes] until the server picks up new and updated plugins. Due to caching, you might need to flush your browser cache after installing a plugin. Users will usually see the result within several minutes. Plugins can also be installed via link:rest-api-plugins.html#install-plugin[REST] and link:cmd-plugin-install.html[SSH]. [[development]] == Plugin Development How to develop plugins is described in the link:dev-plugins.html[ Plugin Development Guide]. If you want to share your plugin under the link:licenses.html#Apache2_0[ Apache License 2.0] you can host your plugin development on the link:https://gerrit-review.googlesource.com[gerrit-review,role=external,window=_blank] Gerrit Server. You can request the creation of a new Project by email to the link:https://groups.google.com/forum/#!forum/repo-discuss[Gerrit mailing list,role=external,window=_blank]. You would be assigned as project owner of the new plugin project so that you can submit changes on your own. It is the responsibility of the project owner to maintain the plugin, e.g. to make sure that it works with new Gerrit versions and to create stable branches for old releases. [[core-plugins]] == Core Plugins link:dev-core-plugins.html[Core plugins] are packaged within the Gerrit war file and can easily be installed during the link:pgm-init.html[ Gerrit initialization]. Note that the documentation and configuration links in the list below are to the plugins' master branch. Please refer to the appropriate branch or revision for the Gerrit version you are using. [[codemirror-editor]] === codemirror-editor CodeMirror plugin for polygerrit. link:https://gerrit-review.googlesource.com/admin/repos/plugins/codemirror-editor[ Project,role=external,window=_blank] | [[commit-message-length-validator]] === commit-message-length-validator This plugin checks the length of a commit’s commit message subject and message body, and reports warnings or errors to the git client if the lengths are exceeded. link:https://gerrit-review.googlesource.com/admin/repos/plugins/commit-message-length-validator[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/commit-message-length-validator/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/commit-message-length-validator/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[delete-project]] === delete-project Provides the ability to delete a project. link:https://gerrit-review.googlesource.com/admin/repos/plugins/delete-project[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/delete-project/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/delete-project/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[download-commands]] === download-commands This plugin defines commands for downloading changes in different download schemes (for downloading via different network protocols). link:https://gerrit-review.googlesource.com/admin/repos/plugins/download-commands[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/download-commands/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/download-commands/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[gitiles]] === gitiles Plugin running Gitiles alongside a Gerrit server. link:https://gerrit-review.googlesource.com/admin/repos/plugins/gitiles[ Project,role=external,window=_blank] [[hooks]] === hooks This plugin runs server-side hooks on events. link:https://gerrit-review.googlesource.com/admin/repos/plugins/hooks[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/hooks/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/hooks/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[plugin-manager]] === plugin-manager This plugins provides an initial wizard to discover and install Gerrit plugins. Per default GerritForge CI is used to download the plugin artifacts from, but this can be changed per plugin configuration. link:https://gerrit-review.googlesource.com/admin/repos/plugins/plugin-manager[ Project,role=external,window=_blank] link:https://gerrit.googlesource.com/plugins/plugin-manager/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] link:https://gerrit.googlesource.com/plugins/plugin-manager/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[replication]] === replication This plugin can automatically push any changes Gerrit Code Review makes to its managed Git repositories to another system. Usually this would be configured to provide mirroring of changes, for warm-standby backups, or a load-balanced public mirror farm. link:https://gerrit-review.googlesource.com/admin/repos/plugins/replication[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/replication/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/replication/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[reviewnotes]] === reviewnotes Stores review information for Gerrit changes in the `refs/notes/review` branch. link:https://gerrit-review.googlesource.com/admin/repos/plugins/reviewnotes[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/reviewnotes/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] [[singleusergroup]] === singleusergroup This plugin provides a group per user. This is useful to assign access rights directly to a single user, since in Gerrit access rights can only be assigned to groups. [[webhooks]] === webhooks This plugin allows to propagate Gerrit events to remote http endpoints. link:https://gerrit-review.googlesource.com/admin/repos/plugins/webhooks[ Project,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/webhooks/+doc/master/src/main/resources/Documentation/about.md[ Documentation,role=external,window=_blank] | link:https://gerrit.googlesource.com/plugins/webhooks/+doc/master/src/main/resources/Documentation/config.md[ Configuration,role=external,window=_blank] [[other-plugins]] == Other Plugins Besides core plugins there are many other Gerrit plugins available. This Gerrit home link:https://www.gerritcodereview.com/plugins.html[page for plugins] lists them. GERRIT ------ Part of link:index.html[Gerrit Code Review] SEARCHBOX ---------