postfacto
postfacto copied to clipboard
Alex can deploy Postfacto to Heroku without leaving the web browser
As Alex I want the ability to deploy Postfacto to Heroku without leaving the web browser So that I can setup Postfacto without needing to be familiar with the console
ACCEPTANCE
Given I am on the Postfacto README file When I click the 'Deploy to Heroku' button Then I am prompted to login to Heroku, choose an App name, and region And can successfully deploy Postfacto without leaving the browser
I've been doing some work on https://github.com/textbook/postfacto/tree/feat-combine-artifacts to move towards a single deployment artifact. However, the Heroku buildpacks seem pretty strict around requiring the app to be in the root of the repository. We can get around this for the Node part of the build by having a second package.json
at the root that just proxies commands into the web/
directory, but with the Ruby app we may have to move it out of api/
and make it the root of the repository. (cc @crswty)
From the Heroku blog:
The 'Deploy to Heroku' Button
What if deploying your app was as easy as clicking a button? With the 'Deploy to Heroku' button, it is! It’s great for taking an app for a test run with default settings in a single click, or to help train new developers.
This button acts as a shortcut allowing you to deploy an app to Heroku from a web browser. This is great for apps that you provide to your users or customers, such as open source projects. You can parameterize each button with different settings such as passing custom environment variables to Heroku, using a specific Git branch or providing OAuth keys. The only requirements are that your source code is hosted in a GitHub repository and that you add a valid
app.json
file to the project's root directory. We’ve even heard of one company that adds a button to the README for each of their internal services. This forces them to keep the deploy process simple and aids new hires getting up to speed with how services are deployed.Pros:
- Easy to add to a project's README file or web page
- Easy to use: simply click the button to deploy the app
- Provides a template with preconfigured default values, environment variables, and parameters
Cons:
- Does not support Git submodules
- Apps deployed via button do not auto-update when new commits are added to the GitHub repo from which it was deployed
- Not a good workflow for apps that you need to keep up to date because buttons can only create new apps and the deployed app is not automatically connected to the GitHub repo from which it came