Week 14: Last week of the class

This is the last blog for the class CS 401.  This semester has being a good one because of what I have done and of what I have learned.  I have learned a lot from research about FOSS Field Trip 1 and FOSS Field Trip 2. I was not familiar with Open Source projects but in this class I did learn almost everything about Open Source Projects. I did learn what are the benefits of working in Open Source Projects which some of the benefits are getting experience, getting reference, the ownership of the my work. Also, I did learn about the tools that are used to work on Open Source Projects. Some of the tools I did learn are Chatzilla, which it is used between the developers to give or get help from around the world. Other great tool for Open Source Project is Git, which it helps the developers to check the latest version of the software they are working.  Also I did learn a lot from the work I did with my group or individually on a big project as Eucalyptus. I did a lot of research and reading the documentation. Also I did try to install the software in my OS. After I did work with my group on EuTester bug tracker. It was a lot of work because in order run EuTesrter we were supposed to install it. But in this part my group mates and me spend so much time to installed. Finally we did install it but not time has left to test it. From this work I did learn a lot, I did learn how to solve installation a problem, and to be more patient   with this kind of issues. I did try little bit contribute on documenting the code which it was challenging to me because I do not know the python language. All this experience made me feel very well and active. This class made me to feel more comfortable when I start the new job.

I am living this class very enthusiastic view. I am thinking to find a other Open Source Project and to be their contributor. I like to contribute because of many thinks, as I like to contribute in our society. I like to get more experience on software development.

Week 13: Finally I did install EuTester

After so many unsuccessful tries to install EuTester on same operating system but on two different kind versions “Ubuntu 10.04” and “Ubuntu 11.10”. At one point I did think that might be some kind of issue from an update of the EuTester code. I did think this way because some of my classmates had EuTester installed at their OS before me. I did start to read Eucalyptus forums to find out why I could not install EuTester. I did tried different way to install EuTester but still I had problems. I tried to install EuTester on different versions of Ubuntu but still I didn’t have any luck. I did have problems while I was installing M2Crypto; it was giving to me error:


I did install the Paramiko but still I was getting errors. I started to search at Eucalyptus forums but I couldn’t find any thing useful. I did try an other way by cloning the EuTester to the home folder after I did install python-paramiko when I did try to run the command “python setup.py build” I did get this kind of error:

[eduart@eduart]$ python setup.py build

python: can’t open file ‘setup.py’: [Errno 2] No such file or directory


After I did try many times to fix this problem, I did research on Internet to figure out what was the issue. From my research I came to conclusion that I had package dependency problems. While I was doing the research I had the chance to find the blog writing from ‘viglesiasceread’ at our class wiki. At this blog I did find information that where very helpful to me. Following all the instructions in blog helped me to install EuTester very easy and smoothly. Now the only thing is left to do it is to run for the test the EuTester.

From all of this I did learn a lot. One of things I did learn is that first to solve e problem while I am installing software I should look for the software dependency. I did learn that if I work hard by doing research and testing eventually I will find the way to solve the problems not mater how hard and complicate they can be.

Week 12: Watching the EuTester bug tracker

This week I thought to get deeper on EuTester bug tracker. There have being some new issues added to the EuTester bug tracker, and I did spend some times looking at all the issues that are there. In software industry it is very important to learn to understand how bug tracer issues works because it is very important tool for a program developer.  According to the EuTester bug tracker about one of the issues that is opened since three days ago, it is about adding changes, which are requested from Code Review Session in EuTester meeting. Some of the requesters are:

  • Get rid of self.options; use options throughout script, and to get rid of while loop grabbing creds
  • Git rid of if statements for checking config_file or credpath; eutester takes care of that, and get logs if only debug flag is passed
  • Add everything that i make a global variable to self, and keep options for a cloud admin, not cloud user
  • Make sure command runs on the CC, and get rid of line 101 and 102 (removed None assignments)
  • Don’t wait on instance to run; get rid of line 119, and get rid of grabbing uname -a
  • Maintain list of reservations, and only print result if there is an error – get rid of else; use tester.critical instead of print

From this issue looks like the EuTester will be having some big changes on it code and on it output of the results. From my experience is that if they do try to change the code to make the software to performer well the chances are the software may preform better but there will be new bugs. This will be reflected at EuTester bug tracker.

According to EuTester bug tracker there is one new issue that it is about run_instance that should still provide a euinstance regardless of reachability. This issue is very new about one day old. When run_instance is called in Eucaops it chooses to convert the boto instances to euinstances only if the instance is reachable. Instead it should always return the euinstance and just not pass keys to the Euinstance constructor which will ensure that the euinstance will not try to create an SSH connection.

From all this experience I did learn a lot. I did learn that there never would be any software without bugs. I did learn that is when we change the code there will be new issues, and because of this what it is very important for me is to understand about bugs and how to fix the bugs or the issues in real world. So to learn and have more experience it is the best for me to continue working on an Open Source Project.

Week 11: Working on Eutester documentations

This week I did something different than before. I did start to work o documentation of EuTester code. We got the access to EuTester repository thru or instructor Mr. Wurst who is our master. The way in which we work on documentations is very simple.  We will submit every change to our instructor Mr. Wurst and he will push everything together like package to Vic Iglesias who is the person in charge of EuTester project. After Vic Iglesias will be the person who will review every change and decide which change will add to EuTester code. The decision was made this way because for many good reasons for example to keep track of the people that are working documentations and the track of their changes. I did start to look at EuTester code very carefully because I do not know Python. I tried to understand as much as I could from the code by using my previews experience that I have in other programming languages. At first time I didn’t even understand a thing, but more I was looking at code more I was beginning to understand something about EuTester code.  In beginning I started to make some small changes to see how Github works. Then later I made some more changes and I did pushed to my professor. And so on I try to contribute more in EuTester documents by entering in Github and spending more time reading the code of EuTester. More and more code I am reading more it helps me to understand more, though I do not understand Python.

