Description
Is your refactoring request related to a problem? Please describe.
The system test setup logic can be improved to make it easier for users to setup a where a test is run against.
Below are some of the problems with the current setup
-
bootstrap.sh arguments can't be customized when setting up a test
There are 82 instances which call the
./bootstrap.sh
script directly, below is one exampleSetup skip_bootstrap=True Execute Command ./bootstrap.sh --no-bootstrap --no-connect
-
Can't control the device certificate type easily (e.g. self-signed certificate, Cumulocity CA, Local CA etc.)
Describe the solution you'd like
-
Remove the configuration/connection related logic from the bootstrap.sh so that the bootstrap.sh is only responsible for installing the artifacts, and setting up the OS (not actually configuring thin-edge.io and connecting to Cumulocity)
-
Move thin-edge.io configuration and mapper configuration to the python level, where users can control whether thin-edge.io should be configured or not via arguments provided to the "Setup" keyword
Describe alternatives you've considered
Additional context