Thanks. I'm going to commit the schema update and the subroutine additions to for get_variable() and set_variable() as described on the Confluence page.

I just created a new issue for the KMS configuration addition (VCL-142). I will then begin to work on this issue using the variable table and will report any difficulties to this list.


Aaron Peeler wrote:
good idea - it looks promising.


--On May 27, 2009 12:36:05 PM -0400 Andy Kurth <> wrote:

It will be beneficial to have a flexible way to store relatively small
pieces of data without having to modify the database schema.

An example that has recently come up is the need to store the Windows KMS
activation server addresses for different affiliations so that the
correct server is contacted when a Vista image is loaded.  The only ways
I can think of to currently accomplish this would be to add a new table
or column to the database specifically designed to store the data or to
have the Windows module maintain a separate settings file.  Neither of
these options are very appealing.

I have playing around with this idea and have written up an initial
design document for a new variable table here:

In general, the new table will provide a way to store and retrieve just
about any data structure.  The data is serialized using YAML so that it
can be accessed and manipulated from many different languages.

The design was inspired by the way Drupal handles the same problem.  The
key differences are the additional tables in the VCL design to add
debugging information and Drupal uses PHP's serialization format instead
of YAML.

Please take a look and discuss on the list.  I would like to get this
implemented pretty soon because I think there are a bunch of cool things
we can do once it's in place.


Andy Kurth
Virtual Computing Lab
Office of Information Technology
North Carolina State University

Reply via email to