Latest Release of Candlepin

Leave a comment

We continue to use Scrum at work, and it is working very well. The team is able to work very independently, and very quickly. We continue to roll out new features every three weeks.

Version 0.4.11 is the latest release which adds partially subscribed logic, activation keys, and lots of additional features.

Please come on bye, and help out. You can find us at http://candlepinproject.org.

Adding Search to Rails Apps

Leave a comment

Good blog artcile on adding search to rails apps. Used in Foreman, soon to be used in Katello and Headpin.

http://scopedsearch.wordpress.com/2011/07/11/adding-search-to-an-activerecord-rails-model/

Great Summary of Using Foreman

Leave a comment

This came across today, great summary of setting up and using The Foreman. http://engineering.yakaz.com/managing-an-infrastructure-datacenter-with-foreman-and-puppet.html

Project Katello: Open Source System Management

2 Comments

As a followup to the Candlepin Post.. we have just opened up the larger project for Open Source Systems Management. The project is called Katello. The name rhymes with Jello, so that should help. The goal of this project is to bring together Content Management, Subscription Management, and Configuration Management.

If you are interested in participating, we would love the help. Come on bye, check it out, and say hi!

Project Candlepin

1 Comment

At work we have been doing alot of development around Software Subscriptions, and how to represent them to a machine as a collection of Entitlements (what a machine is entitled to have or do). It is a FOSS project which we have been working on it for a while, but have finally hung out an offical shingle. You can checkout the website at candlepinproject.org. The name is based on a place up near our offices in Westford. It is called the Bowladrome. The folks came up with the idea while bowling.

Tech wise, it is a pretty interesting project. Java Stateless App Server using Guice. It exposes a REST API provided by RESTEasy.  It has  Rails 3.0 front end, and some linux clients which are written in Python. All we are missing is Erlang and we would be all set.

Come on bye, check it out. The project is open and is being actively developed. If you work in and around software subscriptions we would be interested in your opinions.

 

Do not use private if you write frameworks

8 Comments

If you write a framework, please do not use private. You may think that you know how I am going to use it. I promise, if it works as it should I will not try and override the basic functionality. However, if I am looking at the code to know it is private then I have a use case you did not expect.

My current example is rails active resource. This is a great framework if you are planning to use it to talk to another rails app. If your url does not end in .json then you have to override / reimplement many high level methods because of one or two private methods.

I know they teach you this in school. I know it makes you feel smart. Stop it. Private methods makes your frameworks less usable and less extensible.

Need help testing new libvirt java bindings

Leave a comment

I have moved the java bindings for libvirt up to 0.8.1. It is mostly cut and paste code, but the test driver does not support some of the new features so I would appreciate if someone could bang on them a bit. Specifically, I would like to see someone try out:

Snapshots
Streams (Callbacks in particular)
Secrets

I have put an SRPM out at [1] and a compiled jar at [2]. You can always clone the repo at [3] and build it from there.

Thanks!

[1] http://bkearney.fedorapeople.org/libvirt-java-0.4.5-ALPHA.fc12.src.rpm
[2] http://bkearney.fedorapeople.org/libvirt-0.4.5.ALPHA.jar
[3] http://www.libvirt.org/git/?p=libvirt-java.git;a=summary

Rest: Going from Simple to Good

Leave a comment

We have been playing alot more with Rest at work, and we are seeing that there is alot of docs on how easy it is to spin up a REST interface. However, there is not much on how to make them good. Fortunately, I work with alot of smart people we can have good discussions with. Bill Burke has put up the results of one of the discussions on a good way of modeling state transitions on rest. Check out his post

Rest, I dont think I get it

9 Comments

I sent this as an internal email.. but figured I would post the question as well. File this into the “I dont get it” category. Not as bad as Google Wave, but close.

So.. I hear that Rest is a panacea, but mostly because it is “Rest not SOAP”. I actually understand many of the benefits that REST is gives you:

1) I can use a simple http client to access resources, therefore it is easier to adopt.
2) I inherit alot of the WS-* enhancements from the underlieing http transport, so the frameworks are lighter weight.
3) The ability to use the service both by a client and a browser.. mashups become easy.

What I keep getting hung up on is the absence of a formal description of the interface. I see WADL, but whenever I dig into this it seems to get brushed aside as a nuisance. If i want to write typed clients, then I need to have some formal contract of what can be passed in and what is returned. This contract seems to be what alot of the cruft around SOAP is for. Is there something I am missing with this? The answer the books/articles seem to give is “who needs a formal spec, it is all URI’s”. This tends to be a load of hooey, since some clients (rails in particular) do not handle nicely objects of the same type with heterogeneous data sets.

So.. it seems like Rest (which is not SOAP) makes it easy for the easy clients by skimping on the tools for the more complex clients. I can easily do jersey -> jersey, and I presume Resteasy -> Resteasy. But w/o that neutral definition.. cross implementation clients (robust ones) are actually harder.

Am I missing something?

Latest RHQ: 3.0.0 Build 3

Leave a comment

Another good release from the RHQ team. You can check out the new release here. Lots of new alerting work, and some good performance enhancements. Check it out.

Older Entries

Follow

Get every new post delivered to your Inbox.