繁体   English   中英

Conda Activate Env适用于bash但不适用于Fabric

[英]Conda activate env works in bash but not fabric

我正在Ubuntu 16.04 VPS上使用Fabric和python 3.6。 如果我使用ssh并使用bash可以执行以下操作:

deploy@server:~$ conda info --envs
# conda environments:
#
python-devel             /home/deploy/miniconda3/envs/python-devel
test                     /home/deploy/miniconda3/envs/test
root                  *  /home/deploy/miniconda3

deploy@server:~$ source activate test
(test) deploy@server:~$

我具有以下结构功能:

def _update_conda_env(site_folder, host):
......

    run(f'source ~/miniconda3/bin/activate test')
    run(f'~/miniconda3/bin/conda info --envs')

给出输出:

[deploy@mysite.org] run: source ~/miniconda3/bin/activate test
[deploy@mysite.org] run: ~/miniconda3/bin/conda info --envs
[deploy@mysite.org] out: # conda environments:
[deploy@mysite.org] out: #
[deploy@mysite.org] out: python-devel             /home/deploy/miniconda3/envs/python-devel
[deploy@mysite.org] out: test                     /home/deploy/miniconda3/envs/test
[deploy@mysite.org] out: root                  *  /home/deploy/miniconda3
[deploy@mysite.org] out: 
[deploy@mysite.org] out: 


Done.
Disconnecting from deploy@mysite.org... done.

我如何才能在面料上使用它

除非您使用prefix否则您的activate仅保持一个周期有效。

with prefix('source ~/miniconda3/bin/activate test'):
    run(f'~/miniconda3/bin/conda info --envs')

这样,您的运行块中的所有内容都将以source ~/miniconda3/bin/activate test &&为前缀

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM