All Ginkgo Integration test suites are located in test/integration directory.
Prerequisite
The integration test requires the following setup
For Security Group for Pods Test
Have all Nitro Based Instances in your EKS Cluster.
Have at least 3 X c5.xlarge instance type or larger in terms of number of ENI/IP allocatable.
Add the AmazonEKSVPCResourceController managed policy to the cluster role that is associated with your Amazon EKS cluster. Follow Step 2 in Deploy security groups for pods
Enable the CNI plugin to manage network interfaces for pods by setting the ENABLE_POD_ENI variable to true in the aws-node DaemonSet. Follow Step 3 in Deploy security groups for pods
For Windows Test
Have 1 Linux Operating System worker Node for running coreDNS.
Have at-least 3 Windows Operating System worker Node (Preferably c5.4xlarge or larger).
Have all the Windows Node belonging to same nodegroup with same Security Group.
Available Ginkgo Focus
The Integration test suite provides the following focuses.
[LOCAL]
These tests can be run when the controller is running on Data Plane. This is idle for CI Setup where the controller runs on Data Plane instead of Control Plane. See scripts/test/README.md for details.
# Use when running test on the Controller on EKS Control Plane.
--skip=LOCAL
[STRESS]
These tests are run to stress the controller by running higher than average workload. To skip these tests, use the following.
# Use when running only the Integration test.
--skip=STRESS
[CANARY]
Continuous tests to ensure the correctness of the live production environment by testing the bare minimum functionality. Since the Canary runs quite frequently it doesn't contain all set of integration testes which could run for hours.