Heroku Button for Private Repos

Last year, we launched Heroku Button to make it simple for developers to deploy open source code to new Heroku apps. Open source contributors can add Heroku Buttons to GitHub READMEs, tutorials and blog posts and make their projects instantly deployable to Heroku, as apps fully provisioned with add-ons and other required configurations. Two months ago we introduced Elements where more than 1700 public Heroku Buttons are profiled alongside add-ons and top buildpacks.

Today, we're happy to announce Heroku Buttons for projects maintained by your team in private GitHub repos. This new feature uses Heroku's GitHub integration to securely deploy code referenced by buttons on private repos.

Buttons for private repos makes it simple to maintain private frameworks and quickstart template apps. Private repo buttons are great for:

  • Onboarding new developers, contractors, and agencies to complex codebases with many dependencies that requires lengthy setup. Error-prone multi-step README getting-started sections can be replaced with a Heroku button that instantly configures an app on Heroku and deploys repo contents.
  • Ensuring consistency when new projects are begun. Your team can maintain template apps for relevant languages, complete with app.json files specifying add-ons and config that comply with requirements for team projects.
  • Profiling best practices by featuring buttons that deploy software and projects you are proud of in company newsletters and docs for colleagues to experiment with and learn from.

Read on for details on how to add Heroku Buttons to private GitHub repos.

Heroku Buttons for private GitHub repos work the same as public ones (though they will not be listed as a Heroku Element), and adding one is a simple two-step process:

  1. Add an app.json file
  2. Add the Heroku Button HTML or MarkDown to the README or doc where you want your button

Note that you must specify a template URL parameter in the button link because GitHub does not send a referer header for private repos. Also note that if a Heroku user that’s not linked to a GitHub account tries to button-deploy a private repo, the user will be prompted to authenticate with GitHub.

Check out the Heroku Button documentation for details

"Heroku's direct integration with the GitHub platform helps developers accelerate and simplify the application deployment process,” said Tim Clem, Product Manager GitHub Platform. “Any development team, whether they are in a startup or large enterprise can now deploy starter templates and apps with the Heroku Button for Private Repos in a single click."

We're incredibly excited to bring Heroku Button to private GitHub repos, to let teams and companies make onboarding faster and more enjoyable, to foster greater project consistency and to promote and profile internal best practices.

Browse the blog archives, subscribe to the full-text feed, or visit the engineering blog.