如何通过 Jenkinsfile 激活 conda 环境?

How can you activate a conda environment through a Jenkinsfile?

通过终端,就像 source activate MyCondaEnv 一样简单,但是如果我在 Jenkinsfile 中尝试:

sh '. /home/rwardrup/anaconda3/bin/activate MyCondaEnv',

Jenkins 控制台 returns:

Running shell script
+ . /home/rwardrup/anaconda3/bin/activate MyCondaEnv
+ [[ -n ]]
/var/lib/jenkins/workspace/testing/features@tmp/durable-bb4a4c30/script.sh: 4: /home/rwardrup/anaconda3/bin/activate: [[: not found
+ [[ -n ]]
/var/lib/jenkins/workspace/testing/features@tmp/durable-bb4a4c30/script.sh: 7: /home/rwardrup/anaconda3/bin/activate: [[: not found
+ echo Only bash and zsh are supported
Only bash and zsh are supported
+ return 1

我试过在其中加入一些小东西:sh '$!/bin/bash. /home/rwardrup/anaconda3/bin/activate MyCondaEnv',认为它可能与此有关,我得到:

Running shell script
+ /bin/bash. /home/rwardrup/anaconda3/bin/activate MyCondaEnv
/var/lib/jenkins/workspace/testing/features@tmp/durable-2a550d19/script.sh: 2: /var/lib/jenkins/workspace/testing/features@tmp/durable-2a550d19/script.sh: /bin/bash.: not found

有什么方法可以通过Jenkinsfile激活和使用Conda环境吗?我找到了一些关于使用 的信息,但在我的情况下不起作用。

shebang 的语法似乎不正确,后面缺少换行符。

试试这个:

sh '''#!/bin/bash
     . /home/rwardrup/anaconda3/bin/activate MyCondaEnv
'''