Project

Profile

Help

Issue #1950

closed

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

Added by mmccune@redhat.com over 8 years ago. Updated over 5 years 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()
Actions #1

Updated by mmccune@redhat.com over 8 years ago

  • Severity changed from 2. Medium to 3. High
Actions #4

Updated by amacdona@redhat.com over 8 years ago

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

Updated by amacdona@redhat.com over 8 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`

Actions #6

Updated by bmbouter over 8 years ago

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

Updated by ipanova@redhat.com over 8 years ago

  • Assignee changed from amacdona@redhat.com to ipanova@redhat.com
Actions #8

Updated by ipanova@redhat.com over 8 years ago

  • Status changed from ASSIGNED to POST
Actions #9

Updated by ipanova@redhat.com over 8 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.

Actions #10

Updated by ipanova@redhat.com over 8 years ago

  • Sprint/Milestone set to 21
Actions #11

Updated by bmbouter over 8 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

Added by ipanova@redhat.com over 8 years ago

Revision dbcffd79 | View on GitHub

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

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

Actions #12

Updated by ipanova@redhat.com over 8 years ago

  • Status changed from POST to MODIFIED
  • % Done changed from 0 to 100
Actions #13

Updated by semyers over 8 years ago

  • Status changed from MODIFIED to 5
Actions #14

Updated by pthomas@redhat.com over 8 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
Actions #15

Updated by semyers over 8 years ago

  • Status changed from 6 to CLOSED - CURRENTRELEASE
Actions #17

Updated by bmbouter over 6 years ago

  • Sprint set to Sprint 3
Actions #18

Updated by bmbouter over 6 years ago

  • Sprint/Milestone deleted (21)
Actions #19

Updated by bmbouter over 5 years ago

  • Tags Pulp 2 added

Also available in: Atom PDF