From f3d9daabab4eddb5808cde3f5a01661e4d9f4cba Mon Sep 17 00:00:00 2001 From: trevor Date: Sat, 28 Dec 2024 11:59:51 +0900 Subject: [PATCH] pipline setting --- .drone.yml | 60 ++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 43 insertions(+), 17 deletions(-) diff --git a/.drone.yml b/.drone.yml index e383e46d..a565ce07 100644 --- a/.drone.yml +++ b/.drone.yml @@ -13,32 +13,23 @@ steps: # Шаг 2: Обновление и запуск с помощью update.sh - name: deploy_app - image: python:3.12-alpine + image: python:3.12 environment: MYSQL_PASSWORD: touchh commands: - chmod +x ./bin/update - ./bin/update - # Шаг 3: Установка зависимостей - - name: install_dependencies - image: python:3.12-alpine - environment: - MYSQL_PASSWORD: touchh - commands: - - chmod +x ./bin/pip3 - - ./bin/pip3 install -r requirements.txt - - # Шаг 4: Миграция базы данных + # Шаг 3: Миграция базы данных - name: run_migrations - image: python:3.12-alpine + image: python:3.12 environment: MYSQL_PASSWORD: touchh commands: - chmod +x ./bin/cli - ./bin/cli migrate - # Шаг 5: Тестирование + # Шаг 4: Тестирование - name: run_tests image: python:3.12-alpine environment: @@ -49,16 +40,51 @@ steps: - python manage.py test services: - # Внутренний сервис базы данных - - name: database_service + # Сервис базы данных + - name: db image: mariadb:11.6 environment: MYSQL_RANDOM_ROOT_PASSWORD: 1 MYSQL_DATABASE: touchh MYSQL_USER: touchh MYSQL_PASSWORD: touchh - tmpfs: - - /var/lib/mysql + volumes: + - name: mysql_data + path: /var/lib/mysql + + # Сервис Django (Web) + - name: web + image: touchh-py + environment: + MYSQL_PASSWORD: touchh + command: ['python3', 'manage.py', 'runserver', '0.0.0.0:8000'] + ports: + - "8000:8000" + depends_on: + - db + + # Сервис Telegram Bot + - name: bot + image: touchh-py + environment: + MYSQL_PASSWORD: touchh + command: ['python3', 'manage.py', 'run_bot'] + depends_on: + - db + + # Сервис планировщика задач + - name: scheduler + image: touchh-py + environment: + MYSQL_PASSWORD: touchh + command: ['python3', 'manage.py', 'start_scheduler'] + depends_on: + - db + +volumes: + - name: mysql_data + host: + path: ./var/mysql trigger: event: