Skip to content
/ iplz Public template

Demo project for building, provisioning, and deploying a web service with a single command, using Terraform and Nix.

Notifications You must be signed in to change notification settings

jonascarpay/iplz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iplz: End-to-End Declarative Deployment Demo

End-to-end declarative deployment means having a set of files describing the desired end state of the entire production pipeline, in such a way that we can materialize it with a single command. In this case, that pipeline consists of building, provisioning, and deploying a simple web service to Amazon EC2.

I describe the ideas and methods in detail in the accompanying tutorial blog post.

The iplz application itself is a simple icanhazip.com clone, it echoes the client's IP address back at them. It serves as a stand-in for a larger application, see the binplz.dev repo for how the ideas presented here work in a more complex situation.

Usage

Setup

  1. Configure Terraform with your AWS credentials

  2. Run nix run .#terraform -- init to create Terraform lock files

Building and Deploying

  1. nix run .#terraform -- apply

There is no step 2.

About

Demo project for building, provisioning, and deploying a web service with a single command, using Terraform and Nix.

Topics

Resources

Stars

Watchers

Forks