Skip to content

Commit

Permalink
edited main.yml-4
Browse files Browse the repository at this point in the history
  • Loading branch information
OmelchenkoPeter committed Sep 11, 2023
1 parent e98b802 commit 068fdf0
Showing 1 changed file with 32 additions and 16 deletions.
48 changes: 32 additions & 16 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,31 +7,47 @@ on:

jobs:
tests:
# Разворачиваем окружение:
runs-on: ubuntu-latest

# Блок services аналогичен docker-compose.yml
services:
postgres:
image: postgres:13.10
# Указываем имя тестовой базы, имя и пароль пользователя в открытом виде,
# ведь эта база будет работать только во время прогона тестов
env:
POSTGRES_USER: django_user
POSTGRES_PASSWORD: django_password
POSTGRES_DB: django_db
ports:
- 5432:5432
# Эта конструкция описывает проверку готовности сервиса postgres
# Если её не будет, то тесты могут запуститься раньше, чем сервер PostgreSQL
# В результате тесты опять решат, что базы нет, — и упадут
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
# Копируем код проекта
- name: Check out code
uses: actions/checkout@v3
# Устанавливаем Python с помощью action
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
# В action setup-python@v4 передаём параметр — версию Python
with:
python-version: 3.9
# Обновляем pip, устанавливаем flake8 и flake8-isort,
# устанавливаем зависимости проекта

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8==6.0.0 flake8-isort==6.0.0
pip install -r ./backend/requirements.txt
# Запускаем flake8
- name: Test with flake8
# Вызываем flake8 и указываем ему,
# что нужно проверить файлы только в папке backend/
# Этот шаг дополним переменными для доступа к БД
- name: Test with flake8 and django tests
# Добавляем env-переменные для доступа к БД
env:
POSTGRES_USER: django_user
POSTGRES_PASSWORD: django_password
POSTGRES_DB: django_db
# Сервер БД запущен в Docker, но его порт проброшен на хост
# Поэтому подключаемся к 127.0.0.1:5432
DB_HOST: 127.0.0.1
DB_PORT: 5432
run: |
python -m flake8 backend/
cd backend/
python manage.py test
python -m flake8 backend/
cd backend/
python manage.py test

0 comments on commit 068fdf0

Please sign in to comment.