text: Title: Add Linter and Formatter for python source codes
  Body: /kind feature
  
  **Describe the solution you'd like**
  
  In kubeflow/katib, there are lots of source codes written in python. Even though there are well-defined CI processes for source codes written in Golang, however for Python codes, only charmed-katib seems to have such process now.
  
  There should be a fixed linter, formatter and tester with some rule-config files(.flake8, .pylintrc, ...) and the github action workflow to check those all. For example, there are lots of unit test codes for suggestion, but current CI process doesn't check if they are failed or check the test coverage decreased in every PR.
  If there are any convention checking tools, please share in katib community :)
  
  **Anything else you would like to add:**
  If you guys agree to this, I'd like to contribute to this feature in some parts.