GithubHelp home page GithubHelp logo

code2040-practice's Introduction

heroku-cd

This project is an example of an application that can be continuously delivered to Heroku through a pipeline based on staging and production environments.

##Installing and running locally

  • Clone the repo
  • Run pip install -r requirements.txt (preferably inside a virtualenv) to install the dependencies
  • Run foreman start [-p port] to run the “hello” app locally
  • Run nosetests to run the unit test
  • Refer to the Heroku docs for information on deploying to Heroku from the command line

##Deployment with CircleCI First, sign up for CircleCI if you haven’t already, fork the repo, and follow it from CircleCI. There is a detailed doc in the CircleCI docs about deployment to Heroku. But the three simple steps you need to perform are:

  1. Enter your Heroku API key in the “Heroku” section of the settings for your project on CircleCI
  2. Setup an SSH key for deployment to Heroku (CircleCI makes this very easy)
  3. Configure your circle.yml file to deploy to Heroku. See circle.yml file in this project for an example (you will need to choose different app names depending on what your apps are called in Heroku).

##The Continuous Delivery Pipeline This project implements continuous delivery with a pipeline based on “staging” and “master” branches that correspond to “staging” and “prod” heroku environments respectively. Feature branches that are ready to merge can first go into staging, where they will built by CircleCI and automatically deployed to the Heroku staging environment. Once deployed to staging, any number of automated or even manual tests can be run before merging into master to push new features into production. Each merge is performed manually in this project, but the merge from staging to master, for example, could be automated.

##See Also

code2040-practice's People

Contributors

bellkev avatar travis avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.