Bug 804555 - Orgs with international chars in name provide broken urls in redhat.repo
Orgs with international chars in name provide broken urls in redhat.repo
Status: CLOSED ERRATA
Product: Red Hat Satellite 6
Classification: Red Hat
Component: Subscription Management (Show other bugs)
6.0.1
Unspecified Unspecified
unspecified Severity high (vote)
: Unspecified
: --
Assigned To: Jesus M. Rodriguez
Og Maciel
: Triaged
Depends On:
Blocks: 858000
  Show dependency treegraph
 
Reported: 2012-03-19 04:53 EDT by Tomas Strachota
Modified: 2014-09-18 11:32 EDT (History)
9 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Specific baseurl repositories used organization names. Organization names with non-ASCII characters broke the baseurl as candlepin did not encode the entire organization prefix into the URL. This fix encodes the entire prefix for an organization. The baseurl now shows non-ASCII characters correctly.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-12-04 14:43:05 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Tomas Strachota 2012-03-19 04:53:42 EDT
Description of problem:

When a system is subscribed to a product in org with international characters in name the repository url in redhat.repo are broken. The characters in org are replaced by dots. The url is broken already in certificate that comes from candlepin. There's probably problem in org name not being url-encoded. Environment name seems to be correct.


Version-Release number of selected component (if applicable):
candlepin-0.5.26-1
python-rhsm-0.99.5-1
katello-0.2.14-1


Steps to Reproduce:
1. create an org with international characters in name
2. create a product and repo
3. subscribe to that product
4. see baseurl in redhat.repo


Actual results:
(from our cli system tests, org name was org_manifest_žába_701a88c, env name was env_manifest_žába_701a88c)

baseurl = https://localhost/pulp/repos/org_manifest_..ba_701a88c/env_manifest_%C5%BE%C3%A1ba_701a88c/content/zoo/$releasever/$basearch/rpms


Expected results:
baseurl = https://localhost/pulp/repos/org_manifest_%C5%BE%C3%A1ba_701a88c/env_manifest_%C5%BE%C3%A1ba_701a88c/content/zoo/$releasever/$basearch/rpms
Comment 1 Bryan Kearney 2012-03-26 08:57:07 EDT
Per conversations with PM, this is not a blocker for 1.0. It should be fixed
for 1.1 however.
Comment 2 Bryan Kearney 2012-06-18 10:46:53 EDT
Fixed in master at 0d60138eef41a6b538740d8527fb475a61de094e. You will see this in 0.7.3 or later.
Comment 4 Og Maciel 2012-09-16 09:29:00 EDT
* Created the Org Goiás with environment DEV
* Created provider Animals:
** Product: Zoo
*** Repo: Animals  URL:  http://omaciel.fedorapeople.org/fakerepo01/

