fleet/infrastructure/sandbox
Zachary Winnerman 9338fcbcbd
Fleet Sandbox (#5079)
* Add code for the shared infra part of the demo environment

* Checkin

* checkin

* Checkin for pre-provisioner, got terraform working

* Checkin with the pre-deployer working, now blocked by helm chart

* Add interface for helm

* Add some initial code for the JIT Provisioner lambda

Lots of code taken from https://gitlab.com/hmajid2301/articles/-/tree/master/41.%20Create%20a%20webapp%20with%20fizz

* Update helm chart to work with shared infra (#5621)

* Update helm chart to work with shared infra

* Update helm chart README to reflect changes.

* Checkin

* Checkin

* Checkin, Pre-provisioner actually works

* PreProvisioner is now complete

* Make changes to the JIT provisioner based off of actually learning how
to do stuff

* checkin

* Check in, broken currently

* Add all code except provisioning and emailing user

* Checkin

* Checkin, fixed kubernetes

* Checkin

* Forgot a file

* Finish jit provisioner, need to test now

* Checkin, switching to nginx ingress

* Fleets are now actually accessible

* JITProvisioner now returns working fleet instances

* Deprovisioner code done, just need a few bugs fixed

* Fix the deprovisioner so it works now and re-ip

* fixup

* Finished testing the deprovisioner

* Added monitoring and fixed some bugs

* Add stuff for #6548

* fixed per luke's suggestion

* Fix for inactive task definition arns

* move everything to the prod account

* Bump fleet version and fix a couple of bugs

* Fix a couple of bugs

* Lots of security fixes and a few bug fixes

* Rename demo to sandbox to match product's naming

* Revert "Update helm chart to work with shared infra (#5621)"

This reverts commit 610bbd1c00338620f6cc65fe2aff86139551f465.

Co-authored-by: Robert Fairburn <8029478+rfairburn@users.noreply.github.com>
2022-07-19 13:56:53 -05:00
..
JITProvisioner Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
Monitoring Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
PreProvisioner Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
SharedInfrastructure Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
.gitignore Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
backend-prod.conf Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
main.tf Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00
readme.md Fleet Sandbox (#5079) 2022-07-19 13:56:53 -05:00

Terraform for the Fleet Demo Environment

This folder holds the infrastructure code for Fleet's demo environment. See https://github.com/fleetdm/fleet-infra/pull/3 for design documentation.

The interface into this code is designed to be minimal. If you require changes beyond whats described here, contact @zwinnerman-fleetdm.

Deploying your code to the loadtesting environment

  1. Initialize your terraform environment with terraform init
  2. Check out the appropiate workspace for your code, for instance terraform workspace select production
  3. Apply terraform with your branch name with terraform apply -var tag=BRANCH_NAME -var-file production.tfvars

Bugs

  1. module.shared-infrastructure.kubernetes_manifest.targetgroupbinding is bugged sometimes, if it gives issues just comment it out
  2. on a fresh apply, module.shared-infrastructure.aws_acm_certificate.main will have to be targeted first, then a normal apply can follow
  3. If errors happen, see if applying again will fix it