4/23

With just two classes left to the semester, I would rate our class as moderately sucsessful.  This in no way reflects the effort that went into setting up our cloud or creating our wiki entries.  I believe everyone who contributed did a tremendous job, especially on the server side of things.  Some things are just beyond our control, which does not make it any less frustrating.  At present it appears our last roadblock is getting the cloud to assign accessiable IPs that communicate between each other.

I reviewed our wiki, with an eye towards what is left to complete.  At present it seems all that is left is formatting (Architectue Overview needs color backgrounds added to code segments), and legacy posts added to a seperate page – I suggest this so that those that come after can have a better understanding of the process.

The project we undertook was ambitious – set up a functioning cloud with the latest release of the Eucalyptus and leverage that to write testing scripts which could be added to the KB.  But I do not feel we failed because we did not meet our goals.  Our class created an easy to follow wiki outlining the use of a Eucalyptus cloud and the tools needed to interact with it.  Most recently, work was done to make the scripts already available in the Eutester easier to read and follow.

I attended a EucaSchool planning meeting, where I suggested that future classes be captured on video.  This would allow those unable to attend to get the full impact of the class and should obviate the need to redo basic topics.  The idea was well received (it seems this had been suggested before, but no follow up was done).

Going forward, I would suggest that the Cloud be maintained as it could be a valuable resource for future CS students.  Either for the next CS-401 class or for other CS classes. 

From the blog sflynn1976 » wsu-cs by sflynn1976 and used with permission of the author. All other rights reserved by the author.

4/23

I have been working on running test cases with EuTester by following some of the wiki posts by my fellow classmates as well as blog posts located here by Vic Iglesias. There is still a bit of a learning curve working with python as a language I am not very familiar with.. I understand the basics for writing the test cases with Eutester in particular I have learned that you especially need to make sure that you configure a setup and teardown phase in the code as described below in a portion taken from the Vic Iglesias blog:

import unittest
from eucaops import Eucaops

class MyFirstTest(unittest.TestCase):

    def setUp(self):
        self.tester = Eucaops(credpath="/home/ubuntu/.euca")
        self.keypair = self.tester.add_keypair()
        self.group = self.tester.add_group()
        self.tester.authorize_group(self.group)
        self.tester.authorize_group(self.group, port=-1, protocol="icmp")
        self.reservation = None

    def testInstance(self):
        #### INTERESTING STUFF GOES HERE
        pass        

    def tearDown(self):
        if self.reservation is not None:
            self.tester.terminate_instances(self.reservation)
        self.tester.delete_keypair(self.keypair)
        self.tester.local("rm " + self.keypair.name + ".pem")
        self.tester.delete_group(self.group)

The setup phase makes sure the system has the required elements in order to execute the code, while the teardown releases these elements after execution. I have not yet attempted writing my own test cases as I am still experimenting with the default ones, but even if I never get around to writing my own I am enjoying learning a new programming language and this is good practice running scripts for me.

From the blog michaelkenny2 » WSU CS by michaelkenny2 and used with permission of the author. All other rights reserved by the author.

Class Week 10

In this week’s class we focused on getting everyone on the same page and making sure everyone is up to date on everything. Many people were having issue going through the steps of Github and properly signing up. One of my classmates sitting next to me was confused about it and I walked him through the steps to help him get through it and catch up with the rest of the class. Another issue that many people were having, myself included, is the fact that they were using Python, which is a programming language, and many students in the class have no experience with it what so ever.  So besides the challenges that we were facing for the projects we had to do a little self research and learn basic Python.

Thank god for Google you can find lots of information like I did to help me with this dilemma. After signing up for Github we had to submit our user name to our professor to get approved to get access to Github account our class was in. After I got access to the Github I played around with it to get a sense of how it works and its functions.

From the blog jgaval by jgaval1 and used with permission of the author. All other rights reserved by the author.

Class Week 9

In this week’s class we focused on our group projects that we have been working on.  At first each of the groups gave a brief talk about what they have been up to since last class and what issues they were having or anything going on.  As mentioned in my previous blogs, the group that I am in is working on the bug tracker for Eutester. As a group we all sat down and discussed what progress we had each made and what we want to do as far as working with this portion of the project.

We did group research to learn more about the bug tracker because there wasn’t much information to find and we conveyed our findings to the class. As we looked at the bugs that people reported they were not really code related as they were related to problems with the documentation that people had posted.  However it was good to find that there weren’t many issues, so that was a relief. 

From the blog jgaval by jgaval1 and used with permission of the author. All other rights reserved by the author.

