Jenkins Developer Reference

View the index of available developer guides

  1. Architecture  
    1. Model  
    2. Web Framework
    3. Extensions  
    4. Remoting  
    5. Security  
  2. Initialization and Startup  
    1. Embedded Winstone and executable-war  
  3. Extensibility  

    About Jenkins' internal extension functionality, modules, and plugins

  4. Model  

    The data model and type hierarchy Jenkins is based on

  5. Handling Requests  

    Explains how Jenkins routes HTTP requests, and what ways to respond exist.

    1. Routing Requests
    2. Web Methods  
    3. Responding to Requests  
  6. Security  
    1. Storing Secrets
  7. Persistence  
  8. Scheduling  

    How Jenkins schedules tasks and how the queue works

  10. Forms

    Forms, data binding, and structured form submission

    1. Form validation
    2. Adding tool tips
    3. Jelly form controls
    4. Structured form submission
  11. Internationalization and Localization  

    How to internationalize views and messages, and how to localize them.

    1. Internationalizing Messages in Java Source Code
    2. Internationalizing Messages in Jelly Views
    3. Internationalizing Messages in Groovy Views  
    4. Advanced Localization
  12. Distributed Builds  
  13. Jenkins CLI

    The inner workings of the Jenkins CLI and how to write new commands

  14. Testing  
  15. Plugin development

    About Jenkins' internal extension functionality, modules, and plugins

    1. Plugin Build Process
    2. Choosing a Jenkins version to build against
    3. Dependency Management
    4. Dependencies and Class Loading
    5. Optional dependencies
    6. Plugin Release Tips
  16. Plugin governance

    About plugin governance, ownership, adoption, et.c

    1. Managing plugin permissions
    2. Adopt a Plugin
  17. Publishing Plugins

    Guide to publishing plugins and related Jenkins project infrastructure

    1. Style Guides
    2. Source Code Hosting
    3. Artifact Repository
    4. Plugin Documentation
    5. Plugin Wiki Pages
    6. Plugin Site
    7. Continuous Integration
    8. Usage Statistics
  18. Blue Ocean  

    How to develop plugins for Blue Ocean

  19. Building and Debugging  
  20. Development Environment

    Preparing your development environment for Jenkins core and plugin development

    1. IDE Configuration
    2. Taglibs
  21. Appendix C: Index of All How-To Guides