[Spacewalk-list] Spacewalklib: managing Linux systems from Java applications

Alfredo Moralejo amoralej at redhat.com
Sun Jan 2 21:40:54 UTC 2011


  Hi,

In the last three months I've been spending some time in the creation of 
a java library to work with spacewalklib API. The idea behind is being 
able to integrate spacewalk or satellite server in any Java application, 
specially to work within datacenters orchestrators or other system 
management tools that provide a way to extend their capabilities with 
Java code.

I've called it spacewalklib and I've created a project in sourceforge 
for it http://spacewalklib.sourceforge.net/

As it's primarly intended to manage client systems, I've focused in the 
client management more that in the tool management itself (for example, 
I did not implement channels creation or cloning yet), however 
additional features in future may be added if required.

In addition to the library itself, I've created some classes to use 
spacewalklib to create workflows with jBPM (workflow engine in JBoss) as 
a proof of concept. This may be highly improved but I think it can give 
an idea about what can be done.

Some resources that I think can be helpful:

- Main web: http://spacewalklib.sourceforge.net/
- Blog: https://sourceforge.net/apps/wordpress/spacewalklib/
- Javadoc documentation: http://spacewalklib.sourceforge.net/javadoc
- Git repository that contains (can be browsed in 
http://spacewalklib.git.sourceforge.net/git/gitweb.cgi?p=spacewalklib/spacewalklib;a=summary 
):

   1. doc: documentation in javadoc format.
   2. lib: spacewalk library in jar format. Only the classes of
      spacewalklib package are included in the jar file.
   3. source: source code files. Following packages have been created:

    * spacewalklib/spacewalklib: is the actual spacewalklib package.
    * spacewalklib/junit_tests: contains some junit tests created during
      the development. They have been created for a specific environment
      so they can not be executed as found in other environments, but
      are added as an code examples.
    * spacewalklib/spacewalklib/jbpm: it contains spacewalklib.jbpm
      package, composed of a set of classes used as Handlers for JBPM
      processes.
    * spacewalklib/jpdl: contains a set of jpbm created as examples of
      use of spacewalklib.

- I've uploaded a video to youtube with a demo of spacewalklib 
integration in jBPM in http://www.youtube.com/watch?v=Baep5hpcvbE .

Note that I've created this library as a Thesis Project for a Master 
Degree in Free Software and I'm not a very experienced developer in Java 
so I'm sure that the code can be improved, however, I hope it can be 
useful for you and give you some ideas about integration of spacewalk 
with other tools and creation of more complex sequence of tasks to 
manage Linux systems.

Best regards,

Alfredo Moralejo

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/spacewalk-list/attachments/20110102/03358018/attachment.htm>


More information about the Spacewalk-list mailing list