Обновление зависимостей #23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Обновление зависимостей | |
| on: | |
| schedule: | |
| # Запускается каждое воскресенье в 2:00 UTC | |
| - cron: "0 2 * * 0" | |
| workflow_dispatch: # Позволяет запускать вручную | |
| jobs: | |
| update-deps: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Клонирование кода | |
| uses: actions/checkout@v5 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Настройка Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.11" | |
| cache: "pip" | |
| - name: Установка зависимостей | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r requirements.txt | |
| pip install pip-chill | |
| - name: Обновление зависимостей | |
| run: | | |
| echo "Обновление зависимостей..." | |
| pip install --upgrade $(pip list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1) | |
| - name: Обновление requirements.txt | |
| run: | | |
| echo "Обновление requirements.txt..." | |
| pip-chill --no-version > requirements.txt.new | |
| if ! cmp -s requirements.txt requirements.txt.new; then | |
| mv requirements.txt.new requirements.txt | |
| echo "Зависимости обновлены" | |
| else | |
| echo "Обновления не требуются" | |
| rm requirements.txt.new | |
| fi | |
| - name: Тестирование сборки | |
| run: | | |
| echo "Тестирование сборки с обновленными зависимостями..." | |
| mkdocs build --strict | |
| - name: Создание Pull Request | |
| if: success() | |
| uses: peter-evans/create-pull-request@v7 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| commit-message: "chore: update dependencies" | |
| title: "🤖 Автоматическое обновление зависимостей" | |
| body: | | |
| ## 🔄 Автоматическое обновление зависимостей | |
| Этот PR был автоматически создан для обновления зависимостей проекта. | |
| ### 📋 Изменения | |
| - Обновлены зависимости Python пакетов | |
| - Протестирована сборка с новыми зависимостями | |
| ### ✅ Проверки | |
| - [x] Зависимости обновлены | |
| - [x] Сборка протестирована успешно | |
| ### 🚀 Готово к слиянию | |
| Этот PR безопасен для слияния, так как все тесты пройдены. | |
| branch: update-dependencies | |
| delete-branch: true |