Showing posts with label update. Show all posts
Showing posts with label update. Show all posts

Thursday, March 12, 2009

ECP 2.2.3 released

The latest stable version of the Enomaly Elastic Computing Platform has been released. Changes include:
  • New approach to handling an index error caused by SQLObject.
  • Better handling of ECP clustering when the host machine record does not exist in the database.
  • Fixed a defect in the way remote eggs are installed with the vmfeed extension module.
  • Better exception handling when importing existing Libvirt domains.
  • Fixed several invalid javascript references.
  • Small CSS fix.

Thursday, March 5, 2009

Libvirt 0.6.1

Looks like the latest Libvirt is now available (0.6.1). Only a couple new API features and some maintainance tasks but nonetheless moving forward.

Tuesday, March 3, 2009

Update crashes Umbrello on Ubuntu

Just the other day, I updated several KDE packages and the Umbrello package on my Ubuntu system. Now I find that Umbrello is extremely flaky if it even agrees to start at all. Not sure what went wrong here. If you haven't already, I wouldn't recommend the latest KDE and Umbrello updates on Ubuntu.

ECP and the ActualMachine

The ActualMachine class in the Enomaly Elastic Computing platform is the abstraction layer that interacts with Libvirt to control virtual machines. Not every method of this class interacts with Libvirt directly. In fact, most methods in the ActualMachine class don't directly interact with Libvirt. There are plenty of methods in this class. The ECP development team is in agreement that this number can certainly be brought down to something a little more cohesive.

To start, we'd like to focus on maintaining the handful of ActualMachine methods that interact directly with Libvirt. As an example, the shutdown() method directly interacts with Libvirt. This is necessary in order to shutdown the virtual machine.

The reason we are going to tackle these Libvirt-coupled methods first is because they are absolutely critical to ECP. Without a clear understanding of how these primitive abstractions behave, we hit a brick wall. I think the ActualMachine class gained a lot of weight in turns of the sheer number of methods because we didn't understand what was happening at the primitive level. By primitive, I mean the primitive reason for ActualMachine's existence. Once we are able to hammer out what it is that the ActualMachine is responsible for, we can lose a lot of the current functionality. Losing it is a good thing in this case. It will come back in a much nicer form.

For an idea of what is happening with the ActualMachine class, take a look at this.

Wednesday, February 18, 2009

New ECP community site.

I'm pleased to announce that the new Enomaly ECP community site is up and running. Feel free to report bugs, request features, or check out the documentation.

Tuesday, January 13, 2009

boduch 0.0.6

The 0.0.6 version of the boduch Python package is now available. Changes include:
  • Fixed a major bug in EventManager.subscribe() that allowed the same handle for a single event to be subscribed more than once.
  • Type instances now have a uuid attribute which is generated by the constructor.
  • EventThread will now inherit from Type.
  • Improved the EventManager interface.
  • Improved the Event and Handle interfaces.
  • Implemented new Set and Hash event handles.

Wednesday, November 26, 2008

Enomaly ECP update

Just this week, I've started writing some new unit tests for Enomaly ECP. I decided to take a different approach than the previous unit tests. These new tests are designed to test the RESTful API of the software. The new testing module, which I'm using to test version 2.2, establishes a connection with a running ECP instance and makes several HTTP requests to the API. The results for each test pass or fail based on the HTTP status, the internal error code returned, and ensuring that modifications actually took place.

Another nice little tool I've incorporated into the new unit testing is sptest. It gives us some nice colourful output.

This shift in testing focus will hopefully yield a more robust API for the Enomaly ECP platform that can be verified with test results. I hope to actually ship this new testing module with 2.2 so users can run the unit tests for themselves.

Tuesday, September 2, 2008

Enomalism update

The long weekend is over and work toward a stable Enoamlism2.1 release resumes. Today, I've renamed some key classes in the Enomalism data model. uuid_search is now know as UUIDSearch and perm_select is know know as PermSelect. These changes help keep the code in sync with PEP8.

The config_editor Enomalism extension module now has a more package-like structure. Several json-conversion functions have been implemented. These still have yet to be invoked by the various REST controllers. The Queue and QueueMessage classes now have setter/getter methods implemented and ready to use.

I've noticed that all classes in the UUIDSearch.by_prefix() method need some reconsidering. They do not check permissions. If each object that is returned by this method has permissions checked against it, this is a serious performance bottle-neck. The good news is, we simply need to use PermSelect for the various object filters.

Wednesday, August 27, 2008

Enomalism update

I'm currently working on the second release candidate of Enomalism 2.1. I know the first release candidate hasn't been released yet, but that shouldn't stop the ongoing development.

A lot of progress has been made on the second release candidate. I've made small name enhancements in the core abstraction modules. Although, I've spent most of the development time fixing code in the core extension modules. The core extension modules are the extension modules that are shipped with Enomalism and are required to accomplish anything useful.

As of today, the most notable enhancements have been made in the static_networks, and the valet modules. The code in these modules was quite difficult to follow. Both now have a much more elegant, object-oriented feel to them.