linkedin / linkedin/pygradle

Running integTests in pygradle-plugin directory modifies python libraries and causes python startup to fail

Open
#179 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
603
Forks
142
PR merge metrics
No merged PRs in 30d

Description

Python is installed via brew (python2.7) and python binary is used from /usr/local/Cellar/python/2.7.14_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7

```pygradle-plugin$ python
Python 2.7.14 (default, Jan 6 2018, 12:16:16)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from _struct import *
>>>

drwxr-xr-x 127 admin 4.0K Jan 9 08:39 encodings
drwxr-xr-x 13 admin 416B Jan 9 08:39 config

Now, running tests from inside pygradle-plugin directory:
pygradle-plugin$ ../gradlew integTest

leads to the python libraries being overwritten and the folders are empty.

drwxr-xr-x 2 admin 64B Jan 9 08:43 lib-dynload
drwxr-xr-x 2 admin 64B Jan 9 08:43 encodings
drwxr-xr-x 2 admin 64B Jan 9 08:43 config

python2.7$ python
Python 2.7.14 (default, Jan 6 2018, 12:16:16)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from _struct import *
Traceback (most recent call last):
File "", line 1, in
ImportError: No module named _struct

This is always reproducible by running the integTest from pygradle-plugin directory.

Infact, if you just run PythonPluginIntegrationTest the issue is reproducible, so it does not require the whole set of tests to run.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Run ../gradlew integTest from the pygradle-plugin directory, then isolate PythonPluginIntegrationTest as described. Inspect how that integration test handles the Python libraries; done means the test completes without emptying the Python 2.7 library directories and a subsequent `from _struct import *` succeeds.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.