Gitlab CI无法识别Windows上的Python

时间:2016-06-28 17:15:03

标签: gitlab gitlab-ci gitlab-ci-runner

我想在我的存储库的根目录中运行py.test(它在本地运行正常)

我已经为Python和Git设置了环境变量(它们工作正常),我的CI运行器连接了我的gitlab repo。但是,当触发构建时,我收到以下消息:

  

gitlab-ci-multi-runner 1.3.1(4911137)
  使用Shell执行程序...
  在XXXXXX上运行......

     

获取更改......

     

HEAD现在位于1aa2135更新.gitlab-ci.yml
  检查1aa21352作为cirunner ......

     

$ py.test

     

' py.test'不被视为内部或外部命令,

     

可操作程序或批处理文件。

     

错误:构建失败:退出状态9009

为什么Shell Executor不能识别Python / py.test?
这是在Windows Server 2012上。

编辑:我想在每次推送到远程

时使用py.test运行单元测试

2 个答案:

答案 0 :(得分:4)

我知道它迟了一年但可能对其他人有用。 您可以在gitlab-ci.yml中设置变量。 然后你只需要设置你的PATH变量和python二进制文件的路径,如下所示:

variables:
  PATH: "C:\\Python27"

然后您可以在任何作业中使用python命令

test:
  script:
    - python unittest.py
    - python regressiontest.py
    ...

答案 1 :(得分:0)

几乎与此answer类似,我只需要在.gitlab-ci.yml中为script提供py.test的完整路径,如下所示:

  

脚本:      - C:\ Users \ Admin \ Python3 \ scripts \ py.test

而不是

  

脚本:       - py.test

并且有效