This project is meant to automate the paving of TKG environments, including common extensions, in AWS. It utilizes TKG, Helm, and ArgoCD utilizing the App of Apps pattern
- Fork this repo. Since this is your GitOps source of truth, you must fork rather than simply clone
- Make a copy of vars.yaml.example named vars.yaml in the root directory of your repo.
- Edit vars.yaml, providing configuration values that reflect your desired envornment.
- Copy the vars.yaml file to the root of the S3 bucket you specfied in
aws.bucket
. Additionally, make sure that the S3 bucket has an access policy that allows your IAM instance profile R/W access. For example:
aws s3 cp vars.yaml s3://tkg-autopilot/vars.yaml
- Additionally, edit the values.yaml file(s) in
/cd/argo/mgmt
,/cd/argo/workload1
, and/cd/argo/workload2
to reflect your environment. This will drive the true GitOps worklfow. And value that has a comment of# This must be overridden
does not need to be changed as this is a Secret that will be read from the params.yaml that is uploaded to the S3 bucket. - When you are ready to deploy execute the install script:
source ./scripts/install.sh
This will execute the following tasks:
- Create an EC2 launch template. The details of the templace are stored in
lt.yaml
- Launch an instance using this template, named TKG Bootstrapper.
- Tails the output of the bootstrapping log, which is found in
/var/log/cloud-init-output.log
on the instance.