57 lines
1.9 KiB
YAML
57 lines
1.9 KiB
YAML
name: FaceSaver
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
pull_request:
|
|
branches: [ "main" ]
|
|
|
|
jobs:
|
|
build-docker:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
# 1. Клонируем репозиторий
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v3
|
|
|
|
# 2. (Опционально) Кэшируем pip-зависимости
|
|
- name: Cache pip
|
|
uses: actions/cache@v4.2.0
|
|
with:
|
|
path: ~/.cache/pip
|
|
key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-pip-
|
|
|
|
# 3. Устанавливаем Python 3.10
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
cache: 'pip' # Дополнительное кэширование pip. Можно отключить, если выше используете ручной кэш.
|
|
|
|
# 4. Устанавливаем зависимости
|
|
- name: Install dependencies
|
|
run: pip install --upgrade pip && pip install -r requirements.txt
|
|
|
|
# 5. Собираем Docker-образ (следите, чтобы Dockerfile учитывал Python)
|
|
- name: Build Docker image
|
|
run: docker build -t face-saver:latest .
|
|
|
|
# 6. (Опционально) Пушим Docker-образ в Docker Hub/GHCR
|
|
# - name: Login to Docker Hub
|
|
# run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u ${{ secrets.DOCKERHUB_USERNAME }} --password-stdin
|
|
#
|
|
# - name: Push Docker image
|
|
# run: docker push face-saver:latest
|
|
|
|
# 7. Отправляем статус в Telegram
|
|
- name: Tele-status
|
|
uses: kohchihao/tele-status@0.0.4
|
|
with:
|
|
# В реальном проекте используйте Secrets!
|
|
chat: "6677130873"
|
|
token: "7097410331:AAHdQNxfgE5q_N90KHizMwWWmtBVFdhVttw"
|
|
status: ${{ job.status }}
|