2020-08-12 14:52:58 +03:00
|
|
|
# Run pre-commit autoupdate every day at midnight
|
|
|
|
# and create a pull request if any changes
|
|
|
|
|
|
|
|
name: Pre-commit auto-update
|
|
|
|
|
|
|
|
on:
|
|
|
|
schedule:
|
2021-12-08 21:18:36 +03:00
|
|
|
- cron: "15 2 * * *"
|
2020-08-12 14:52:58 +03:00
|
|
|
workflow_dispatch: # to trigger manually
|
|
|
|
|
2022-05-07 15:49:24 +03:00
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
|
2020-08-12 14:52:58 +03:00
|
|
|
jobs:
|
|
|
|
auto-update:
|
2021-12-06 14:50:50 +03:00
|
|
|
# Disables this workflow from running in a repository that is not part of the indicated organization/user
|
|
|
|
if: github.repository_owner == 'cookiecutter'
|
2022-05-07 15:49:24 +03:00
|
|
|
permissions:
|
2023-04-15 14:15:15 +03:00
|
|
|
contents: write # for peter-evans/create-pull-request to create branch
|
|
|
|
pull-requests: write # for peter-evans/create-pull-request to create a PR
|
2021-12-06 14:50:50 +03:00
|
|
|
|
2020-08-12 14:52:58 +03:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2023-09-06 22:40:35 +03:00
|
|
|
- uses: actions/checkout@v4
|
2023-12-07 12:20:42 +03:00
|
|
|
- uses: actions/setup-python@v5
|
2021-11-20 01:06:56 +03:00
|
|
|
with:
|
2023-04-15 13:42:33 +03:00
|
|
|
python-version: "3.11"
|
2020-08-12 14:52:58 +03:00
|
|
|
|
2021-11-20 01:06:56 +03:00
|
|
|
- name: Install pre-commit
|
|
|
|
run: pip install pre-commit
|
2020-08-12 14:55:37 +03:00
|
|
|
|
2021-12-08 21:18:36 +03:00
|
|
|
- name: Autoupdate template
|
|
|
|
run: pre-commit autoupdate
|
|
|
|
|
|
|
|
- name: Autoupdate generated projects
|
2021-11-20 01:06:56 +03:00
|
|
|
working-directory: "{{cookiecutter.project_slug}}"
|
|
|
|
run: pre-commit autoupdate
|
2020-08-12 14:52:58 +03:00
|
|
|
|
2021-11-20 01:06:56 +03:00
|
|
|
- name: Create Pull Request
|
2023-04-05 12:32:38 +03:00
|
|
|
uses: peter-evans/create-pull-request@v5
|
2021-11-20 01:06:56 +03:00
|
|
|
with:
|
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
branch: update/pre-commit-autoupdate
|
|
|
|
title: Auto-update pre-commit hooks
|
|
|
|
commit-message: Auto-update pre-commit hooks
|
|
|
|
body: Update versions of tools in pre-commit configs to latest version
|
|
|
|
labels: update
|