JIRA – Q&A Mashup

A couple of observations have struck in the last year. Observation one: Developers love badges, shiny medals, and reputation points. My employer has an internal version of a popular Q&A website, which is perceived to be a huge success (personally I think it’s a bit sucky but whatever). Developers will stay late or abandon whatever [...]

Auto-transitions in JIRA Workflows

Moving pictures apparently being all the rage now, I was going to do one of these so-called “movies” myself to demonstrate automatic workflow transitions, but, they’re FOOKING HARD! Fiddling around with key frames and splicing clips and so on, and then listening to my voice droning back at me, I couldn’t take it. I can’t [...]

Speakeasy Baby Steps

I been having a play with the Speakeasy extension plugin for JIRA, which is hard to describe but, err, kind of lets you inflict your greasemonkey scripts on your users.

For a laugh I thought I'd do an old-skool JIRA skin which would display issues using the golden oldie JIRA 3.13 look & feel. But, [...]

Setting issue security level by issue type

This is an old entry – re-added because of a problem with redirects, sorry.

It’s not possible in JIRA to create an Issue Security Scheme by issue type. For instance, you may want that defects should default to Private, and enhancements should default to public (or none). You might expect that issue type security scheme [...]

JIRA SQL Plugin

The SQL Plugin lets users run SQL predefined queries against the JIRA database, the results are rendered using velocity templates customised by an administrator.

The same template can be used as a portlet/gadget or a report, although generally additional information will be shown in the report, for instance the data table driving the [...]

Using Properties in JIRA

Introducing an utterly unglamourous plugin – the "Properties Manager". This allows you to browse and edit the propertyset on most jira "entities". Depending on the amount of additional work you are willing to put in, this could be a partial solution to JRA-1991 and JRA-2980.

It's probably best to describe this by [...]

Auto duplicate search in JIRA

A requirement came up recently that the user should be encouraged (forced) to search for a matching existing issue before submitting a new one. This particular group spent a lot of time “deduping”, and it turns out that around 80% of their issues were closed as duplicates.

The solution outlined below, [...]

Script Runner JIRA Plugin

For a long time I’ve been meaning to rewrite the “groovy runner” plugin so that groovy wasn’t a requirement, and having found myself with some unexpected but welcome time on my hands I have finally done so.

[...]

Highlight Overdue Issues

Here is a relatively simple way to highlight overdue issues… the more overdue they are, the hotter the colour:

[...]

JIRA 4.0 Beta Test Drive

I was keen to get my grubby mitts on the JIRA 4.0 beta to see what JQL (jira query language) was all about… this is my first test-drive, I haven't read much of the release notes or the bug reports, so I'm probably way off on some of this.

[...]

How to Make JIRA Twelve Times Faster

As an addendum to the previous post, I've done some more cleaning up, and JIRA is now 12 times faster on the average measurement.

Label # Samples Average Min Max Login 3 18 13 29 LoginFBrowse 10 41 10 184 Get issue 903 590 21 7792 Dashboard 9 14836 10006 18698 LazyLoaderPortlet 9 632 [...]

How to make JIRA 6 1/2 times faster

Over the last few months JIRA performance has tanked, but gradually. Difficult to think of any particular inflexion point, just more users, projects and issues.

I had a number of changes I had in mind to help:

Application server DBMS type and location Caching for static content Reducing numbers of projects, groups etc. Optimising indexes. [...]

Jira Workflow Report Update

I’ve refreshed the workflow plugin a bit. If you want jump straight to the installation section.

A problem I’ve noticed with the workflows people create (not my own ones of course!) is that the resolution is often inconsistent.

This might stem from a lack of understanding of the resolution field and what it’s used for. [...]

Confluence Groovy Runner

This simple plugin allows you to run Groovy scripts in the context of confluence. Groovy scripts have full access to the API.

