У меня есть репозиторий на github, который интегрирован с Трэвисом. Я сейчас пытаюсь перейти на докер и Дженкинс, и ничего не работает
Я в основном хочу создать виртуальную среду внутри докера, а затем запустить приложение + тесты.
Файл yml, используемый Travis:
os:
- linux
- windows
- osx
jobs:
allow_failures:
- os: windows
- os: oxx
language: python
python:
- "3.8"
# command to install dependencies
#virtualenv:
# system_site_packages: true
before_install:
python -m pip install --upgrade pip
install:
- pip install -r requirements_test.txt
before_script:
cd flask/section5/
script:
- python create_table.py
- python myapp.py &
- nose2
и это работает
Затем я попытался воспроизвести нечто подобное в Jenkins, используя скрипт оболочки, который выглядит следующим образом
PATH=$WORKSPACE/venv/bin:~/pythonflask/bin:$PATH
if [ ! -d "venv" ]; then
virtualenv venv
fi
. venv/bin/activate
pip install -r requirements_test.txt --download-cache=/tmp/$JOB_NAME
. venv/bin/activate
cd flask/section5
python create_table.py
python myapp.py &
nose2
~ / python flask / bin - это расположение на моей локальной машине python virtualenv. Сбой сборки с этим выводом
18:04:08 Started by user admin
18:04:08 Running as SYSTEM
18:04:08 Building in workspace /var/jenkins_home/workspace/flaskapp
18:04:08 [WS-CLEANUP] Deleting project workspace...
18:04:08 [WS-CLEANUP] Deferred wipeout is used...
18:04:08 No credentials specified
18:04:08 Cloning the remote Git repository
18:04:08 Cloning repository https://github.com/bruvio/myflask.git
18:04:08 > git init /var/jenkins_home/workspace/flaskapp # timeout=10
18:04:08 Fetching upstream changes from https://github.com/bruvio/myflask.git
18:04:08 > git --version # timeout=10
18:04:08 > git fetch --tags --progress -- https://github.com/bruvio/myflask.git +refs/heads/*:refs/remotes/origin/* # timeout=10
18:04:11 > git config remote.origin.url https://github.com/bruvio/myflask.git # timeout=10
18:04:11 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
18:04:11 > git config remote.origin.url https://github.com/bruvio/myflask.git # timeout=10
18:04:11 Fetching upstream changes from https://github.com/bruvio/myflask.git
18:04:11 > git fetch --tags --progress -- https://github.com/bruvio/myflask.git +refs/heads/*:refs/remotes/origin/* # timeout=10
18:04:12 > git rev-parse refs/remotes/origin/master^{commit} # timeout=10
18:04:12 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10
18:04:12 Checking out Revision 94840f1b4bf14d5ffa5653f1fd7ed262da24fd20 (refs/remotes/origin/master)
18:04:12 > git config core.sparsecheckout # timeout=10
18:04:12 > git checkout -f 94840f1b4bf14d5ffa5653f1fd7ed262da24fd20 # timeout=10
18:04:16 Commit message: "allowing failures in osx12"
18:04:16 First time build. Skipping changelog.
18:04:16 [flaskapp] $ /bin/sh -xe /tmp/jenkins2865432921617499103.sh
18:04:16 + PATH=/var/jenkins_home/workspace/flaskapp/venv/bin:/var/jenkins_home/pythonflask/bin:/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
18:04:16 + [ ! -d venv ]
18:04:16 + virtualenv venv
18:04:16 /tmp/jenkins2865432921617499103.sh: 6: /tmp/jenkins2865432921617499103.sh: virtualenv: not found
18:04:16 Build step 'Execute shell' marked build as failure
18:04:16 Recording test results
18:04:16 ERROR: Step ‘Publish JUnit test result report’ failed: No test report files were found. Configuration error?
18:04:16 Finished: FAILURE
интересно что я делаю не так
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.