- Refactor only, not a blue-print nor bug-fix.
- Refactored service_definition.py which was a python code file acting
as a configuration file, into server_resources.yaml. This allows us
to modify configuration, instead of code. It also allows to add
configuration properties at any level... service, pod, or container if
necessary in the future.
- Added caching to Pathfinder._find_dir so that we hit disk a lot less.
- Added objects for Service, Pod, and Container to service_resources.py.
This paves the way in the future to add actions on each of these. For
example, we today have a functional _bootstrap_service('mariadb'). In
the future, we can do 's = Service('mariadb'); s.bootstrap();
s.verify(); s.kill()'. We can also add methods to query status
directly from Kubernetes API. This code reorg allows us to structure
this nicely for future additions.
Change-Id: I7e80cb71ddc7cac7e6b424f2c4755054e7b16c65