name: Generate Requirements on: workflow_dispatch: push: paths: - poetry.lock - pyproject.toml - requirements.txt jobs: generate: name: Requirements runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: python-version: 3.8 - uses: Gr1N/setup-poetry@v4 with: path: ~/.cache/pypoetry key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }} restore-keys: ${{ runner.os }}-poetry- - name: Generate dependencies run: | poetry export -f requirements.txt -o requirements.txt - name: Push to repository run: | [[ -z "$(git status -s)" ]] && exit git config user.name github-action git config user.email noreply@github.com git add requirements.txt git commit -am ":pushpin: Update requirements.txt" git push