Comment 4 for bug 1302552

Ravi Sankar Penta (ravips) wrote :

I did some work to convert shell code to python, mostly code around app workflow (clone/build/test/deploy). While doing this, I tried to:
- Abstract clear interfaces between solum worker and the language pack handlers.
- Wrap common functionality (environment setup for app build, etc.) in the base language pack plugin.
   Woker loads language pack plugins selected by the operator.
- Simplify passing application info from assembly hander to worker.

Relevant patches(not merged):
https://review.openstack.org/#/c/132381/
https://review.openstack.org/#/c/132718/
https://review.openstack.org/#/c/132933/
https://review.openstack.org/#/c/133111/

At some point, I had working version of these patches with cedarish-docker plugin. A lot has changed after that and I don't have enough cycles to finish this task. Anyone who picks this task needs to do:
- Rebase latest code and resolve conflicts
- Incorporate the feedback got from the team for the above patches
- Add/Update tests to validate the functionality
- Fix any issues

As this task touches a lot of functionality activitly improved by other team meembers, we have few options to get this into master:
Option1: Make the new code co-exist with the existing shell code and switch one language pack plugin at a time to use the python code. Once all LPs are switched to python code, we can safely delete the shell code.
Option2: Replace shell code with these pathces ensuring at least one working LP plugin (mostly dockerfile LP). Gradually add support/fix other LP plugins to use python.