我正在按照Push上的说明进行部署,以使用Jenkins测试和部署以python和Flask编写的Google App Engine应用。
测试位于应用程序的根文件夹中,该文件名为 tests.py
tests.py
执行外壳步骤中的命令是
nosetests tests.py
我收到以下错误,由于我对Jenkins相当陌生,因此我不确定如何解决此问题。
Started by user User Name Building remotely on cloud-dev-php in workspace /var/jenkins/workspace/CFC Melbourne production pipeline > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://source.developers.google.com/p/cfc-melbourne-website/ # timeout=10 Fetching upstream changes from https://source.developers.google.com/p/cfc-melbourne-website/ > git --version # timeout=10 using .gitcredentials to set credentials > git config --local credential.helper store --file=/tmp/git7069316934747655973.credentials # timeout=10 > git -c core.askpass=true fetch --tags --progress https://source.developers.google.com/p/cfc-melbourne-website/ +refs/heads/*:refs/remotes/origin/* > git config --local --remove-section credential # timeout=10 > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision 3a8caffa38303b3ae4741aac83e6ac807077b5be (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f 3a8caffa38303b3ae4741aac83e6ac807077b5be > git rev-list 3a8caffa38303b3ae4741aac83e6ac807077b5be # timeout=10 [CFC Melbourne production pipeline] $ /bin/sh -xe /tmp/hudson3364335209750264714.sh + nosetests tests.py /tmp/hudson3364335209750264714.sh: 2: /tmp/hudson3364335209750264714.sh: nosetests: not found Build step 'Execute shell' marked build as failure Finished: FAILURE
这并不是一个真正的Jenkins问题-正如构建输出所指示的那样,您的shell脚本失败了,因为它找不到nosetests可执行文件:
nosetests
nosetests: not found
您确定nose已在cloud-dev- phpJenkins构建机器上安装了它吗?
nose
cloud-dev- php
如果您正在使用该即按即用映像,则应该已经安装了它-但是由于您的构建是在 PHP 构建计算机而不是 Python 计算机上运行的,因此可能并非如此。 您应该仔细检查是否已按照说明进行操作,以确保您的Python Jenkins作业在Python构建机器上运行。
如果 已 安装,则可能不是默认设置PATH,在这种情况下,您可以更改noseteststo 的用法/usr/local/bin/nosetests(或任何路径)。
PATH
/usr/local/bin/nosetests