OCTO:Open Core for Technology Orchestration/TDOMS/Tracker
Overview
TD/OMS offers the option to connect to third party issue management systems like JIRA, view their issues and connect them to TD/OMS tasks without having to go the external system itself. Below is an overview of JIRA in OCTO.
Installation
To access for example JIRA, we need to install the OCTO Tracker interface first.
Server Management
Add a Server
First a server has to be added that points to the server in the external issue management system.
This can be done by clicking the button to the left of the servers menu on the top left of the tracker plugin and then select
Add Server.
The wizard to add a server opens.
Here the server credentials must be given in order for a connection to be established and the server to be added. The credentials vary depending on the issue management system and the type of server itself (e.g. Cloud or private). The most common credentials required are type, name, URL, username/e-mail and password/access token.
- Type: The type of server like Gravity, JIRA etc.
- Name: A unique name to identify the server.
- URL: The URL of the server.
- Username: The username with which to login in the server. In case it is required then this field will become available.
- E-mail: The e-mail with which to login in the server. In case it is required then this field will become available.
- Password or Access Token: The password or access token with which to login in the server (depending on the server requirements).
At the bottom left of the wizard are also two additional options:
- Force Save: Check this box in order to save the server even if authentication fails (default is false). This is useful when a mistake exists in a field and its correct value can't be retrieved instantly. The server is saved and you can come back later and correct only that incorrect value.
- Save in OCTO server: Check this box to save the server information in the OCTO server instead of the local storage (default is false). This is useful when the server needs to be accessed from different browsers or even computers. If its not saved in the OCTO server then it won't exist in those scenarios.
Add a Gravity Server
For Gravity all server URLs have to end with /gravity, for example https://helpdesk.remainsoftware.com/gravity
Edit a Server
A server can be edited by pressing the icon again on the top left and then
Edit Server while having the desired server selected in the servers menu.
The same credentials will appear as when the server was added. Everything can be changed except the type of server.
Delete a Server
A server can be deleted by pressing the icon on the top left and then
Delete Server while having the desired server selected in the servers menu. The server information will appear again as a confirmation before deleting.
Searching Issues
Once a server has been added it can be selected from the server menu. Then an authentication attempt will be made and if successful, issues will immediately be retrieved based on the default issue criteria for that type of server.
There are three different ways that issues can be searched: Server Filters, Condition Filtering and with SQL. Please note that only one way of searching can be active at a time. The others will be disabled (grayed) or not available at all.
Server Filters
Server filters are the ones that are created and saved by the user in the issue management server itself. For example, a JIRA filter created in JIRA to get the issues that belong to the DESK project.
Server filters do not always exist because it depends if that type of server supports them. For example JIRA and Gravity have support for server filters but another type of issue management system might not. If they are supported, then they will be to the right of the server menu.
Please note the first server filter will be selected as default when server filters are supported. If no server filter exists then the default criteria of condition filtering will be preselected. When a server filter is selected condition or SQL filtering is also disabled and ignored when querying for issues. The server filter must be deselected when another way of filtering is required in order to make the other options available.
Condition Filtering
Another way of searching issues is to enter conditions manually (if the type of interface supports it). Condition filtering is based on two elements: the search box and fixed conditions.
Search
The search box is where issues can be searched by entering text. OCTO creates a query based on the given input in the SQL language that the external system is using. Please note that the words given in the search box are separated by space and issues are queried based on the given words against the issue fields that the system allows for issue querying.
The dropdown button on the right provides additional search options to deviate from this default behavior.
- Case Sensitive - The Search criteria need to be written with the correct case when active
- OR - At least 1 search element must match when active
- Exact Match - The search criteria must exist as full words when active
Fixed Conditions
These are the conditions that have fixed values and are used for quick filtering of issues for example the statuses or priorities of issues. They are always used in combination with the search box (with a logical OR) when querying issues.
JIRA
Please note that JIRA does not allow a search without any condition and in that case no issues will be shown. At least one condition must exist either with a text in the search box or a fixed condition chosen.
SQL
If the type of interface supports it, an SQL query can also be entered in the search box. This is the raw SQL language itself that the external issue management system is using to query issues.
Issue Actions
Several actions are available on an issue:
Open in Browser
Clicking the title of the issue will direct to the URL of the issue on the external management system server e.g. view a JIRA issue in JIRA. If OCTO is running on the web then another tab will be opened while the default browser will be used when it runs in VSCode.
Link Task
In order to link an issue to an existing TD/OMS task, the button to the left of the issue has to be clicked to open the context menu. Select
Link Task. This will open the wizard to select the TD/OMS task(s) to link the issue to.
Here one or more tasks can be selected to link the issue to. The layout is exactly the same as in work management. Once finish is pressed, the work management and item editor plugins will refresh the tasks affected (if visible) and in a similar way the tracker plugin will refresh the issue as well.
If a task in the work management and item editor plugins has a link to an external issue management system then it will have this decoration icon next to it. Hovering over it, it will display the number of issues that the task is linked to. Clicking it will redirect to the Links tab in the item editor that shows the details of the issues.
Similarly, if an issue in the tracker plugin has a link to a task then it will have the same decoration icon next to it. Hovering over it, it will display the number of tasks that the issue is linked to.
Unlink Task
If a link already exists between an issue and a TD/OMS task then it can be unlinked by clicking the ellipsis button and then select
Unlink Task. This will open the wizard to select the TD/OMS task(s) to unlink from the issue. Another way to open this wizard is to click the
decoration icon on an issue that has linked tasks.
Here one or more tasks can be selected to unlink from the issue. Once finish is pressed, the work management and item editor plugins will refresh the tasks affected (if visible) and in a similar way, the tracker plugin will refresh the issue as well.
Link New Task
It is possible to create a new task and then link the issue to it. This is done by clicking the ellipsis button and then select
Link New Task. This will show the new task form.