This is in the same spirit as the Jira groovy runner, that is, it lets you quickly develop proofs of concepts and simple macros, without having to worry about all the boilerplate of [...]

Impersonating another user within JIRA

This plugin allows an administrator to impersonate another user, i.e. to become that user in jira, without knowing their password – which is often impractical if authentication is handled by LDAP.

Impersonation is useful for administration of shared filters, shared dashboards, double-checking a user has permission to do an action etc.

The implementation is surprising [...]

Synchronising LDAP Groups with Confluence Groups

I set up Confluence to integrate with our LDAP infrastructure, to take advantage of protecting spaces with LDAP groups. We had performance issues but I increased the cache timeout in the confluence-coherence-cache-config.xml properties file as documented here.

I then thought everything was well as performance seemed “OK”, however reports of poor performance, like 15-25 [...]

Setting issue security level by issue type

It’s not possible in JIRA to create an Issue Security Scheme by issue type. For instance, you may want that defects should default to Private, and enhancements should default to public (or none). You might expect that issue type security scheme would be a mapping of issue types to issue security schemes (in the [...]

Categorising Projects in the JIRA Project Picker

We have around 250 projects in JIRA, and the list of projects was becoming unmanageable when creating an issue, and in the issue navigator. I modified the templates so it groups them in to “my” projects, versus “other” projects:

[...]

Showing Unavailable Actions

BTW – sign-up to the blog is currently not working, so you cannot comment.

This is an attempt to deal with something I’ve mentioned previously, and is JRA-5705:

The problem I have with conditions, is that when a condition is failed, the transition is not displayed. This can lead to confusion for users – [...]

Deactiveating Old JIRA Users

BTW – sign-up to the blog is currently not working, so you cannot comment.

I’m trying to make our installation JIRA as self-supporting as possible. This means things like using SSO so there are no separate passwords for users to remember, and of course forget, and automatic creation of users on their first visit to [...]

Copy Project Plugin

This plugin allows you to create a new project based on another, basically it attempts to copy everything except the issues. It will copy:

Schemes Role memberships Custom field configurations Optionally, versions and components.

[...]

JIRA-Groovy Plugin

This plugin moved to http://confluence.atlassian.com/display/JIRAEXT/Groovy+Runner. There is some background info here though.

I discovered the JIRA Groovy Runner recently, whilst looking for a starting point to integrate Jython in to JIRA. I succeeded in adding a Python runner, but then realised it wasn’t particularly useful, me not being a strong Python programmer.

However, it did [...]

Jira History Queries

Someone asked me how they can get a chart like the one below, but broken down by priority.

[...]

What’s Wrong with ClearQuest

I have been using ClearQuest since around 1997, and ClearCase for longer. I’ve worked on schemas in many banks and other large companies, around the world. I co-authored the tools on this site. I’ve delivered training at various levels around the world. I’m certainly not the last word on ClearQuest, but I think I know [...]

Jira Release Notes and Perforce

Someone recently asked me if the release notes in JIRA could contain the files that have changed to fix that issue. Perfectly reasonable. However, the changelists (the $client uses Perforce) that fix the issue are not held in JIRA, instead, the plugin runs some p4 commands to get the changelists, and in turn each [...]

LDAP Picker Custom Field

I needed a custom field whereby a user could pick a sponsor for an enhancement… a sponsor may be a jira user, but may well not be – eg. business users are not all jira users. I wanted a field that worked in the same way as the funky new AJAX user picker in jira [...]

Recording test evidence in JIRA

What I’m talking about it here is documenting test evidence or sign-offs, the fact that some user is verifying that they have tested the defect/enhancement/whatever in either a particular environment, eg your UAT env, or in a particular manner, eg regression testing, and the issue has passed, failed, or, testing is not required at all [...]

Visualising JIRA Workflows

One of JIRA‘s shortcomings is its inability to produce any sort of diagram of the workflows. Looking at the text representation of a workflow is not particularly enlightening:

[...]