Class Week 8

In this week’s class we had a guest speaker come in from Eucalyptus, the original woman who persuaded us to work on Eucalyptus.  The class as a whole discussed the issues and troubles that they were faced with as they were working on Eucalyptus. One of the issues that had arisen during the discussion was that the Linux distribution that was being used was giving issues and was not being compatible. After the issue was discussed the class came up with the conclusion to use Centos5 as the Linux distribution and also to get new hardware from the IT department at WSU. 

Our guest speaker Mel was able to help us with many issues that we had and answer most of the questions the people in the class had. She was very helpful and  gave us lots of insightful information to continue working on Eucalyptus. It was nice having her come in and talk to us rather than using the IRC channel to ask questions and wait for a reply. 

From the blog jgaval by jgaval1 and used with permission of the author. All other rights reserved by the author.

Class Week 7

In this week’s class we focused on a brief presentation from each group to share with the class what they did in the previous weeks group assignment. The group that I worked in had to deal with the Eutester bug tracker, but we had issues because we couldn’t really find much information about it. The reason probably being because it was new software and many people haven’t contributed all that much yet, but I am sure in the future there will be much more information about it. There were not many issues but I know in the future there will be more when more people get to use it and will report the faults in it. 

From the blog jgaval by jgaval1 and used with permission of the author. All other rights reserved by the author.

Class Week 6

In this week’s class we focused on what we would be doing for the next couple of weeks. As a whole the class had a discussion about what each person has done so far and where we were heading next for the remainder of the semester. Next week each of the groups is going to give a little presentation describing what their group did. The professor wanted to make sure we are all caught up and on the same page, we discussed if people signed up on Eucalyptus , installation of Euca200ls, different Linux distributions, etc.

Next we discussed the assignments that were to be divided up into teams to each do a certain task. For example, some are responsible for documentation, bug tracking, writing code, install documentation, etc. We also have to use the guidelines for FOSS field trip to evaluate Eucalyptus software. The professor gave us the option to pick which group we wanted to join and what we wanted to work on. We used Piratepad as a tool to be able to write down all the projects and everyone is able to contribute however they want on the page. I joined the group that was responsible for finding the bugs in the program, better known as the bug tracker. 

From the blog jgaval by jgaval1 and used with permission of the author. All other rights reserved by the author.

Class Week 5

In this week’s class we focused on Git and the functions of it. This is a free open source software that is intended to be used with projects, very efficient and very useful. The main operating system it was designed for is Linux however, it is compatible with the other operating systems as well. Git is used to copy source code of a project and place it on the local computer hard drive in order to be able to work on offline. Having the ability to work offline is very important and useful because the users are not always available to access a network. Git grabs all the information that is found on the server and saves it on the computer before going offline. It also stores the copy of everyone else’s version so that one doesn’t mess up the entire thing. 

During the class time we familiarized ourselves with some of the functions and features of Git. We had to install Git and there was a tutorial with step by step instructions on how to get a public and private key to connect with the other students in the class. Some of the steps did not work for me at first but after multiple tries I got it to work. 

From the blog jgaval by jgaval1 and used with permission of the author. All other rights reserved by the author.

More Wiki Editing and Python Learning

I added a big index at the top of the glossary page, learned how to actually link to certain part of a web page in a PMwiki, was actually a lot easier than what I figured it was here was where I found it, turns out you just make a simple [[#anchor | text ]] at the particular part where you want to reference you #anchor that part then  use [[#anchor | text]] and you’re done.   It was silly tedious to do but, it does give it a quicker and easier way to access the glossary, also props to Dan Adams, the glossary is looking very nice.  Since I learned how to use links without having to just post the ‘ugly’ url same page as the anchor tutorial I have been fixing the entire glossary page so it will read “read more”, “wikipedia entry” or something along those lines.  With those edits I am also fixing the capitalization of each entry.

EuTester has been great for learning Python, I was long over due to learn it anyways.  I started using Zed A. Shaw’s book (great resource for learning a language for free/very cheap) and then after I knew enough to make better sense then I started looking at all the Python that eutester had.  Commenting has been great for learning because it forces me to look at the code, analyze what I am reading, then form coherent ideas from that. Zed’s book along with the multitude of forums while google searching has really been great.

From the blog jamescelona » WSU CS by jamescelona and used with permission of the author. All other rights reserved by the author.

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 [&hellip

From the blog E. Lekdushi CS401 by elekdushi and used with permission of the author. All other rights reserved by the author.