Working with EuTester document I felt very fortunate. I liked to work with codes. From this work I did learned many things, for example how to make codes documents for the real life work.  I did learn that how to work in codes and repositories on Github. While working on documentations at Github, I did have that feeling as if I was working on real company. I will continue to work on documents of EuTesters and at the same time I will research other repositories on Github to contribute and learn at the same time.

Week 10: Trying to run EuTester

This week I have tried to put to work EuTester. I have follow different ways how to make work the EuTester but no success toward this problem. I am trying to work with it because I need too for my work on EuTester bug tracker. I need to run a test for my self that to see how the EuTester is working so than I can understand more about bug issues the contributors are reporting. I did start to work on installation of euca2ools install with dependencies following the instructions found at blog of my classmate Dhimitraq (http://dhimitraq.wordpress.com/). Instructions are very clear and easy how to install euca2tools step by step. First I did install the newest boto, and after I did install newest M2Crypto. After installing boto and M2Crypto I did install euca2ools. It was very interesting work watching how smooth the installation when. My classmate Dhimitraq have done good job documenting the installation with so accuracy. The real problem came after when I did try to put to work the EuTester. But the problem came after when I did try to run the EuTester. When I did run the EuTester I did had this kind of error:


With the help of my teammate Michael Kenny, I did download the Paramiko. After I did install Paramiko, I did try to run again the EuTester but I did had error again. We did try together with Michael to fix this error but not any successes. After so many desperate tries with out triumph we had help from our classmate Dhimitraq. Our classmate Dhimitraq did try hard to run EuTester on my machine but we where unlucky. After so many tries Dhimitraq did give to us the access  to his account at our class cluster because the team that works on our class cluster has install all the tools for Eucalytus including Eutester.

After working so hard to run EuTester we came to conclusion that there may be a code problem on the EuTester. This problem may be new because the team that works on our class cluster had the opportunity to install on our cluster EuTester.  I do thank my classmate Dhimitraq for helping us on this issue. From this I did learn that the code not always works the same way as work in some other machines.

Week 9 : Code documentation on GitHub

This week we did talked about different things for example signup at GitHub and working on documentation for the coding on Eucalyptus project like Eucaops, Eucaweb, Eutester, and Testcases. The challenging thing about all these projects is that they all are writing in Python programming language, and will be very difficult for some people in class to help with documentation. I am one of those students that I never had a chance to learn Python until this semester. I feel it will be very interesting this project because I will have the chance to learn Python better.  I did start last week to take a look the basics of the Python programming. I thing that self-study on my own will help me on this project and in the future. I after I got signup on GitHub I did send my username to my instructor Mr.Wurst too give me the access to the contribution from our class that my instructor will collect every contribution from everybody to the code documentation and he will push to the people in charge of changing things. Also this week I did try to work on EuTester bug tracker but still I did face some issues. A first issue is that knowing the Python, which is from previews week. Second issue is that I am trying to install and run the EuTester but I am having problems. I am trying to run EuTester on Ubuntu 10.04 but I cannot run it. I have tried to different ways but the same problem.  Look like I will work all next week to try to put to work EuTester. I did try to look again on the EuTester bug tracker but if I could find the same issue from differed people but I could found nothing there. This is why I decided to bring up the close issues. At EuTester bug tracker are 11 closed issues which still are important to look at them because it gives to us the history were it was EuTester and where it is now.

#1 eutester should allow the opening of multiple ssh connections

#3 inclusion of test to reproduce https://bugs.launchpad.net/eucalyptus/+bug/737335

#4 Goals, purpose, and guidelines for contribution

#6 create_ssh does not pass correct key file name argument

#7 get_emi() in eucaops selects de-registered image

#8 README.md

#11 connect to walrus should use s3_url

#13 Now using Euinstance in Eucaops

#14 Continuing integration of euinstance, removed some debug information

#15 Continue implementation of euservice class and machine class

#16 Comments from WSU CS 401

From all this work I did learn that how to connect with a master and how to edit and submit changes on GitHub. Also I did learn that the code of the EuTester my have some issues, which I don’t know because of the limitation I do have on Python language.

Week 8: EuTester bug tracker

Like very other week this week the group that is working to installing our cluster did report about the progress of their work. Also other think we did this week in class e did discuss in class about group projects. My group project is the EuTester bug tracker. We did get together as group in class and we did discussed what we could about our project. We did spend a lot of time as group looking at the EuTester bug tracker to learn about the bugs that were found and were reported. Something it was interesting about the bugs that were issued were not code issue most of them were not code related, most of the issues were documentation relation. We did find in EuTester bug tracker 5 open issues and 11 closed issues. Other interesting thing is that in EuTester bug tracker are not many issues 16 in total. This made us to think that small number of the issues is because the EuTester software is new. If we try to track EuTester from the Stats & Graphs we will find that the first contribution is on Oct 30, 2011 from vic.iglesias who actually is the person in charge of this project. Some of the issues that are open at EuTester bug tracker:

#2 Goals, purpose, and guidelines for contribution

#5 Testing capability for Jenkins + EC2 Plugin

#9 Create a standardized Eutester log/output format

#10 Create a standard set of debug tools available when tests fail

#12 Define licensing

From this week I did learn that there is a lot of work to about this project. One of the issues we did face, as group is that we need to learn Python that it is the only programmed language at which EuTester is writing.

Reference: https://github.com/eucalyptus/eutester/issues