GitLab CI mysql connect - PullRequest
       2

GitLab CI mysql connect

0 голосов
/ 03 июня 2019

Я пытаюсь подключиться к MySQL, используя их общие бегуны. Я написал следующий код:

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://' +  db_username + ":" + db_password + "@" + db_host + ":" + db_port + "/" + db_name + "?host="+ db_host + "?port=" + db_port

db_username = XXX
db_password = XXX
db_host = mysql
db_port = 3306
db_name = XXX

И следующий .gitlab-ci.yml:

image: python:3.6-stretch

services:
  - mysql:latest

variables:
  FLASK_APP: "program.py"
  MYSQL_DATABASE: XXX
  MYSQL_ROOT_PASSWORD: "XXX"

install_dependencies:
  stage: build
  script:
    - apt update && apt upgrade -y
    - pip install pipenv
    - pipenv install

run_unit_tests:
  stage: test
  script:
    - apt update && apt upgrade -y
    - pip install pipenv
    - pipenv install
    - pipenv run pytest -s

Когда запускается бегун, я получаю следующую ошибку в задании run_unit_tests:

'Can\'t connect to local MySQL server through socket \'/var/run/mysqld/mysqld.sock\' 

1 Ответ

0 голосов
/ 11 июня 2019

Вы сконфигурировали ваше приложение python для использования хоста db mysql?

Host: mysql
User: root

Если это не поможет, попробуйте сначала установить mysql-client в образе python:

install_dependencies:
  stage: build
  script:
    - apt update && apt upgrade -y && apt install -y mysql-client
    - pip install pipenv
    - pipenv install
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...