- Source control integration (GitHub, Bitbucket, Gitea, etc.)
- Build tool support (Maven, Gradle, Node.js toolchains)
- Quality gates (code coverage, static analysis, linting)
- Notifications (Slack, Email, PagerDuty)
- Cloud and infrastructure integration (AWS, GCP, Azure)
- Scalability support (distributed builds, worker nodes)


- Jenkins plugins are delivered as Java archive files with
.hpior.jpiextensions. Historically,.hpicomes from the Hudson plugin format;.jpiis the Jenkins plugin format. Both are ZIP/JAR-based archives containing compiled code, resources, and metadata (manifest and plugin descriptors). - If both
.hpiand.jpicopies of the same plugin exist, the.jpiwill typically take precedence. - Installed plugins are stored in the Jenkins home
pluginsdirectory. TheJENKINS_HOMEenvironment variable points to this location (commonly/var/lib/jenkins/pluginson many Linux distributions).
- The table below maps common categories to typical plugins and their primary use cases.
| Category | Common Plugins | Typical Usage |
|---|---|---|
| Source Control | git, github, bitbucket | Checkout code from Git repositories and integrate PR/status checks. |
| Pipeline & UX | workflow-aggregator (Pipeline), blueocean | Author declarative or scripted pipelines; modern visualization. |
| Build Tools | maven-plugin, gradle-plugin, nodejs | Run Maven/Gradle/Node builds and publish artifacts. |
| Test & Coverage | junit, jacoco, cobertura | Publish test results and code coverage reports. |
| Static Analysis | sonar, checkstyle, spotbugs | Integrate static analysis and quality gates. |
| Notifications | slack, email-ext, pagerduty | Post build status updates to chat, email, or incident systems. |
| Credentials & Secrets | credentials, credentials-binding | Manage credentials and inject them into pipeline steps securely. |
| Container & Cloud | docker-plugin, kubernetes, amazon-ecs | Build/push Docker images and run agents in cloud/container providers. |
| Authentication & Authorization | ldap, matrix-auth | Integrate external auth and granular role-based access. |
- Install suggested plugins — a curated set of common plugins (Git, Pipeline, Maven/Gradle, etc.) useful for most teams.
- Select plugins to install — pick only the plugins you need.

If you’re unsure which plugins you need, choosing “Install suggested plugins” provides a sensible default set that covers common CI/CD workflows (Git, Pipeline, and basic build tool support).
- Install new plugins from the Update Center or upload
.hpi/.jpifiles. - Update installed plugins when new versions become available.
- Enable/disable plugins or uninstall those you no longer need.
- Review the plugin dependency tree and plugin update notifications.
Uninstalling a plugin without checking dependencies or testing can break jobs and other plugins. Always review the plugin dependency tree and test plugin changes in a staging Jenkins before applying to production.

- Keep plugins up to date to receive bug fixes and security patches, but test updates in a staging environment first.
- Prefer widely used, actively maintained plugins to reduce risk.
- When upgrading Jenkins core, check plugin compatibility and the Update Center release notes.
- Automate plugin management (version pinning and provisioning) where possible, for example via:
- Configuration management tools (Ansible, Chef, Puppet)
- Infrastructure as code (baked images or containers with preinstalled plugins)
- Jenkins Configuration-as-Code (JCasC) for reproducible plugin configuration