From f76fee63ed9cb3a30d3c0c092d860b1cb93a481b Mon Sep 17 00:00:00 2001 From: Gerard Smyth <gerard.smyth@gmail.com> Date: Thu, 08 May 2014 13:09:30 -0400 Subject: [PATCH] Updated the SyndicationServlet to provide an additional option to return details of the tags in the repository instead of the commits. This uses a new 'ot' request parameter to indicate the object type of the content to return, which can be ither TAG or COMMIT. If this is not provided, then COMMIT is assumed to maintain backwards compatability. If tags are returned, then the paging parameters, 'l' and 'pg' are still supported, but searching options are currently ignored. --- src/site/plugins_overview.mkd | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/site/plugins_overview.mkd b/src/site/plugins_overview.mkd index 5cb60d0..43f3a12 100644 --- a/src/site/plugins_overview.mkd +++ b/src/site/plugins_overview.mkd @@ -15,14 +15,15 @@ The existing plugin mechanism is based on [pf4j](https://github.com/decebals/pf4j). Plugins are distributed as zip files and may include their runtime dependencies or may rely on the bundled dependencies of other plugins and/or Gitblit core. -The zip plugins are stored in `${baseFolder}/plugins` and are unpacked on startup into folders of the same name. +The plugin zip files are stored in `${baseFolder}/plugins` and are unpacked on startup into folders of the same name. A plugin defines it's metadata in the META-INF/MANIFEST.MF file: Plugin-Id: powertools Plugin-Description: Command and control Gitblit over SSH - Plugin-Class: com.gitblit.plugin.powertools.Powertools + Plugin-Class: com.gitblit.plugin.powertools.Plugin Plugin-Version: 1.2.0 + Plugin-Requires: 1.5.0 Plugin-Provider: gitblit.com In addition to extending Gitblit core, plugins can also define extension points that may be implemented by other plugins. Therefore a plugin may depend on other plugins. @@ -32,17 +33,17 @@ **NOTE:** The pf4j plugin framework relies on a javac apt processor to generate compile-time extension information, so be sure to enable apt processing in your build process. -#### Limitations of Dependencies & Requires +#### Limitations of Plugin Dependencies -Plugins may specify dependencies by ID, but may not specify specific versions of a dependency. The plugin registry allows you to specify a *requires* version of Gitblit, but this is not currently enforced. +Plugins may specify plugin dependencies by their ID, but they may not specify dependency versions. ### Managing Plugins Administrators may manage plugins through the `plugin` SSH dispatch command: - ssh host plugin + ssh host -l username -p 29418 plugin -Through this command interface plugins can be started, stopped, disabled, enabled, installed, uninstalled, listed, etc. +Through this command interface plugins can be started, stopped, disabled, enabled, installed, uninstalled, listed, etc. Each command is supports the `--help` argument which will guide you in understanding the options and usage of the command. ### Default Plugin Registry @@ -54,11 +55,11 @@ ### Contributing Plugins to the Default Registry -If you develop your own plugins that you want hosted by or linked in the default registry, open pull request for the registry repository. Any contributed binaries hosted in this repository must have Maven metadata and the SHA-1 & MD5 checksums. By default, Gitblit enforces checksum validation on all downloads. +If you develop your own plugins that you want hosted by or linked in the default registry, open a pull request for the registry repository. Any contributed binaries hosted in this repository must have Maven metadata and the SHA-1 & MD5 checksums. By default, Gitblit enforces checksum validation on all downloads. ### Hosting your Own Registry / Allowing Multiple Registries -The `plugins.json` file is parameterized with the `${self}` placeholder. This parameter is substituted on download with with the source URL of the registry file. This allows you to clone and serve your own copy of this git repository or just server your own `plugins.json` on your own network. +The `plugins.json` file is parameterized with the `${self}` placeholder. This parameter is substituted on download with with the source URL of the registry file. This allows you to clone and serve your own copy of this git repository or just serve your own `plugins.json` on your own network. Gitblit also supports loading multiple plugin registries. Just place another **properly formatted** `.json` file in `${baseFolder}/plugins` and Gitblit will load that as an additional registry. -- Gitblit v1.9.1