Tôi đang cố gắng để Tox và Conda chơi cùng nhau tốt. Chủ yếu là bởi vì tôi có rất nhiều phụ thuộc không phải python cần phải được cài đặt và thật dễ dàng để tạo ra các bản phân phối Conda. Sau đó, tôi có thể cài đặt mọi thứ với một đơn giản conda install
.Lỗi khi sử dụng nguồn trong tập tin Tox ini python
Tuy nhiên, tôi đang gặp sự cố khi kích hoạt môi trường conda.
[tox]
envlist = py27
[testenv]
whitelist_externals =
conda
source
py.test
setenv =
PYTHONPATH = {toxinidir}:{toxinidir}/damlarces
install_command =
python build_env.py --conda-env {toxworkdir}/conda {packages}
commands =
source activate {toxworkdir}/conda
py.test --basetemp={envtmpdir}
Các python build_env.py --conda-env {toxworkdir}/conda {packages}
chăm sóc của việc tạo ra môi trường (nếu cần), cài đặt các gói, vv Vấn đề này được đưa ra tại dòng source activate {toxworkdir}/conda
. Tôi gặp lỗi ERROR: InvocationError: could not find executable 'source'
. Gõ lệnh trực tiếp vào dòng lệnh hoạt động tốt.
Dành cho những người quan tâm. Các build_env.py
là trong Gist này: https://gist.github.com/JudoWill/70450979353fa2d12823 ... Hiện tại của nó chỉ cài đặt Python phụ thuộc nhưng trong môi trường dự định của nó nó sẽ được cài đặt Conda của repo mà không nhất thiết phải python thư viện. Bất kỳ suy nghĩ nào?
Tôi không biết cả về conda lẫn độc tố, nhưng vì dường như bạn có thể thực thi các script python theo cách này, bạn không thể viết một kịch bản để bao hàm lệnh đó thành 'source', tương tự' build_env.py'? –
Đã thử điều đó. Do cách Tox hoạt động, shell bị mất giữa các phần 'install_command' và' commands' của chạy. Tôi cũng đã cố gắng đóng gói hai 'lệnh' thành một bash-script duy nhất. Điều này cũng cung cấp và 'InvocationError'. – JudoWill
Bạn có thể hiển thị nội dung bên trong 'build_env.py' không? Cảm ơn. – alecxe