Bump

by gocardless

GitHub Readme.md

Bump

Bump has now been superseded by Dependabot, which we recommend for all your dependency updating needs

Build Status

Bump helps you keep your project's Ruby (Bundler), Node (Yarn) and Python (Pip) dependencies up to date. It:

  • Checks for updates to each of your dependencies.
  • Builds an updated dependency file for each update required.
  • Opens a separate Pull Request for each update, linking to a changelog.

All that's left for you to do is review the change.

Note: to run Bump on Node projects, they need to be using Yarn.

Hosting Bump

You can launch your own instance of Bump via Heroku.

Deploy

Once you've deployed, you'll want to click through to Heroku Scheduler in the list of addons and set up a scheduled task to bump your dependencies each day. You can use the ./bin/bump_dependencies_for_repo script to do this:

bundle exec bin/bump_dependencies_for_repo gocardless/bump bundler

Using Bump from your local machine

You can run Bump locally to kick-off a one-off update of your project's dependencies. Bump will ask you for the project's repository and the package manager for the dependencies you'd like to update.

  1. Pull down bump and install its dependencies:
git clone git@github.com:gocardless/bump.git  # Pull down Bump
cd bump && bundle install                     # Install Bump's dependencies
cp config/dummy_env .env                      # Set up your environment

# You'll also need to update the `BUMP_GITHUB_TOKEN` in .env to be a valid
# token with access to your project and all of its private dependencies.
  1. Start a worker for each queue. We use foreman to automate the process:
bundle exec foreman start
  1. In a new window, push a message to DependencyFileFetcher (the first of Bump's services):
bundle exec bin/bump_dependencies_for_repo

The code / contributing

The core logic behind Bump lives in bump-core.


GoCardless ♥ open source. If you do too, come join us.