abhi's logbook

Adventures in coding and coding for adventures.

Jekyll Branch Deployment

A tool which deploys a branch to a separate staging environments which is tied to Github.

The flow should be the following:

  • Git commit is pushed.
  • Post receive hook is received and we take those to build alternate the site and deploy it. Should do so for pull requests as well.
  • Take all the branches and push it to different stage environments

This can be achieved in the following way:

  • Docker image which contains:
    • Jekyll
    • Post-Hook Receiving App
    • Nginx
  • A post hook is received.
  • App essentially keeps track of all the branches and their commits.
    • If a branch is created or updated then it causes a regeneration.
    • There should be a folder generated in static.
      • These folders should be the subdomains that are generated.