小编典典

如何为Django应用程序编写Groovy Jenkins文件来运行测试?

jenkins

我最近开始使用Jenkins,并且希望使用Multibranch Pipelines,以便可以测试项目中的各种功能分支。

该项目正在使用django 1.8。到目前为止,我的Jenkinsfile看起来像这样,并且在测试阶段失败了,因为django即使存在也找不到我的设置文件:

node {
    // Mark the code checkout 'stage'....
    stage 'Checkout'

    // Get the code from a GitHub repository
    git credentialsId: 'mycredentials', url: 'https://github.com/<user>/<project>/'

    // Mark the code build 'stage'....
    stage 'Build'

    env.WORKSPACE = pwd()

    sh 'virtualenv --python=python34 venv'
    sh 'source venv/bin/activate'

    sh 'pip install -r requirements.txt'

    env.DJANGO_SETTINGS_MODULE = "<appname>.settings.jenkins"

    // Start the tests
    stage 'Test'
    sh 'python34 manage.py test --keepdb'
}

阅读 248

收藏
2020-07-25

共1个答案

小编典典

venv/bin/activate 只是建立适当的环境路径而已。

您可以通过在开头添加(假设这env.WORKSPACE是您的项目目录)来自己完成操作:

env.PATH="${env.WORKSPACE}/venv/bin:/usr/bin:${env.PATH}"

以后,如果要调用virtualenved python,只需在其前面加上指定的路径即可,例如:

stage 'Test'
sh "${env.WORKSPACE}/venv/bin/python34 manage.py test --keepdb'

或致电点子

sh "${env.WORKSPACE}/venv/bin/pip install -r requirements.txt"
2020-07-25