I have installed Jenkins plugins in two ways i.e. manually keeping the .hpi
file in Jenkins home directory, and installing from Jenkins front-end (Manage Jenkins > Manage Plugins).
What I notice here is when I install the plugin manually (downloaded as .hpi
file) it installed with extension .hpi
and while installing the plugin through Jenkins front-end I notice that plugin again installed as .jpi
.
But why? What is going on in the background? I know functionality won't change but it looks interesting to know.
HPI files mostly belong to Jenkins by Jenkins Community. HPI filename extension is associated with files containing plugins that are used by Jenkins, an open source automation server used in various steps of software development. These plugins extend Jenkins' capabilities.
Jenkins provides two methods for installing plugins on the controller: Using the "Plugin Manager" in the web UI. Using the Jenkins CLI install-plugin command.
There are over 1000 plugins available in the Jenkins plugins repository, but only a few of them can be considered essential.
Both are supposed to be identical to that extend that Jenkins is renaming hpi
to jpi
when you install it manually as you said.
The reason why you see both in your JENKINS_HOME is the order in which plugins are loaded when Jenkins boots up: plugin.jpi
gets precedence over plugin.hpi
in case both are present. This is the way the upload installation makes sure the uploaded version will override the existing one after the restart.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With