Jenkins Curriculum
What Are Plugins
1. Introduction: The Smartphone and the App Store
Imagine you have just purchased the world's most advanced Smartphone. When you first take it out of the box, it is a beautiful piece of engineering. It has a screen, it has a battery, and it has a basic operating system. You can make phone calls and you can send text messages. But if that was all the phone could do, it wouldn't be very "Smart."
The true power of your phone comes from the App Store. If you want to navigate a new city, you download a GPS app. If you want to manage your finances, you download a banking app. If you want to play a game, you download a gaming app. Each app is a specialized "Plugin" that gives your phone a new Superpower. The phone provides the foundation, but the apps provide the functionality.
In the world of DevOps, Jenkins Plugins are those smartphone apps. Jenkins "Out of the Box" is very simple. It can run a basic shell script and manage a simple queue. But through the power of its 1,800+ Plugins, Jenkins can become anything you need it to be. It can become a Docker orchestrator, a Slack messenger, an AWS deployer, or a security scanner.
2. The Plugin Ecosystem
Jenkins is built on a "Pluggable Architecture." This means that almost every feature you see in the UI—the graphs, the credentials vault, the pipeline syntax itself—is actually a plugin.
Why is this good?
- Flexibility: You only install what you need. If you don't use Kubernetes, you don't waste memory on the Kubernetes plugin.
- Community Power: Thousands of developers around the world are constantly writing new plugins to support the latest AWS features and DevOps tools.
- Future-Proof: If a new technology arrives tomorrow (like a new cloud provider), someone will write a plugin for it, and Jenkins will be able to support it instantly.
3. The Risk of "Plugin Bloat"
A senior DevOps engineer knows that with great power comes great responsibility.
If you download every app in the App Store, your phone will become slow, your battery will die, and your apps will start crashing. The same is true for Jenkins. If you install 500 plugins, your Jenkins controller will become unstable. Plugins can have "Conflicts" with each other, and they can introduce security vulnerabilities. A master builder is Selective. They only install the high-quality, essential plugins that their team actually needs.
Summary
- Jenkins Plugins act like smartphone apps, providing specialized "superpowers" for automation
- The pluggable architecture allows Jenkins to adapt to any cloud provider or development tool
- Over 1,800 community-developed plugins are available in the official Jenkins repository
- Almost every core feature in Jenkins, including Pipelines, is implemented as a plugin
- "Plugin Bloat" can lead to performance degradation, instability, and security risks
- Senior engineers are selective, installing only essential and high-quality plugins
- A modular plugin strategy ensures that Jenkins remains lightweight, secure, and future-proof
In the next file, 02-installing-plugins.md, you will learn how to find and install these superpowers in the Jenkins UI.