Skip to content

InfraBits/pipup

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

pipup - Simple requirements updater

A few different tools exist today such as pyup, however they either require a 3rd party service, or are (semi) abandoned.

pipup aims to achieve the goal of automatically updating requirements.txt files, with merging based on passing CI.

Example usage

.pipup.yaml

requirements:
  - requirements.txt
  - requirements-dev.txt
  - requirements-prod.txt
workflows:
  - CI
mirrors:
  - https://pypi.org/pypi/{name}/json

Note: Sane defaults are used without a config file

requirements.txt

pyre-check==0.9.6 # pipup:ignore
pylama==7.7.1 # pipup:version:>=7.7.0,<8.0.0

Note: All dependencies are updated by default

.github/workflows/pipup.yml

name: Update dependencies using pipup
on: {schedule: [{cron: '13 6 * * *'}], push: {branches: [main]}}
permissions: {contents: read}
jobs: {pipup: {runs-on: ubuntu-20.04,
               steps: [{uses: InfraBits/[email protected],
                        with: {github-access-token: '${{ secrets.OVERLORD_PAT }}'}}]}}

Note: Change the schedule/branches to suit the local repository Note: A personal access token is required as the provided access token cannot trigger PR checks :(