Hudson-ci/Using Hudson/Pinned Plugins
|Hudson Continuous Integration Server|
|Mailing List • Forums • IRC • mattermost|
|Open • Help Wanted • Bug Day|
The notion of pinned plugins applies to plugins that are bundled with Hudson, such as the Subversion plugin.
Normally, when you upgrade/downgrade Hudson, its built-in plugins overwrite whatever versions of the plugins you currently have in $HUDSON_HOME. This ensures that you use the consistent version of those plugins. However, this behavior also means that those plugins can be never manually updated, as every time you start Hudson they'll be replaced by the bundled versions.
So when you manually update those bundled plugins, Hudson will mark those plugins as pinned to the particular version. Pinned plugins will never be overwritten by the bundled plugins during Hudson boot up. However, by definition, with pinned plugins you lose the benefit of automatic upgrade when you upgrade Hudson.
The plugin manager in Hudson allows you to explicitly unpin plugins. Every pinned plugin in the Plugin Manager Installed list has an Unpin button. Click it to unpin the file.
Under the covers: On the file system, Hudson creates an empty file called $HUDSON_HOME/plugins/plugin.hpi.pinned, where 'plugin' is the plugin name, to indicate the pinning. This file can also be manually created/deleted to control the pinning behavior.
Pinned files are a vestigual feature left over from the days when plugins were built in to Hudson. In Hudson 3.x, all visible plugins are external. Pinning has no effect on updates and can be safely ignored if you encounter it. In a future minor release of Hudson the feature will be removed.