Bug 704483

Summary: wrong URL used when FedoraHosted set as External Tracker
Product: [Community] Bugzilla Reporter: Dan Horák <dan>
Component: Creating/Changing BugsAssignee: Jason McDonald <jmcdonal>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: 3.6CC: dhowells, jmcdonal, samuel-rhbugs, sgreen
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-02-06 08:17:27 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Dan Horák 2011-05-13 10:16:37 UTC
When FedoraHosted is selected as an External Tracker and for example "linux-pam/ticket/1" is set as Bug ID, then the resulting URL is "https://fedorahosted.org/cobbler/ticket/linux-pam/ticket/1". As you can see the "cobbler/ticket" part makes the URL unusable.

Comment 1 Simon Green 2012-05-20 10:41:25 UTC
Most external trackers (including Fedora Hosted) are being removed next week, so this bug has been marked as WONTFIX. See bug 817428.

Comment 2 David Howells 2013-09-13 13:24:29 UTC
External trackers are still there and setting the Fedora Hosted tracker still seems to get things wrong.  For example:

The person who opened this:

    https://bugzilla.redhat.com/show_bug.cgi?id=1006975

tried to set the external tracker to something containing data on the bug (though I don't know exactly what as yet).

However, the external tracker set it to:

    https://fedorahosted.org/cobbler/ticket/710

which does not as yet exist.

Can the facility either be disabled or fixed?

Comment 3 Simon Green 2013-09-15 22:23:12 UTC
(In reply to David Howells from comment #2)
> External trackers are still there and setting the Fedora Hosted tracker
> still seems to get things wrong.  For example:
> 
> The person who opened this:
> 
>     https://bugzilla.redhat.com/show_bug.cgi?id=1006975
> 
> tried to set the external tracker to something containing data on the bug
> (though I don't know exactly what as yet).
> 
> 
> Can the facility either be disabled or fixed?

Yes, it can be fixed.

> However, the external tracker set it to:
> 
>     https://fedorahosted.org/cobbler/ticket/710
> 
> which does not as yet exist.

What should the external URL be set to?

  -- simon

Comment 4 David Howells 2013-09-16 09:40:29 UTC
(In reply to Simon Green from comment #3)
> What should the external URL be set to?

That I don't know.  I'll ask the person who set bug 1006975 up.

Comment 5 Dan Horák 2013-09-16 09:49:13 UTC
(In reply to Simon Green from comment #3)
> (In reply to David Howells from comment #2)
> > External trackers are still there and setting the Fedora Hosted tracker
> > still seems to get things wrong.  For example:
> > 
> > The person who opened this:
> > 
> >     https://bugzilla.redhat.com/show_bug.cgi?id=1006975
> > 
> > tried to set the external tracker to something containing data on the bug
> > (though I don't know exactly what as yet).
> > 
> > 
> > Can the facility either be disabled or fixed?
> 
> Yes, it can be fixed.

are you aware that FedoraHosted hosts many projects, and any of them adds its name to the URL?

it's then https://fedorahosted.org/$(project_name)/ticket/$(number)

 
> > However, the external tracker set it to:
> > 
> >     https://fedorahosted.org/cobbler/ticket/710
> > 
> > which does not as yet exist.
> 
> What should the external URL be set to?
> 
>   -- simon

Comment 6 David Howells 2013-09-23 09:46:47 UTC
In bug 1008724, it appears that bug 1006975 (ie. in the Red Hat Bugzilla) was added as an external tracker - but this was translated to https://fedorahosted.org/cobbler/ticket/1006975 by the external tracker adder.

Comment 7 Jason McDonald 2013-10-15 05:22:27 UTC
As best I can tell, the external tracker URL should be https://fedorahosted.org/ and the tracker ID should be $(project_name)/ticket/$(number). For example, the ticket that was being referenced in Comment #0 is:

    https://fedorahosted.org/linux-pam/ticket/1

It's possible that we could have Bugzilla do some sanity checking on the Tracker ID format (a recent change allowed each tracker to have a regex configured to validate Tracker IDs), but we wouldn't be able to check that the project name is actually valid, so broken links would still be likely unless users were very careful.

I'm not sure what characters are allowed in fedorahosted project names, but looking at the list of projects at https://fedorahosted.org/web/, I'm guessing that the following regex be sufficient:

    [A-Za-z0-9_-]+\/ticket\/[0-9]+

Comment 8 Jason McDonald 2014-02-05 04:25:41 UTC
I see what's going on now....

FedoraHosted tickets require both a project name and a ticket number, while Bugzilla's external tracker feature only allows one to specify the ticket number.

This can be worked-around by creating a separate external tracker for each fedorahosted project that needs to be referenced, and this has been done already for the SSSD, FreeIPA and OpenLMI trackers.

It appears that the "FedoraHosted" tracker, which some users have been treating as a generic tracker for all fedorahosted.org projects is actually meant for the "cobbler" project, i.e. https://fedorahosted.org/cobbler/ticket/1 is a valid ticket about the Cobbler product.

I would therefore recommend renaming the "FedoraHosted" external tracker to "FedoraHosted Cobbler" and renaming the SSSD, FreeIPA and OpenLMI trackers to "FedoraHosted SSSD" and so on, so that it's obvious that there are separate external trackers for each FedoraHosted project rather than a generic tracker.

These renamings are purely configuration and should not require any changes to the Bugzilla code.

Comment 9 Jason McDonald 2014-02-06 08:17:27 UTC
The renamings suggestedin Comment #8 have been performed.  If external trackers are required for any other fedorahosted.org projects, a new request should be lodged.