Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Hudson-ci/Extend Hudson"
Line 11: | Line 11: | ||
*[[Extension points]] | *[[Extension points]] | ||
**[[Defining a new extension point]] | **[[Defining a new extension point]] | ||
− | *Dependencies among plugins | + | *[[Dependencies among plugins]] |
*Writing Plugin code | *Writing Plugin code | ||
− | **Using IntelliJ IDEA plugin | + | **[[Using IntelliJ IDEA plugin]] |
− | ** Structured Form Submission | + | **[[Structured Form Submission]] |
− | ** Making your plugin behave in distributed Hudson | + | **[[Making your plugin behave in distributed Hudson]] |
− | **Making your plugin behave in secured Hudson | + | **[[Making your plugin behave in secured Hudson]] |
− | **Marking a new plugin version as incompatible with older versions | + | **[[Marking a new plugin version as incompatible with older versions]] |
− | **Hints for plugin-development newbies | + | **[[Hints for plugin-development newbies]] |
− | **Exposing data to the remote API | + | **[[Exposing data to the remote API]] |
− | **Writing CLI commands | + | **[[Writing CLI commands]] |
− | **Participating to the initialization | + | **[[Participating to the initialization]] |
− | *Writing Plugin UI using Jelly Framework | + | *Writing Plugin UI using Jelly Framework]] |
− | **Basic guide to Jelly usage in Hudson | + | **[[Basic guide to Jelly usage in Hudson]] |
− | **Understanding Jelly Tags | + | **[[Understanding Jelly Tags]] |
− | **Figuring out URL binding of Stapler | + | **[[Figuring out URL binding of Stapler]] |
− | **Writing Jelly views with IDE assistance | + | **[[Writing Jelly views with IDE assistance]] |
− | **Adding tooltips | + | **[[Adding tooltips]] |
− | **Writing a foldable section controlled by a checkbox | + | **[[Writing a foldable section controlled by a checkbox]] |
− | **Jelly form controls | + | **[[Jelly form controls]] |
− | **Jelly and XSS prevention | + | **[[Jelly and XSS prevention]] |
− | **Unique IDs for Repeatable Content | + | **[[Unique IDs for Repeatable Content]] |
− | *Writing unit tests for your plugin | + | *[[Writing unit tests for your plugin]] |
− | *Writing UI integration tests for your plugin | + | *[[Writing UI integration tests for your plugin]] |
− | *Understanding Stapler URL mapping rules | + | *[[Understanding Stapler URL mapping rules]] |
*Tips | *Tips | ||
− | **Debugging native Maven jobs | + | **[[Debugging native Maven jobs]] |
− | **Internationalization | + | **[[Internationalization]] |
− | **Choosing Hudson version to build against | + | **[[Choosing Hudson version to build against]] |
− | **Java 5 Compatibility | + | **[[Java 5 Compatibility]] |
− | **Bundling plugins with Hudson | + | **[[Bundling plugins with Hudson]] |
− | *Hosting plugin | + | *[[Hosting plugin]] |
− | *Releasing Hudson Plugin | + | *[[Releasing Hudson Plugin]] |
== Additional references == | == Additional references == | ||
− | *Hudson Javadoc | + | *[[Hudson Javadoc]] |
− | *Jelly taglib reference core define | + | *[[Jelly taglib reference core define]] |
Revision as of 21:44, 16 July 2013
This page is a stub, and in progress.
Developing Plugins
Hudson supports plugins, which allow Hudson to be extended to meet specific needs of individual projects. Read on to learn how to write a plugin.
- Write your first Hudson Plugin
- Plugin Architecture
- Plugin Directory Structure
- Sample - Writing an SCM plugin
- Extension points
- Dependencies among plugins
- Writing Plugin code
- Using IntelliJ IDEA plugin
- Structured Form Submission
- Making your plugin behave in distributed Hudson
- Making your plugin behave in secured Hudson
- Marking a new plugin version as incompatible with older versions
- Hints for plugin-development newbies
- Exposing data to the remote API
- Writing CLI commands
- Participating to the initialization
- Writing Plugin UI using Jelly Framework]]
- Writing unit tests for your plugin
- Writing UI integration tests for your plugin
- Understanding Stapler URL mapping rules
- Tips