Terraform: Cleanup
[csit.git] / fdio.infra.terraform / README.md
diff --git a/fdio.infra.terraform/README.md b/fdio.infra.terraform/README.md
new file mode 100644 (file)
index 0000000..92cdfb2
--- /dev/null
@@ -0,0 +1,72 @@
+# Terraform CI Infra
+
+This folder contains configuration for terraform based deployments.
+
+## Nomad
+
+Application orchestration - Nomad
+- ./1n_nmd/
+
+## AWS
+
+Testbed deployment - Amazon AWS
+- ./2n_aws_c5n/
+- ./3n_aws_c5n/
+
+### Getting Started
+
+Tested setup:
+- Install and configure prerequisities as specified.
+
+- OPTIONAL: Enable logging
+  Terraform does not have logging enabled by default, to enable logging
+  to stderr, set up TF_LOG variable with specified loglevel:
+  Available loglevels: TRACE, DEBUG, INFO, WARN, ERROR
+
+    export TF_LOG="LOGLEVEL"
+
+  It is also possible to store logged output to a file by setting up
+  TF_LOG_PATH variable:
+    export TF_LOG_PATH="path/to/logfile"
+
+- Run Terraform in a given root module folder depending on chosen testbed
+  topology. Terraform will deploy and configure instances and other resources,
+  all of these resources can be later identified on AWS via Environment tag.
+  By default, Environment tag "CSIT-AWS" is used.
+  Example:
+    cd fdio.infra.terraform/2n_aws_c5n/
+    terraform init
+    terraform apply
+
+  This will deploy environment with default values, you can check the defaults
+  in ./2n_aws_c5n/main.tf and ./2n_aws_c5n/variables.tf files
+
+  If you would like to change some of these values, you can:
+  1) Set up TF_VAR_* environment variables prior to running 'terraform apply':
+      export TF_VAR_testbed_name="testbed1"
+
+  2) Use '-var=varname=value' flag when running 'terraform apply':
+      terraform apply -var=testbed_name=testbed1
+
+  Note:
+  Only variables defined in variables.tf file of the root module can be
+  changed using these methods.
+
+- Run the tests
+  1) To run some tests use the VPP performance bootstrap script, e.g:
+      cd ../resources/libraries/bash/entry
+      ./bootstrap_vpp_perf.sh csit-vpp-perf-mrr-daily-master-2n-aws
+
+  2) To run only selected tests based on TAGS, export environment variables
+     before running the test suite and run a verify JOB, e.g:
+      export GERRIT_EVENT_TYPE="comment-added"
+      export GERRIT_EVENT_COMMENT_TEXT="1cAND64bANDmrrANDethip4-ip4base"
+      ./bootstrap_vpp_perf.sh csit-vpp-perf-verify-master-2n-aws
+
+- To clean up the AWS environment and remove all used resources, run:
+    terraform destroy
+
+## Azure
+
+Testbed deployment - Microsoft Azure
+- ./3n_azure_fsv2/