Я новичок в Jenkins, поэтому я следую этому уроку: https://www.jenkins.io/doc/tutorials/build-a-python-app-with-pyinstaller/#setup -Wizard
Когда я строил проект, этапы сборки и тестирования не встретили проблем, но на этапе доставки произошла ошибка.
Это журнал:
+ pwd
+ docker run -v /var/jenkins_home/jobs/python/workspace/8/sources:/src cdrx/pyinstaller-linux:python3 'pyinstaller -F add2vals.py'
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
pyinstaller -F add2vals.py
131 INFO: PyInstaller: 3.6
132 INFO: Python: 3.7.5
134 INFO: Platform: Linux-4.19.76-linuxkit-x86_64-with-debian-wheezy-sid
135 INFO: wrote /src/add2vals.spec
140 INFO: UPX is available.
Traceback (most recent call last):
File "/root/.pyenv/versions/3.7.5/bin/pyinstaller", line 8, in <module>
sys.exit(run())
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/__main__.py", line 114, in run
run_build(pyi_config, spec_file, **vars(args))
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/__main__.py", line 65, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/building/build_main.py", line 734, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/building/build_main.py", line 681, in build
exec(code, spec_namespace)
File "/src/add2vals.spec", line 17, in <module>
noarchive=False)
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/building/build_main.py", line 191, in __init__
raise ValueError("script '%s' not found" % script)
ValueError: script '/src/add2vals.py' not found
script returned exit code 1
Я сравнил его с журналом из учебника и, кроме версии python, есть еще одно отличие:

В системе конфигурации Jenkin я уже добавил глобальную переменную для PYTHONPATH. 
Есть ли какие-то настройки, которые мне не хватает?
РЕДАКТИРОВАТЬ
Я изменил изображение, содержащее журнал в реальном журнале, моя ошибка. Также я не использовал Dockerfile, я следовал инструкциям в руководстве, где он использовал Jenkinsfile, где он загружает изображения для каждой стадии, как указано.
Я не включил шаги на этапе сборки и тестирования, так как нет проблема в их исполнении.
stage('Build') {
agent {
docker {
image 'python:3.7.5'
}
}
}
stage('Test') {
agent {
docker {
image 'qnib/pytest'
}
}
}
stage('Deliver') {
agent any
environment {
VOLUME = '$(pwd)/sources:/src'
IMAGE = 'cdrx/pyinstaller-linux:python2'
}
steps {
dir(path: env.BUILD_ID) {
unstash(name: 'compiled-results')
sh "docker run --rm -v ${VOLUME} ${IMAGE} 'pyinstaller -F add2vals.py'"
}
}
post {
success {
archiveArtifacts "${env.BUILD_ID}/sources/dist/add2vals"
sh "docker run --rm -v ${VOLUME} ${IMAGE} 'rm -rf build dist'"
}
}
}