Skip to content

Commit

Permalink
Update main.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
sanfootball authored May 1, 2024
1 parent 06ee6bf commit 47b7897
Showing 1 changed file with 1 addition and 18 deletions.
19 changes: 1 addition & 18 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,9 @@ 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
Expand All @@ -36,7 +33,6 @@ jobs:
python -m pip install --upgrade pip
pip install flake8==6.0.0 flake8-isort==6.0.0
pip install -r ./backend/requirements.txt
# Этот шаг дополним переменными для доступа к БД
- name: Test with flake8 and django tests
# Добавляем env-переменные для доступа к БД
env:
Expand Down Expand Up @@ -69,19 +65,11 @@ jobs:
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
# Хорошо ли держать логин и пароль прямо в коде workflow?
# Нет, это нехорошо
- name: Push to DockerHub
# Одновременный билд и пуш образа в Docker Hub
uses: docker/build-push-action@v4
with:
# Параметр context: ./backend/ указывает, что нужный Dockerfile
# находится в ./backend/
context: ./backend/
# Параметр push: true указывает, что образ нужно не только собрать,
# но и отправить на Docker Hub
push: true
# В параметре tags задаётся название и тег для образа.
# Для каждого пересобранного образа
# устанавливаем тег latest, чтобы потом
# на сервере и в docker-compose.yml не указывать версию
Expand All @@ -91,10 +79,8 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Set up nodeJS
# Это готовый воркфлоу для установки Node.js на раннер
uses: actions/setup-node@v3
with:
# Это параметр воркфлоу, указывающий нужную версию Node.js
node-version: 18
- name: Install dependencies
# Эта команда устанавливает зависимости для фронтенда
Expand Down Expand Up @@ -144,12 +130,10 @@ jobs:
with:
context: ./gateway/
push: true
# Тут вместо username должен быть ваш логин на Docker Hub
tags: sanfootball/taski_gateway:latest
deploy:
runs-on: ubuntu-latest
needs:
# Дождёмся билда всех образов Taski
- build_and_push_to_docker_hub
- build_frontend_and_push_to_docker_hub
- build_gateway_and_push_to_docker_hub
Expand All @@ -159,7 +143,6 @@ jobs:
# Копируем docker-compose.production.yml на продакшен-сервер
- name: Copy docker-compose.yml via ssh
uses: appleboy/scp-action@master
# Передаём параметры для action appleboy/scp-action:
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USER }}
Expand Down Expand Up @@ -197,4 +180,4 @@ jobs:
with:
to: ${{ secrets.TELEGRAM_TO }}
token: ${{ secrets.TELEGRAM_TOKEN }}
message: Деплой успешно выполнен!
message: Деплой успешно выполнен!

0 comments on commit 47b7897

Please sign in to comment.