Skip to content

gioboa/jira-plugin

Repository files navigation

jira-plugin README

Key Features

Changelog

Learn about the latest improvements.

Support

jira-plugin is an open source extension.
While being free and open source, if you find it useful, please consider supporting it by donating.
Thanks!

[Become a backer]

Your logo will show up here with a link to your website.

Installation

Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
ext install gioboa.jira-plugin

Usage

From the command palette Ctrl-Shift-P (Windows, Linux) or Cmd-Shift-P (OSX) under Jira-plugin you have all the extension commands.

Setup

First of all your have to launch "Setup credentials" command to configure the plugin.
The Jira base URL is needed and also your credentials.
n.b: you can also use OAuth.

  • url: your base Atlassian url
  • username: your full email
  • password: the token

Setup

Set working project

After setup you have to set the working project, you can click on status-bar icon or use "Set working project" command.

n.b: If you need to browse issues for various project you have to switch the working project.

Set-working-project

Settings

The extension store credentials in VS Code settings.

n.b: the extension store the password in VS Code internal storage so it's safe and hidden. 😉

  • Additional Statuses
    Additional custom statuses, used for manage some Jira wrong behavior
  • Base Url
    Your Jira base URL (e.g. https://your_jira_base_url.com or http://your_jira_base_url.com:your_port)
  • Default JQL Search
    Here you can define your default/custom JQL search (n.b: WORKING_PROJECT is the placeholder for the current working project)
  • Enable Check Notifications
    You can manage your Jira unread notifications inside VsCode notification center (n.b: only new Jira versions has notifications)
  • Enable Working Issue
    Enable working issue functionality in status bar
  • Git Integration
    Automatically watch for branch switching and select appropriate project and working issue
  • Group Task And Subtasks
    Group task and subtasks into explorer
  • Issue List Auto Refresh Interval
    Refresh explorer every x minutes (n.b: setting to 0 disables auto-refresh)
  • Number Of Issues In List
    Number of issues to show in list (n.b: If you define high numbers the research can be slow)
  • Project Key Mapping
    Setting for map projects key for git integration (e.g. CUSTOMKEY=JIRAKEY)
  • Projects To Hide
    Here you can define which projects you want to hide (e.g. PROJECT-KEY-1, PROJECT-KEY-2, PROJECT-KEY-3)
  • Projects To Show
    Here you can define which projects you want to show (e.g. PROJECT-KEY-1, PROJECT-KEY-2, PROJECT-KEY-3)
  • Requests Timeout
    Jira requests timeout (expressed in minutes)
  • StrictSSL param
    Set strictSSL param value for all request
  • Tracking Time Mode
    Configure how the plugin tracking time for the working issue
  • Tracking Time Mode Hybrid Timeout
    Number of minutes to wait for the user to return to VSCode before discarding away time in hybrid time tracking mode
  • Username
    Your Jira username or full email for OAuth
  • Working Issue Assignees
    Assignees used for extract working issue list (e.g. robert.smith, michael.jones) (n.b: CURRENT_USER is the placeholder for the current user)
  • Working Issue Change Status After Selection
    Change working issue status after selection
  • Working Issue Filter
    Choose issue filter for 'Set Working Issue' results. WORKING_ISSUES (Your assigned issues) or ALL.
  • Working Issue Show Timer
    Show/Hide working issue timer in status bar
  • Working Issue Statues
    Statuses used for extract working issue list (e.g. In Progress, Development In Progress, Test in Progress)
  • Working Project
    Jira working project
  • Worklog Minimum Tracking Time
    Minimum tracking time for show the Worklog modal and create Jira worklog (expressed in minutes)

n.b: setting: Tracking Time Mode
values:

  1. hybrid - will increment tracking time always but if VS Code remain idle more then "trackingTimeModeHybridTimeout" will discard the time addition
  2. always - will increment tracking time always
  3. vsCodeFocus - will increment tracking time only if VS Code is focused
  4. never - will not tracking time

Explorer

  • In the explorer you can use all these extension command

Explorer

Explorer commands

  • Create new ticket
    With this command you can create new ticket.

  • Insert Working Issue Key+Summary comment
    With this command you can insert Working Issue Key+Summary comment at the current position in the code.
    You can set your custom keyboard shortcut to retrieve this command

  • Group By
    You can define how visualize issues inside the explorer.

Filters

  • Default JQL Search
    Your default/custom JQL search

  • All issues
    With this command you can search all issues for the current project.
    project = '${project}' ORDER BY status ASC, updated DESC

  • Current sprint issues
    With this command you can search all issues for the current sprint.
    project = '${project}' AND sprint in openSprints() and sprint not in futureSprints() ORDER BY status ASC, updated ASC

  • Issue by id
    With this command you can search an issue by id.
    id = '${project}-${id}' ORDER BY status ASC, updated DESC

  • Issues filtered by status
    With this command you can search issues with a particular status.
    project = '${project}' AND status = '${status}' ORDER BY status ASC, updated DESC

  • Issues filtered by status and assignee
    With this command you can search issues with a particular assignee and status.
    project = '${project}' AND status = '${status}' AND assignee = ${assignee} ORDER BY status ASC, updated DESC

  • Issues filtered by summary
    With this command you can search issues with a particular summary.
    project = '${project}' AND summary ~ '${summary}' ORDER BY status ASC, updated DESC

  • My issues filtered by status
    With this command you can search your issues with a particular status.
    project = '${project}' AND status = '${status}' AND assignee in (currentUser()) ORDER BY status ASC, updated DESC

  • Favourites filters
    With this command you can search issues by using your Jira favoutite filters (create in BASE_URL/issues/?jql=).
    only coherent "favorites filters" for the working project

Issue commands (right click on issue in explorer)

Issue Commands

  • Add comment
    With this command you can add comment. [@] is the placeholder for tag a user.
    e.g: 'This is the placeholder for tag user -> [@]'

  • Change issue assignee
    With this command you can change an issue assignee.

  • Change issue status
    With this command you can change an issue status.

  • Copy Jira issue Key+Summary
    With this command you can copy to clipboard Jira issue Key+Summary.

  • Copy Jira issue remote url
    With this command you can copy to clipboard Jira issue remote url.

  • Checkout or create git branch
    Whit this command you can manage git from explorer.

Status bar

Working project

  • The extension in the status bar show the working project, you can also change it from here.

StatusBar

Working issue

  • The extension in the status bar show the working issue, you can also change it from here.
    With Working Issue Statues setting you can define statuses used for extract working issue list.
    The extension trace the time spended on the working issue and you can also create the Jira worklog for the activity.
    Jira worklog allow only time in minute so the extension round your activity time.
    The extension every 60 second store in iternal storage the current working activity so if you close and reopen VS Code the extension retrieve (if needed) the pending working issue.

Working issue

Link to open Jira issue in the browser

Jira issue link

Want to contribute?

If you want to file a bug, contribute some code or improve documentation, read up on contributing guidelines, and check out open issues.


Giorgio Boa

jumpkick


tiago-pullup


MXM-7


Diogo Paschoal


Ian Mackie


Roman Ostolosh


Keith Turley


jjongman


Dan Streeter

License

Version

Versioning

jira-plugin will be maintained under the Semantic Versioning guidelines. Releases are numbered with the following format:

<MAJOR>.<MINOR>.<PATCH>
  1. MAJOR versions indicate incompatible API changes,
  2. MINOR versions add functionality in a backwards-compatible manner, and
  3. PATCH versions introduce backwards-compatible bug fixes.

For more information on SemVer, please visit http://semver.org.

Resources

Based on Jira APIs