Yet another attempt at #7131 because without automated test, these _undefined names_ keep creeping back into the codebase: #9225, #9226, #9229, #9788, #10038, and a new one below...
[flake8](http://flake8.pycqa.org) testing of https://github.com/ArduPilot/ardupilot on Python 3.7.1
$ __flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics__
```
./Tools/autotest/sim_vehicle.py:396:39: F821 undefined name 'autotest'
swarminit_filepath = os.path.join(autotest, "swarminit.txt")
^
1 F821 undefined name 'autotest'
```
__E901,E999,F821,F822,F823__ are the "_showstopper_" [flake8](http://flake8.pycqa.org) issues that can halt the runtime with a SyntaxError, NameError, etc. Most other flake8 issues are merely "style violations" -- useful for readability but they do not effect runtime safety.
* F821: undefined name `name`
* F822: undefined name `name` in `__all__`
* F823: local variable name referenced before assignment
* E901: SyntaxError or IndentationError
* E999: SyntaxError -- failed to compile a file into an Abstract Syntax Tree
Remove coverity settings since that's in its own branch
Remove old CMake PPA (Trusty has a more recent version)
Remove ccache from APT install since we build it from source
Disable caching ccache DB between builds
Don't run jobs on cron that won't do Make builds
This makes param parse failures much more obvious in the CI logs, as
well as ensuring that both Semaphore and Travis will fail on bad
parameter data (which should reduce user confusion when one service
passes and the other fails).
the param_parse Python script has bugs when trying to parse all vehicles at once, so make each one at a time
use the new option so that only validation is performed
Travis has fixed the bug affecting cache's names so we don't need custom compiler names anymore
Change and reorder jobs
Also add fast finish, so that when a job fails, the build fails immediately