A framework for testing Submariner with Red Hat Advanced Cluster Management for Kubernetes (RHACM).
It installs OpenShift clusters on private (on-premise) and public clouds, adds RHACM with Submariner, and tests inter-connectivity between the clusters.
Running with pre-defined parameters (optional):
-
Openshift setup and environment options:
- Create AWS cluster A: --create-cluster-a
- Create OSP cluster B: --create-cluster-b
- Create AWS cluster C: --create-cluster-c
- Destroy existing AWS cluster A: --destroy-cluster-a
- Destroy existing OSP cluster B: --destroy-cluster-b
- Destroy existing AWS cluster C: --destroy-cluster-c
- Reset (create & destroy) AWS cluster A: --reset-cluster-a
- Reset (create & destroy) OSP cluster B: --reset-cluster-b
- Reset (create & destroy) AWS cluster C: --reset-cluster-c
- Clean existing AWS cluster A: --clean-cluster-a
- Clean existing OSP cluster B: --clean-cluster-b
- Clean existing AWS cluster C: --clean-cluster-c
- Download OCP Installer version: --get-ocp-installer [latest / x.y.z / nightly]
- Download latest OCPUP Tool: --get-ocpup-tool
- Install Golang if missing: --config-golang
- Install AWS-CLI and configure access: --config-aws-cli
- Skip OCP clusters setup (destroy/create/clean): --skip-ocp-setup
-
Submariner installation options:
- Install ACM operator version: --acm-version [x.y.z]
- Install MCE operator version: --mce-version [x.y.z]
- Install Submariner operator version: --subctl-version [latest / x.y.z / {tag}]
- Override images from a custom registry: --registry-images
- Configure and test GlobalNet: --globalnet
- Install Submariner with SubCtl: --subctl-install
-
Submariner test options:
- Skip tests execution (by type): --skip-tests [sys / e2e / pkg / all]
- Update Git and test with GO (instead of subctl): --build-tests
- Create Junit test results (xml): --junit
- Upload Junit results to Polarion: --polarion
-
General script options:
- Import additional variables from file: --import-vars [variables file path]
- Print Submariner pods logs on failure: --print-logs
- Show debug info (verbose) for commands: -d / --debug
- Show this help menu: -h / --help
To run interactively (enter options manually):
./setup_subm.sh
Examples with pre-defined options:
./setup_subm.sh --clean-cluster-a --clean-cluster-b --acm-version 2.5.0 --subctl-version 0.12.1 --registry-images
- Reuse (clean) existing clusters
- Install ACM 2.5.0 release
- Install Submariner 0.12.1 release
- Override Submariner images from a custom repository (configured in REGISTRY variables)
- Run Submariner E2E tests (with subctl)
./setup_subm.sh --get-ocp-installer nightly --reset-cluster-c --clean-cluster-a --subctl-version subctl-devel --build-tests --junit
- Download OCP installer pre-release (nightly)
- Recreate new cluster C (e.g. on GCP)
- Clean existing cluster A (e.g. on AWS)
- Install "subctl-devel" (subctl development branch)
- Build and run Submariner E2E and unit-tests with GO
- Create Junit tests result (xml files)