On Tue, Mar 27, 2018 at 6:47 Ariel Weisberg <ar...@weisberg.ws> wrote:

> Hi,
>
> Are you deleting the venv before creating it? You shouldn't really need to
> use sudo for the virtualenv. That is going to make things potentially
> wonky. Naming it cassandra-dtest might also do something wonky if you have
> a cassandra-dtest directory already. I usually name it just venv and place
> it in the same subdir as the requirements file.
>
> Also running sudo is going to create a new shell and then exit the shell
> immediately so when you install the requirements it might be doing it not
> in the venv, but in whatever is going on inside the sudo shell.


Yep, looking at the logs, that's probably the issue. When activating a venv
(with `source .../bin/activate`), it sets environment variables (`PATH`,
`PYTHONHOME` etc.) so that the virtualenv's Python, pip are used instead of
the system Python and pip. sudo defaults to using a clean PATH and
resetting most of the user's environment, so the effects of the venv are
lost when running in sudo.


The advantage of virtualenv is not needing to mess with system packages at
> all so sudo is inadvisable when creating, activating, and pip installing
> things.
>
> You might need to use pip3 instead of pip, but I suspect that in a correct
> venv pip is going to point to pip3.
>
> Ariel
>
> On Mon, Mar 26, 2018, at 5:31 PM, Tyagi, Preetika wrote:
> > Yes, that's correct. I followed README and ran all below steps to create
> > virtualenv. Attached is the output of all commands I ran successfully
> > except the last one i.e. pytest.
> >
> > Could you please let me know if you see anything wrong or missing?
> >
> > Thanks,
> > Preetika
> >
> > -----Original Message-----
> > From: Ariel Weisberg [mailto:ar...@weisberg.ws]
> > Sent: Monday, March 26, 2018 9:32 AM
> > To: dev@cassandra.apache.org
> > Subject: Re: question on running cassandra-dtests
> >
> > Hi,
> >
> > Your environment is python 2.7 when it should be python 3.
> > See:
> > >   File "/usr/local/lib/python2.7/dist-packages/_pytest/assertion/
> > > rewrite.py", line 213, in load_module
> >
> > Are you using virtualenv to create a python 3 environment to use with
> the tests?
> >
> > From README.md:
> >
> > **Note**: While virtualenv isn't strictly required, using virtualenv is
> > almost always the quickest path to success as it provides common base
> > setup across various configurations.
> >
> > 1. Install virtualenv: ``pip install virtualenv`` 2. Create a new
> > virtualenv: ``virtualenv --python=python3 --no-site-packages ~/dtest``
> > 3. Switch/Activate the new virtualenv: ``source ~/dtest/bin/activate``
> > 4. Install remaining DTest Python dependencies: ``pip install -r /path/
> > to/cassandra-dtest/requirements.txt``
> >
> > Regards,
> > Ariel
> >
> > On Mon, Mar 26, 2018, at 11:13 AM, Tyagi, Preetika wrote:
> > > I was able to run requirements.txt with success. Below is the error I
> get:
> > >
> > > Traceback (most recent call last):
> > >   File "/usr/local/lib/python2.7/dist-packages/_pytest/config.py",
> > > line 371, in _importconftest
> > >     mod = conftestpath.pyimport()
> > >   File "/usr/local/lib/python2.7/dist-packages/py/_path/local.py",
> > > line 668, in pyimport
> > >     __import__(modname)
> > >   File "/usr/local/lib/python2.7/dist-packages/_pytest/assertion/
> > > rewrite.py", line 213, in load_module
> > >     py.builtin.exec_(co, mod.__dict__)
> > >   File "/usr/local/lib/python2.7/dist-packages/py/_builtin.py", line
> > > 221, in exec_
> > >     exec2(obj, globals, locals)
> > >   File "<string>", line 7, in exec2
> > >   File "/home/<path to conftest.py>/conftest.py", line 11, in <module>
> > >     from itertools import zip_longest
> > > ImportError: cannot import name zip_longest
> > > ERROR: could not load /home/<path to conftest.py>/conftest.py
> > >
> > > Thanks,
> > > Preetika
> > >
> > > -----Original Message-----
> > > From: Murukesh Mohanan [mailto:murukesh.moha...@gmail.com]
> > > Sent: Sunday, March 25, 2018 10:48 PM
> > > To: dev@cassandra.apache.org
> > > Subject: Re: question on running cassandra-dtests
> > >
> > > The complete error is needed. I get something similar if I hadn't run
> > > `pip3 install -r requirements.txt`:
> > >
> > > Traceback (most recent call last):
> > >   File "/usr/local/lib/python3.6/site-packages/_pytest/config.py",
> > > line 328, in _getconftestmodules
> > >     return self._path2confmods[path]
> > > KeyError: local('/home/muru/dev/cassandra-dtest')
> > >
> > > During handling of the above exception, another exception occurred:
> > > Traceback (most recent call last):
> > >   File "/usr/local/lib/python3.6/site-packages/_pytest/config.py",
> > > line 359, in _importconftest
> > >     return self._conftestpath2mod[conftestpath]
> > > KeyError: local('/home/muru/dev/cassandra-dtest/conftest.py')
> > >
> > > During handling of the above exception, another exception occurred:
> > > Traceback (most recent call last):
> > >   File "/usr/local/lib/python3.6/site-packages/_pytest/config.py",
> > > line 365, in _importconftest
> > >     mod = conftestpath.pyimport()
> > >   File "/usr/local/lib/python3.6/site-packages/py/_path/local.py",
> > > line 668, in pyimport
> > >     __import__(modname)
> > >   File "/usr/local/lib/python3.6/site-packages/_pytest/assertion/
> > > rewrite.py", line 212, in load_module
> > >     py.builtin.exec_(co, mod.__dict__)
> > >   File "/home/muru/dev/cassandra-dtest/conftest.py", line 13, in
> > > <module>
> > >     from dtest import running_in_docker,
> > > cleanup_docker_environment_before_test_execution
> > >   File "/home/muru/dev/cassandra-dtest/dtest.py", line 12, in <module>
> > >     import cassandra
> > > ModuleNotFoundError: No module named 'cassandra'
> > > ERROR: could not load /home/muru/dev/cassandra-dtest/conftest.py
> > >
> > > Of course, `pip3 install -r requirements.txt` creates an `src`
> > > directory with appropriate branches of ccm and cassandra-driver
> checked out.
> > >
> > > If you have run `pip3 install -r requirements.txt`, then something
> > > else is wrong and we need the complete error log.
> > >
> > > On 2018/03/23 20:22:47, "Tyagi, Preetika" <preetika.ty...@intel.com>
> wrote:
> > > > Hi All,
> > > >
> > > > I am trying to setup and run Cassandra-dtests so that I can write
> some tests for a JIRA ticket I have been working on.
> > > > This is the repo I am using:
> > > > https://github.com/apache/cassandra-dtest
> > > > I followed all the instructions and installed dependencies.
> > > >
> > > > However, when I run "pytest -cassandra-dir=<path to Cassandra source
> > > > root directory>
> > > >
> > > > It throws the error "could not load <some path>/conftest.py.
> > > >
> > > > I checked that this file (conftest.py) exists in Cassandra-dtest
> source root and I'm not sure why it cannot find it. Does anyone have any
> idea what might be going wrong here?
> > > >
> > > > I haven't used dtests before so I wonder if I'm missing something
> here.
> > > >
> > > > Thanks,
> > > > Preetika
> > > >
> > > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> > > For additional commands, e-mail: dev-h...@cassandra.apache.org
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> > > For additional commands, e-mail: dev-h...@cassandra.apache.org
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> > For additional commands, e-mail: dev-h...@cassandra.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> > For additional commands, e-mail: dev-h...@cassandra.apache.org
> > Email had 1 attachment:
> > + dtests_logs.txt
> >   9k (text/plain)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: dev-h...@cassandra.apache.org
>
> --

Murukesh Mohanan,
Yahoo! Japan

Reply via email to