When I tried to save the repository, I received the following message in the web ui (and pulp.log):


  2012-09-16 08:49:58,476 30573:139919622137600: pulp.server.api.consumer:INFO: consumer:411 Successfully updated package profile for consumer ea26ae67-a98f-4c81-8ac0-6f4a3e833b4a
  2012-09-16 08:55:43,594 30573:139919477430016: pulp.server.webservices.controllers.decorators:ERROR: decorators:52 Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/pulp/server/webservices/controllers/decorators.py", line 48, in report_error
    return method(self, *args, **kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/server/webservices/controllers/decorators.py", line 127, in _auth_decorator
    value = method(self, *args, **kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/server/webservices/controllers/repositories.py", line 335, in POST
    publish=repo_data.get('publish', None), packages_dir=repo_data.get('packages_dir', None))
  File "/usr/lib/python2.6/site-packages/pulp/server/api/repo.py", line 226, in create
    self.check_id(id)
  File "/usr/lib/python2.6/site-packages/pulp/server/api/base.py", line 75, in check_id
    raise PulpValidationError(_("Given ID is invalid. ID may contain numbers(0-9), upper and lower case letters(A-Z, a-z), hyphens(-), underscore(_) and periods(.)"))
PulpValidationError: Given ID is invalid. ID may contain numbers(0-9), upper and lower case letters(A-Z, a-z), hyphens(-), underscore(_) and periods(.)

Comment #2 says I should have the fix with candlepin >= 0.7.3 and I have 0.7.8

Verified using:

* candlepin-0.7.8-1.el6cf.noarch
* candlepin-selinux-0.7.8-1.el6cf.noarch
* candlepin-tomcat6-0.7.8-1.el6cf.noarch
* katello-1.1.12-7.el6cf.noarch
* katello-all-1.1.12-7.el6cf.noarch
* katello-candlepin-cert-key-pair-1.0-1.noarch
* katello-certs-tools-1.1.8-1.el6cf.noarch
* katello-cli-1.1.8-4.el6cf.noarch
* katello-cli-common-1.1.8-4.el6cf.noarch
* katello-common-1.1.12-7.el6cf.noarch
* katello-configure-1.1.9-3.el6cf.noarch
* katello-glue-candlepin-1.1.12-7.el6cf.noarch
* katello-glue-pulp-1.1.12-7.el6cf.noarch
* katello-qpid-broker-key-pair-1.0-1.noarch
* katello-qpid-client-key-pair-1.0-1.noarch
* katello-selinux-1.1.1-1.el6cf.noarch
* pulp-1.1.12-1.el6cf.noarch
* pulp-common-1.1.12-1.el6cf.noarch
* pulp-selinux-server-1.1.12-1.el6cf.noarch
Comment 5 Jesus M. Rodriguez 2012-09-17 13:08:03 EDT
Pulp doesn't support i18n characters as id's which is why you are getting the above error message.

Katello is sending this request:

[DEBUG: 2012-09-16 08:55:43 #18111] Resource PUT request: /pulp/api/repositories/, {"feed":"http://omaciel.fedorapeople.org/fakerepo01/","feed_cert_data":{"key":null,"ca":null,"cert":null},"arch":"noarch","groupid":["product:1347800116766","env:14","org:5"],"relative_path":"Goiás/Library/custom/Zoo/Animals","preserve_metadata":false,"name":"Animals","content_types":"yum","id":"Goiás-Zoo-Animals"}
Comment 6 Og Maciel 2012-09-17 15:11:31 EDT
This is BLOCKED by https://bugzilla.redhat.com/show_bug.cgi?id=858011
Comment 9 Og Maciel 2012-10-02 21:43:23 EDT
Verified using:

* candlepin-0.7.8-1.el6cf.noarch
* candlepin-selinux-0.7.8-1.el6cf.noarch
* candlepin-tomcat6-0.7.8-1.el6cf.noarch
* katello-1.1.12-12.el6cf.noarch
* katello-all-1.1.12-12.el6cf.noarch
* katello-candlepin-cert-key-pair-1.0-1.noarch
* katello-certs-tools-1.1.8-1.el6cf.noarch
* katello-cli-1.1.8-6.el6cf.noarch
* katello-cli-common-1.1.8-6.el6cf.noarch
* katello-common-1.1.12-12.el6cf.noarch
* katello-configure-1.1.9-6.el6cf.noarch
* katello-glue-candlepin-1.1.12-12.el6cf.noarch
* katello-glue-pulp-1.1.12-12.el6cf.noarch
* katello-qpid-broker-key-pair-1.0-1.noarch
* katello-qpid-client-key-pair-1.0-1.noarch
* katello-selinux-1.1.1-1.el6cf.noarch
* pulp-1.1.12-1.el6cf.noarch
* pulp-common-1.1.12-1.el6cf.noarch
* pulp-selinux-server-1.1.12-1.el6cf.noarch
Comment 11 errata-xmlrpc 2012-12-04 14:43:05 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2012-1543.html
Comment 12 Mike McCune 2013-08-16 14:02:49 EDT
getting rid of 6.0.0 version since that doesn't exist

Note You need to log in before you can comment on or make changes to this bug.