Custom repository creation fails with error "500 - ValidationError (Distributor:None) (Invalid dictionary key name - keys may not contain "." or "$" characters: ['config'])"

Solution Verified - Updated -

Issue

  • When trying to create custom repository on RHUA server it fails with following error:
[...]
The following repository will be created:
  ID:              custom-client-rhui-7-x86_64
  Name:            custom-client-rhui-7-x86_64
  Path:            custom/client/rhui/x86_64/7
  Entitlement:     custom/client/rhui/$basearch/7
  GPG Check        Yes
  Custom GPG Keys: '/root/rpm-gpg/rhui-client-rhui.gpg', '/root/rpm-gpg/rhui-client-all.gpg'
  Red Hat GPG Key: Yes
Proceed? (y/n) y


An unexpected error has occurred during the last operation.
More information can be found in /root/.rhui/rhui.log.

Entries from /root/.rhui/rhui.log file on RHUA server:

[...]
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/brp-python-bytecompile /usr/bin/python 1
+ /usr/lib/rpm/redhat/brp-python-hardlink
+ /usr/lib/rpm/redhat/brp-java-repack-jars
+ umask 022
+ cd /root/clientrpm/rhui-client-2.0/build/BUILD
+ cd rhui-client-2.0
+ rm -rf /root/clientrpm/rhui-client-2.0/build/BUILDROOT
+ exit 0

2016-11-29 15:46:25,440 - <class 'pulp.bindings.exceptions.PulpServerException'>
2016-11-29 15:46:25,440 - Unexpected error caught at the shell level
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/rhui/tools/shell.py", line 88, in safe_listen
    self.listen(clear=first_run)
  File "/usr/lib/python2.7/site-packages/rhui/tools/shell.py", line 122, in listen
    Shell.listen(self)
  File "/usr/lib/python2.7/site-packages/rhui/common/shell.py", line 186, in listen
    item.func(*args, **item.kwargs)
  File "/usr/lib/python2.7/site-packages/rhui/tools/screens/repo.py", line 525, in create_custom
    rh_gpg_key)
  File "/usr/lib/python2.7/site-packages/rhui/tools/pulp_api.py", line 783, in create_custom_repo
    distributors)
  File "/usr/lib/python2.7/site-packages/pulp/bindings/repository.py", line 81, in create_and_configure
    return self.server.POST(path, repo_data)
  File "/usr/lib/python2.7/site-packages/pulp/bindings/server.py", line 100, in POST
    log_request_body=log_request_body, ignore_prefix=ignore_prefix)
  File "/usr/lib/python2.7/site-packages/pulp/bindings/server.py", line 166, in _request
    self._handle_exceptions(response_code, response_body)
  File "/usr/lib/python2.7/site-packages/pulp/bindings/server.py", line 204, in _handle_exceptions
    raise exceptions.PulpServerException(response_body)
PulpServerException: RequestException: POST request on /pulp/api/v2/repositories/ failed with 500 - ValidationError (Distributor:None) (Invalid dictionary key name - keys may not contain "." or "$" characters: ['config'])

Environment

  • Red Hat Update Infrastructure 3.0 Beta

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content