linkedin / pygradle

Using Gradle to build Python projects
https://github.com/linkedin/pygradle
Apache License 2.0
586 stars 147 forks source link

File not found error while executing gunicorn command #342

Open divaybansal opened 4 years ago

divaybansal commented 4 years ago

Below is our gradle setup

buildscript {
    dependencies {
        classpath group: 'com.linkedin.pygradle', name: 'pygradle-plugin', version: '0.12.10'
    }
}
apply plugin: 'com.linkedin.python-web-app'

python {
    testDir = file('tests')
    srcDir = file('src/main/python')
    forceVersion("pypi:flake8:3.2.1")
    if (project.hasProperty("PYTHON_VERSION")) {
        details.pythonVersion = project.get("PYTHON_VERSION")
    }
    if (project.hasProperty("PYTHON_PATH")) {
        details.systemPythonInterpreter = project.get("PYTHON_PATH")
    }

}

We have a Jenkins server that has default python 2.7. We have installed additional python plugin 3.7 but it is not Jenkins server default.

We set the systemPythonInterpreter and pythonVersion values correctly to version 3.7. When we run the gunicorn command this fails with

/usr/bin/env: /opt/path/bin/microservice_appl.pex: No such file or directory

When we build on a local windows machine with only python version 3.7 installed a gunicorn.py file is correctly built and the installation works fine.