I'm working in migrating a bunch of legacy projects in the organisation I'm
currently working on from Python 2.7 to Python 3.7.
I've successfully used tox before for a few other personal projects, but
this time I'm facing a situation where I have many dependencies which are
available only via conda packages in an internal conda channel. Basically
the deployable packages are all conda packages, since the company relies
heavily in conda infrastructure to build/deploy/release software.
The "canonical" use case for tox is to be used in combination with PyPI.
While many third-party dependencies packages are available externally on
PyPI, all the dependencies which are built in-house are not (only via
I tried using install_command option to invoke creating a conda environment
based on the top-level package, then removing it and activating the
environment to run the tests with pytest, but didn't get very far in
succeeding with it.
I'd like to know if there are any guidelines, successful cases, hints, or
anything that can point me in the right direction of integrating tox with
In other words, my problem is that I need to install conda packages in the
virtual environments created by tox before running the tests.
Can anyone please kindly shed some light here?
Hello, I'm creating my first tox plugin, and I have some questions.
the plugin is: https://github.com/luzfcb/tox-lambda-autodiscovery
I'm doing an experimental project (closed source) with serverless
framework, aws lambda and django.
aws lambda, allows me to have a requirements.txt file for each lambda
for each folder with lambda function, I also have one or more test files.
( this is necessary because lambda restricts the maximum size of the lambda
function package to 50MB. The package includes all python and non-python
the directory structure looks like this ( do not be surprised with the
camel case, it is restriction imposed by aws Lambda and aws CloudFormation)
*The problem I want to solve:*
I want to avoid creating manually, the tox testenv, for each of these
lambda functions (because in the future there will be hundreds of them.)
I want to avoid doing this.
that is, I want my tox plugin to automatically analyze the project
directories structure, and look for folders that contain a
*requirements.txt* file and that also contain test files, named *test*.py*,
and automatically create, one tox testenv for each of these folders.
my plugin currently can do this. (I do not know if it makes the best way,
but it works).
currently, for it to work, it is only necessary to add
[testenv:lambdaautodiscovery] in your tox.ini
*1* - how create a new variables for substitution ( to work like
What is the correct way to create it?
2 - I have a custom tox testenv, with some extra variables and
configurations, and I would like to use it as a base, to create the others
automatically generated tox testenv.
Am I doing it the right way?
Do you have any suggestions on how to improve this?
*3* - the only thing that still does not work is the main one:
is there any way to defer *command* processing, or any other way to make it
Thank you all for your help.
Any comment is welcome.
Fabio C. Barrionuevo da Luz
Palmas - Tocantins - Brasil - América do Sul