Manual:Extension/IssueTrackerLinks: Difference between revisions

No edit summary
m (username removed) (log details removed)
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The '''IssueTrackerLinks''' extension handles the rendering of links to external issue tracker applications, such as GitHub, GitLab, Jira, or EasyRedmine. Administrators can define which applications are available as issue tracker links.
The '''IssueTrackerLinks''' extension handles the rendering of links to external issue tracker applications, such as GitHub, GitLab, Jira, or EasyRedmine. Administrators can [[Reference:IssueTrackerLinks|define which applications are available]] as issue tracker links.
 
== Configuration ==
A wiki administrator needs to define which issue links are tracked in the wiki. This is done on page <code>MediaWiki:IssueTrackerLinksConfig.json</code>. This page  is  pre-created and filled with common issue trackers.
 
The Configuration is a JSON object, where key is a unique ID for the tracker and value is an object with the following properties:
 
* <code>url</code> -
* <code>label</code> - optional - message key or string message to be used as a label for this tracker type
* <code>display-mask</code> -
* <code>sequence</code> -
 
{| class="wikitable" style="width: 100%;"
! style="width:120px;" |Property
!Description
|-
| style="width:120px;" |<code>url</code>
|mandatory - URL pattern for the tracker links. Any variable parts can be replaced with a variable (e.g. <code>{repo}</code>, <code>{id},</code>... ) <code>"<nowiki>https://github.com/{owner}/{repo}/issues/{id}</nowiki>"</code>
|-
| style="width:120px;" |<code>label</code>
|optional - <br />message key or string message to be used as a label for this tracker type
|-
| style="width:120px;" |<code>display-mask</code>
|optional - <br />how this tracker link should be represented in page. For example:
<code>Github: {id}</code>, would render it as <code>Github: 6</code>
|-
| style="width:120px;" |<code>sequence</code>
|optional -<br /> if you want to be able to auto-convert certain sequences in VisualEditor to tracker links, specify mask here. For example,  if the mask is defined as <code>GH{id}</code>, then any <code>GH123</code> sequence will be converted to a link to the tracker with <code>id=123</code>, or <code>GH:{repo},{id}</code> for <code>GH:example-repo,123</code>, where <code>repo=example-repo</code> and <code>id=123</code>. <br />Note that if the URL mask contains more variables than are present in sequence,  itwill lead to broken links. Recommended is to use sequences only for URLs with one variable, such as issue IDs.
|-
| style="width:120px;" |
|
|}
 
== How it works ==
== How it works ==
For example, an administrator has configured issue tracking for GitHub:<syntaxhighlight lang="json">
For example, an administrator has [[Reference:IssueTrackerLinks|configured issue tracking for GitHub]]:<syntaxhighlight lang="json">
{
{
"github": {
"github": {
Line 46: Line 14:
=== Copy and paste ===
=== Copy and paste ===
With the above configuration, you can now paste the following link in a wiki page: <syntaxhighlight lang="text">https://github.com/wikimedia/edx-platform/issues/553</syntaxhighlight>The URL label will be visually formatted as an issue tracker url with the text string of the display-mask parameter that is defined for GitHub in your wiki.  
With the above configuration, you can now paste the following link in a wiki page: <syntaxhighlight lang="text">https://github.com/wikimedia/edx-platform/issues/553</syntaxhighlight>The URL label will be visually formatted as an issue tracker url with the text string of the display-mask parameter that is defined for GitHub in your wiki.  
[[File:IssueTrackerLinks github display.png|alt=Formatted shortened link label for a GitHub issue|center|thumb|GitHub issue  link]]  
[[File:IssueTrackerLinks github display.png|alt=Formatted shortened link label for a GitHub issue|center|thumb|GitHub issue tracker link]]


=== Shortcut sequence ===
It is possible that Administrators define a shortcut ("[[Reference:IssueTrackerLinks|sequence]]"). By default, GitHub issue links do not have a shortcut sequence defined, because it is not really time-saving to manually string the necessary values for the three variables  <code>owner</code>, <code>repo</code>, and <code>id</code> together. But an administrator could define a shortcut sequence like:<syntaxhighlight lang="text">
GH-{owner}-{repo}-{id}
</syntaxhighlight>Then, the above link could be created by manually entering the following string, followed by a space:<syntaxhighlight lang="text">
GH-wikimedia-edxplatform-553
</syntaxhighlight>Keyboard shortcuts are mainly useful if an issue tracker requires only one variable.


== Content droplet ==
== Content droplet ==
Some issue links can be entered as content droplet:
Some issue links can be entered as [[Manual:Extension/ContentDroplets|Content droplet]]:


* GitHub issue link
* GitHub issue link
* GitLab issue link
* GitLab issue link
* Jira
{{Textbox|boxtype=note|header=Note:|text=Content droplets only accept the full URL path of the issue tracker link.|icon=yes}}
[[Category:Content]]
[[Category:Content]]

Latest revision as of 10:34, 18 November 2025


The IssueTrackerLinks extension handles the rendering of links to external issue tracker applications, such as GitHub, GitLab, Jira, or EasyRedmine. Administrators can define which applications are available as issue tracker links.

How it works

For example, an administrator has configured issue tracking for GitHub:

{
	"github": {
		"url": "https://github.com/{owner}/{repo}/issues/{id}",
		"label": "issuetrackerlinks-type-label-github",
		"icon": "github",
		"display-mask": "{owner}/{repo}#{id}"
	}
}

Copy and paste

With the above configuration, you can now paste the following link in a wiki page:

https://github.com/wikimedia/edx-platform/issues/553

The URL label will be visually formatted as an issue tracker url with the text string of the display-mask parameter that is defined for GitHub in your wiki.

Formatted shortened link label for a GitHub issue
GitHub issue tracker link

Shortcut sequence

It is possible that Administrators define a shortcut ("sequence"). By default, GitHub issue links do not have a shortcut sequence defined, because it is not really time-saving to manually string the necessary values for the three variables owner, repo, and id together. But an administrator could define a shortcut sequence like:

GH-{owner}-{repo}-{id}

Then, the above link could be created by manually entering the following string, followed by a space:

GH-wikimedia-edxplatform-553

Keyboard shortcuts are mainly useful if an issue tracker requires only one variable.

Content droplet

Some issue links can be entered as Content droplet:

  • GitHub issue link
  • GitLab issue link
  • Jira
Note: Content droplets only accept the full URL path of the issue tracker link.



PDF exclude - start

To submit feedback about this documentation, visit our community forum.

PDF exclude - end