Coder Social home page Coder Social logo

milowg / jira-ext-plugin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jenkinsci/jira-ext-plugin

0.0 1.0 0.0 123 KB

Update JIRA tickets in an extensible way: both what to update and how to update are exposed as Extension Points

License: Apache License 2.0

Java 99.11% HTML 0.89%

jira-ext-plugin's Introduction

#jira-ext-plugin Build Status

A plugin for Jenkins CI to update JIRA tickets in an extensible way: both what to update and how to update are exposed as ExtensionPoints.

Out of the box, you may discover issues by:

  • The issue key as the first word of the commit message
  • The issue key as the first word of the upstream commit message
  • Manually specifying an issue
  • Looking for it being mentioned somewhere in the commit message
  • Looking for it being mentioned somewhere in the commit message or any upstream build commit messages

To all of these JIRA issues, you may:

  • Add a comment
  • Update a field
  • Add a label
  • Transition a ticket (Start Work, Resolve, etc..)

Example UI:

jira-ext-1

Comparison to jira-plugin

The jira-ext plugin is meant to be extensible in ways that the jira-plugin is not. Both Jenkins and JIRA are used as part of an organizations workflow, and as such are highly customizable. The jira-ext plugin continues this philosophy by making the actions (and when to perform those actions) also customizable for your organization.

In terms of specific features:

jira-ext plugin:

  1. Specify issues manually
  2. Specify issues from upstream commits
  3. Transitions issues
  4. Add label to issues
  5. Update custom fields
  6. Customize comments on issues

jira-plugin:

  1. Perform release notes
  2. (Deprecated) support for SOAP
  3. Specify issues from JQL
  4. Automatically link back to jenkins builds (backpointers)
  5. Link JIRA issues in the Jenkins UI

Extending the plugin

The jira-ext plugin is built with extension in mind. Both how to discover issues and what action to take are customizable. They are implemented as ExtensionPoint, meaning your plugin (or a custom plugin) can contribute its own ticket discovery strategies or operations based on logic specific to your installation or environment.

For example, a code review build could provide a link to the code review server in the JIRA issue as a custom field, or as a comment.

Or another example, a production release build could update tickets based on differences between tags, to keep track of what was deployed last.

If you want to add an operation which should be part of any JIRA install, please open a pull request.

Add a custom Discover Issues By option

You may update what tickets to update using an IssueStrategyExtension and IssueStrategyExtensionDescriptor. See SingleTicketStrategy for an example.

Add a custom JIRA operation

You may add your own operations using a JiraOperationExtension and JiraOperationExtensionDescriptor. See AddComment for an example.

Authors

Dan Alvizu [email protected]

#License Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

jira-ext-plugin's People

Contributors

dalvizu avatar milowg avatar wiedsche avatar benkletzine avatar missedone avatar olivergondza avatar smit-tay avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.