Enhance CI
This MR is to valid / fallback changes done in the CI.
In fact I already added the only:changes rule while working on !75 , but there is still room for improvement :
- 
do not retest unchanged files (we can discuss it if you see a scenario where we need to force tests on unchanged files)  - 
remove useless $TEST_INPUT_IMAGE var  - 
use the "interruptible" keyword to cancel obsolete pipelines if another one is queued  - 
remove flake8 (pylint is already doing same and more)  - 
cache dependencies (only pip packages)  - 
unique steps for docs, manual build, webhook also for develop branch events (but master is still default docs page)  - 
better trigger rules (based on MR + tags, + push release (manual trigger) for branch develop or master  - 
use latest image (is there a otb-ubuntu-native-develop-headless:22.04 ?) 
Packaging is OK. In theory we could also remove the setup.py.
Also, a develop version of the docs should be pushed when merged.
Regarding the last two points in the desc, waiting for your advice.
FYI I used the gitlab CI script editor, it's useful for syntax (and autoformat) Closes #68 (closed) #95
Edited  by Cresson Remi