Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unable to link to wheels when using relative paths #9

Closed
lbragstad opened this issue Sep 29, 2015 · 2 comments
Closed

unable to link to wheels when using relative paths #9

lbragstad opened this issue Sep 29, 2015 · 2 comments

Comments

@lbragstad
Copy link
Contributor

When passing relative paths to yaprt via the command line, like so:

yaprt --debug build-wheels \
       --report-file "repos/reports/release-report.json" \
       --storage-pool "repos/pools" \
       --link-dir "repos/releases/liberty" \
       --pip-bulk-operation \
       --build-output "/tmp/openstack-wheel-output" \
       --build-dir "/tmp/openstack-builder" \
       --build-requirements

it is possible to get an error like this:

Traceback (most recent call last):
  File "/home/jenkins/.pyenv/versions/default/bin/yaprt", line 11, in <module>
    sys.exit(main())
  File "/home/jenkins/.pyenv/versions/default/lib/python2.7/site-packages/yaprt/executable.py", line 197, in main
    runner(args, *function_args)
  File "/home/jenkins/.pyenv/versions/default/lib/python2.7/site-packages/yaprt/executable.py", line 160, in runner
    action(*function_args)
  File "/home/jenkins/.pyenv/versions/default/lib/python2.7/site-packages/yaprt/wheel_builder.py", line 100, in build_wheels
    force_iterate=True
  File "/home/jenkins/.pyenv/versions/default/lib/python2.7/site-packages/yaprt/wheel_builder.py", line 873, in build_wheels
    self._store_pool()
  File "/home/jenkins/.pyenv/versions/default/lib/python2.7/site-packages/yaprt/wheel_builder.py", line 780, in _store_pool
    wheel_name=os.path.basename(dst_wheel_file)
  File "/home/jenkins/.pyenv/versions/default/lib/python2.7/site-packages/yaprt/wheel_builder.py", line 809, in _create_link
    os.path.join(self.args['link_dir'], wheel_name)
OSError: [Errno 2] No such file or directory

It turns out if you pass relative paths to yaprt (--link-dir "repos/releases/liberty"), it could blow up with this error. The other thing I observed was that the symlinks from the --link-dir to the build pool might not exist, despite the pool being fully populated with the proper wheels.

The easiest work-around for this is to simply use absolute paths.

@cloudnull
Copy link
Owner

@lbragstad - This PR:#10 should fix the issues with relative paths when creating links..

@lbragstad
Copy link
Contributor Author

Yep, I tested out PR #10 and it fixes the issue I was seeing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants