Add headless sim testing to further validate if new changes work
- check if vehicles arm
- check if simple missions complete
- check camera stream
- can incorporate scoring node logic potentially
- Multicopter, VTOL logic
- Payload logic as well
Currently, our ci-image workflow builds all necessary pre-built dependencies, so ROS, apt installs, pip installs, and any other binaries. It doesn't build anything from source. The main bottlenecks in rebuilding our workspace is compiling PX4-Autopilot, px4_msgs, and ros_gz, which we will all need for headless sim testing. Since the hashes/commits on these submodules don't change often, we can consider baking these into our ci-image.yml flow, so our ros-validate workflow pulls in an image with all necessary prebuilt dependencies and also PX4, px4_msgs, and ros_gz built from source.
We also need to install QGC and run it in headless mode via xvfb-run -a ./QGroundControl.AppImage to pass the ground station preflight check
also look into PX4_SIM_SPEED_FACTOR env var and see how high we can set this so that sim testing runs faster. We will need to do manual testing w/ this to see if it messes with consistency and how deterministic running sim is (we want to avoid random preflight fails or flight failures).
Add headless sim testing to further validate if new changes work
Currently, our ci-image workflow builds all necessary pre-built dependencies, so ROS, apt installs, pip installs, and any other binaries. It doesn't build anything from source. The main bottlenecks in rebuilding our workspace is compiling PX4-Autopilot, px4_msgs, and ros_gz, which we will all need for headless sim testing. Since the hashes/commits on these submodules don't change often, we can consider baking these into our ci-image.yml flow, so our ros-validate workflow pulls in an image with all necessary prebuilt dependencies and also PX4, px4_msgs, and ros_gz built from source.
We also need to install QGC and run it in headless mode via
xvfb-run -a ./QGroundControl.AppImageto pass the ground station preflight checkalso look into
PX4_SIM_SPEED_FACTORenv var and see how high we can set this so that sim testing runs faster. We will need to do manual testing w/ this to see if it messes with consistency and how deterministic running sim is (we want to avoid random preflight fails or flight failures).