afrl-rq / OpenUxAS

Project for multi-UAV cooperative decision making
Other
50 stars 24 forks source link

Improve running LmcpGen #43

Closed manthonyaiello closed 2 years ago

manthonyaiello commented 2 years ago

RunLmcpGen.py is renamed to run_lmcpgen.py, to be consistent with python module naming guidelines.

run_lmcpgen.py is now wrapped by a shell script, run-lmcpgen. This allows it to be used without requiring the user to manually activate the python venv - just like run-example or anod. This also means that the user is prompted to install infrastructure it needed.

Logging in run_lmcpgen.py is much improved: it is more verbose on info (communicates what is being done to the user) and more accurate on warning and critical (actually explain the problem correctly) and provide remedial action (run anod devel-setup).

Logger config for run_lmcpgen.py and run-example.py is regularized and refactored into uxas.util.logging - this eliminates redundant code between the two files. e3 is still not required, but is used if available.

A workflow has been added to GitHub Actions to test the invocation of run-lmcpgen automatically.

Testing

Important: before testing, you should implode your python venv:

OpenUxAS $ rm -r .vpython

This is necessary since changes were made to the uxas python module in this patch.

OpenUxAS $ resources/run-lmcpgen -a -v

and looking to see that messages are output as expected and artifacts are output where the script claims.