Как использовать python и mongodb на gitlab (CI / CD) - PullRequest
0 голосов
/ 14 декабря 2018

У меня проблема, когда я использовал CI / CD на gitlab.Я всегда использую "python: latest", но это версия 2.7.5, но я хочу использовать python2.7.15 или python3.7.Как я могу установить его?

-

image: python:latest

services:
  - mongo:latest

variables:
  MONGO_DB: ipc_alert

cache:
  paths:
  - ~/.cache/pip/

before_script:
  - python -V 
  - pip install -r req.txt

stages:
  - test

test:
  stage: test
  script:
   - echo 'Testing'

1 Ответ

0 голосов
/ 14 декабря 2018

На изображении, которое вы публикуете, у вас другая проблема.Вы не можете найти django в действительной версии для ваших требований.

По поводу самого вопроса: если вы хотите провести тестирование на нескольких версиях, вам нужно создать более одного теста.Например:

test:
  stage: test
  script:
   - echo 'Testing'

Это будет:

test-python2.7:
  stage: test
  image: python:2.7
  script:
   - echo 'Testing'
test-python3.4:
  stage: test
  image: python:3.4
  script:
   - echo 'Testing'
test-python3.5:
  stage: test
  image: python:3.5
  script:
   - echo 'Testing'
test-python3.6:
  stage: test
  image: python:3.6
  script:
   - echo 'Testing'
test-python3.7:
  stage: test
  image: python:3.7
  script:
   - echo 'Testing'
test-python.latest:
  stage: test
  image: python:latest
  script:
   - echo 'Testing'

Однако, возможно, это не сработает, потому что вы используете «Исполнитель оболочки».Если я правильно помню, этот бегун выполнит ваш код на текущей машине.Вам нужно установить докер и создать нового бегуна, который использует эти докеры.Без этого вы не сможете проводить тестирование в разных средах / версиях.

Единственное исключение из этого - если у вас есть все версии Python, которые вам нужны, и на каждом компьютере вызывается каждая конкретная версия Python.Это зависит от вашей среды, но вы можете проверить / usr / bin, если у вас есть несколько версий Python.На моей машине у меня есть / usr / bin:

maqui@kanade:~$ python -V
Python 2.7.15+
maqui@kanade:~$ python2.6 -V
Python 2.6.8
maqui@kanade:~$ python2.7 -V
Python 2.7.15+
maqui@kanade:~$ python3.6 -V
Python 3.6.8rc1
maqui@kanade:~$ python3.7 -V
Python 3.7.2rc1

(Как видите, python - псевдоним для python2.7).

...