Project

Profile

Help

Issue #1950

module upload fails with IOError: [Errno 2] No such file or directory

Added by mmccune@redhat.com over 4 years ago. Updated over 1 year ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Urgent
Start date:
Due date:
Estimated time:
Severity:
3. High
Version:
2.8.3
Platform Release:
2.8.5
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 3
Quarter:

Description

Uploading this module here: http://mmccune.fedorapeople.org/jfryman-selinux-0.3.1.tar.gz causes this stack trace:

pulp_puppet.plugins.importers.importer:ERROR: (15938-61184) [Errno 2] No such file or directory: u'/var/lib/pulp/uploads/jfryman/selinux-0.3.1.tar.gz'
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184) Traceback (most recent call last):
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)   File "/usr/lib/python2.7/site-packages/pulp_puppet/plugins/importers/importer.py", line 82, in upload_un
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)     conduit)
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)   File "/usr/lib/python2.7/site-packages/pulp_puppet/plugins/importers/upload.py", line 43, in handle_uplo
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)     shutil.move(file_path, new_file_path)
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)   File "/usr/lib64/python2.7/shutil.py", line 301, in move
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)     copy2(src, real_dst)
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)   File "/usr/lib64/python2.7/shutil.py", line 130, in copy2
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)     copyfile(src, dst)
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)   File "/usr/lib64/python2.7/shutil.py", line 83, in copyfile
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184)     with open(dst, 'wb') as fdst:
pulp_puppet.plugins.importers.importer:ERROR: (15938-61184) IOError: [Errno 2] No such file or directory: u'/var/lib/pulp/uploads/jfryman/selinux-0.3.1.tar.gz'
pulp.server.managers.content.upload:ERROR: (15938-61184) Error from the importer while importing uploaded unit to repository [Default_Organization-Puppet-puppet-uploa
pulp.server.managers.content.upload:ERROR: (15938-61184) Traceback (most recent call last):
pulp.server.managers.content.upload:ERROR: (15938-61184)   File "/usr/lib/python2.7/site-packages/pulp/server/managers/content/upload.py", line 223, in import_uploade
pulp.server.managers.content.upload:ERROR: (15938-61184)     unit_type=unit_type_id, summary=result['summary'], details=result['details']
pulp.server.managers.content.upload:ERROR: (15938-61184) PulpCodedException: The importer puppet_importer indicated a failed response when uploading puppet_module uni
pulp.server.async.tasks:INFO: Task failed : [467a14bb-f22d-4604-9a0f-218c667266fe] : The importer puppet_importer indicated a failed response when uploading puppet_mo
celery.worker.job:INFO: Task pulp.server.managers.content.upload.import_uploaded_unit[467a14bb-f22d-4604-9a0f-218c667266fe] raised expected: PulpCodedException()

Associated revisions

Revision dbcffd79 View on GitHub
Added by ipanova@redhat.com over 4 years ago

Fix module upload failure when module's name is in format author/name.

closes #1950 https://pulp.plan.io/issues/1950

History

#1 Updated by mmccune@redhat.com over 4 years ago

  • Severity changed from 2. Medium to 3. High

#4 Updated by amacdona@redhat.com over 4 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to amacdona@redhat.com

#5 Updated by amacdona@redhat.com over 4 years ago

What stands out to me (before actually looking into it) is that the file name is `jfryman-selinux-0.3.1.tar.gz` but it is trying to write to `/var/lib/pulp/uploads/jfryman/selinux-0.3.1.tar.gz`

#6 Updated by bmbouter over 4 years ago

  • Priority changed from Normal to Urgent
  • Platform Release set to 2.8.5
  • Triaged changed from No to Yes

#7 Updated by ipanova@redhat.com over 4 years ago

  • Assignee changed from amacdona@redhat.com to ipanova@redhat.com

#8 Updated by ipanova@redhat.com over 4 years ago

  • Status changed from ASSIGNED to POST

#9 Updated by ipanova@redhat.com over 4 years ago

Steps to verify:
1. create puppet repo
2. upload puppet module A( make sure that in module's metadata.json name is in format 'author/name')
3. upload puppet module B( make sure that in module's metadata.json name is in format 'author-name')
4. Check that both modules we successfully uploaded and there are no tracebacks in the logs.

#10 Updated by ipanova@redhat.com over 4 years ago

  • Sprint/Milestone set to 21

#11 Updated by bmbouter over 4 years ago

@ipanova Great job fixing this and filing a Pulp smash test description for it! I put a link to that description here as a reference: https://github.com/PulpQE/pulp-smash/issues/277

#12 Updated by ipanova@redhat.com over 4 years ago

  • Status changed from POST to MODIFIED
  • % Done changed from 0 to 100

#13 Updated by semyers over 4 years ago

  • Status changed from MODIFIED to 5

#14 Updated by pthomas@redhat.com over 4 years ago

  • Status changed from 5 to 6

verified

[root@qe-blade-08 ~]# rpm -qa |grep pulp-puppet
pulp-puppet-tools-2.8.5-0.1.beta.el7.noarch
pulp-puppet-plugins-2.8.5-0.1.beta.el7.noarch
pulp-puppet-admin-extensions-2.8.5-0.1.beta.el7.noarch
python-pulp-puppet-common-2.8.5-0.1.beta.el7.noarch
[root@qe-blade-08 ~]# 

[root@qe-blade-08 ~]# pulp-admin puppet repo uploads upload --repo-id puppet-upload -f jfryman-selinux-0.3.1.tar.gz -v
+----------------------------------------------------------------------+
                              Unit Upload
+----------------------------------------------------------------------+

Extracting necessary metadata for each request...
[==================================================] 100%
Analyzing: jfryman-selinux-0.3.1.tar.gz
... completed

Files to be uploaded:
  jfryman-selinux-0.3.1.tar.gz

Creating upload requests on the server...
[==================================================] 100%
Initializing: jfryman-selinux-0.3.1.tar.gz
... completed

Starting upload of selected units. If this process is stopped through ctrl+c,
the uploads will be paused and may be resumed later using the resume command or
canceled entirely using the cancel command.

Uploading: jfryman-selinux-0.3.1.tar.gz
[==================================================] 100%
16519/16519 bytes
... completed

Importing into the repository...
This command may be exited via ctrl+c without affecting the request.

[\]
Running...

Task Succeeded

Deleting the upload request...
... completed

#15 Updated by semyers over 4 years ago

  • Status changed from 6 to CLOSED - CURRENTRELEASE

#17 Updated by bmbouter over 2 years ago

  • Sprint set to Sprint 3

#18 Updated by bmbouter over 2 years ago

  • Sprint/Milestone deleted (21)

#19 Updated by bmbouter over 1 year ago

  • Tags Pulp 2 added

Please register to edit this issue

Also available in: Atom PDF