An open API service indexing awesome lists of open source software.

https://github.com/z0mbix/screeningtest-infrastructure

Screening Test Infrastructure Configuration
https://github.com/z0mbix/screeningtest-infrastructure

Last synced: over 1 year ago
JSON representation

Screening Test Infrastructure Configuration

Awesome Lists containing this project

README

          

Screening Test Infrastructure
-----------------------------

This repo sets up the following infrastructure on DigitalOcean:

- 1 x nginx web/load balancer server (web-1)
- 2 x golang app servers (app-{1,2})

All servers are Ubuntu 14.04.

Terraform is used to provision the servers, and uses cloud-init to install, configure and run chef-client, so the servers can register with the Chef server and configure themselves according to their role.

Chef uses the git resource to clone the [screeningtest-app](https://github.com/z0mbix/screeningtest-app) GitHub repo, and uses a simple Makefile to build the go binary. It then creates an upstart init script to manage the service. Chef will pull the latest master branch of this repo, and if there are any changes, it will rebuild the binary and restart the process.

## Requirements

- Linux or Mac OS
- Terraform
- ChefDK
- Hosted Chef account (Including validation key)

Create the file **modules/common/terraform.tf** containing your validation key e.g.:

output "validation_key" {
value = <