Project

Profile

Help

Issue #2505

closed

Getting an incorrect exception when trying to sync a local repo with bad permissions

Added by daviddavis over 7 years ago. Updated almost 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Sprint/Milestone:
-
Start date:
Due date:
Estimated time:
Severity:
1. Low
Version:
Master
Platform Release:
2.12.2
OS:
Triaged:
Yes
Groomed:
Yes
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 15
Quarter:

Description

Here's the error I am seeing:

Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.repomd.alternate:INFO: The content container reported: {'downloads': {'___/primary/___': {'total_failed': 1, 'total_succeeded': 0}}, 
'total_sources': 0} for base URL: file:///home/vagrant/zoolander/
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184) 'error_code'
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184) Traceback (most recent call last):
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184)   File "/home/vagrant/devel/pulp_rpm/plugins/pulp_rpm/plugins/importers/yum/sync.py", line 268, in run
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184)     self.update_content(metadata_files, url)
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184)   File "/home/vagrant/devel/pulp_rpm/plugins/pulp_rpm/plugins/importers/yum/sync.py", line 553, in update_c
ontent
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184)     if error[constants.ERROR_CODE] == constants.ERROR_KEY_ID_FILTER:
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp_rpm.plugins.importers.yum.sync:ERROR: (10582-05184) KeyError: 'error_code'
Dec 22 15:14:53 dev.example.com pulp[10582]: pulp.server.async.tasks:INFO: Task failed : [d354cd87-1de3-4f49-9e43-3eafc68d41c3]
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184) Task pulp.server.managers.repo.sync.sync[d354cd87-1de3-4f49-9e43-3eafc68d41c3] raised unexpected: PulpExecutionException('Imp
orter indicated a failed response',)
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184) Traceback (most recent call last):
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)   File "/usr/lib/python2.7/site-packages/celery/app/trace.py", line 240, in trace_task
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)     R = retval = fun(*args, **kwargs)
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)   File "/home/vagrant/devel/pulp/server/pulp/server/async/tasks.py", line 498, in __call__
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)     return super(Task, self).__call__(*args, **kwargs)
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)   File "/home/vagrant/devel/pulp/server/pulp/server/async/tasks.py", line 105, in __call__
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)     return super(PulpTask, self).__call__(*args, **kwargs)
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)   File "/usr/lib/python2.7/site-packages/celery/app/trace.py", line 438, in __protected_call__
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)     return self.run(*args, **kwargs)
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)   File "/home/vagrant/devel/pulp/server/pulp/server/controllers/repository.py", line 816, in sync
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184)     raise pulp_exceptions.PulpExecutionException(_('Importer indicated a failed response'))
Dec 22 15:14:54 dev.example.com pulp[10424]: celery.worker.job:ERROR: (10424-05184) PulpExecutionException: Importer indicated a failed response

Steps to recreate:

1. Create a local repo
2. chmod 700 one of the files
3. Try to sync the repo

CLI steps:

mkdir zoolander
cd zoolander
wget https://davidd.fedorapeople.org/repos/zoo-lander/cat-1.0-1.noarch.rpm
wget https://davidd.fedorapeople.org/repos/zoo-lander/camel-0.1-1.noarch.rpm
wget https://davidd.fedorapeople.org/repos/zoo-lander/bear-4.1-1.noarch.rpm
createrepo .
chmod 777 *
sudo chown root bear-4.1-1.noarch.rpm
sudo chmod 000 bear-4.1-1.noarch.rpm 
pulp-admin rpm repo create --repo-id zoolander --feed file://`pwd`
pulp-admin rpm repo sync run --repo-id zoolander

Here's the link to where the error is occuring:

https://github.com/pulp/pulp_rpm/blob/531bed622ec86192c230d455400137c2a3814048/plugins/pulp_rpm/plugins/importers/yum/sync.py#L553

Here's what error looks like:

{'url': u'file:///home/vagrant/zoolander/cat-1.0-1.noarch.rpm', 'errors': ["[Errno 13] Permission denied: u'///home/vagrant/zoolander/cat-1.0-1.noarch.rpm'"]}

Also available in: Atom PDF