Sunday, April 1, 2012

Python and EuTester Issue Tracker resolutions

I spent a lot of time last week learning more about the Python language because that's what EuTester is primarily written in. I went through a few online tutorials which really helped my gain a much better understanding of this scripting language. Knowing the basics of script writing in Python now, this week I was able to go through sections of the EuTester code that the EuTester Issues Tracker wants to modify (I updated what the current GitHub issues are on the wiki here: http://cs.worcester.edu/wiki/index.php?n=Main.EuTester). Those issues are:

Create a standard set of debug tools available when tests fail
A standard set of debugging tools should be provided to the user whenever an EuTester test fails. As much debug info as possible should be included to help figure out the cause of the behavior. Right now the EuTester class’s debug system is too basic and we want expand on it to make it more useful.

Create a standardized Eutester log/output format
The way information is displayed to a user after running tests should be more organized. Output formatting should be used to make the info more presentable. Some formatting options could be date/file/function/severity.

Testing capability for Jenkins + EC2 Plugin
We would like to test cases for Jenkins + EC2 Plugin and see if this type of script is possible. Now Jenkins has a CLI client but we’re not sure if this works with the EC2 Plugin.

Goals, purpose, and guidelines for contribution
Better overall documentation is needed. Some things that can be better organized: Readme file should be bolsterd/Add more sample scripts/Ensure sane defaults (ie requests go to ECC by default)

Define licensing
The need to figure out what license can be Eutester under. First proposition is from  Gregdek that GPLv3 to be compatible with the Eucalyptus product itself, but there  is the need to be more explicit. Also needs to be clear that it's copyright to Eucalyptus.


I already had Python downloaded on Ubuntu and just had to update paramiko and boto ect. I got an EuTester build working (downloaded and installed all the important EuTester tools as well) and was able to connect to a cloud which allowed me to start figuring ideas to modify the issues. The API Documentation for EuTester on GitHub was very useful to help me understand what most of the functions did. This part of researching was interesting because I learned a lot about how to use documentation to figure out what certain scripts actually do. Since I'm working on the Issues Tracker project which requires me to go though a lot of EuTester code, I plan on helping out with the EuTester Documentation project as well.

No comments:

Post a Comment