Hello Mike,

On May 31, 2010, at 23:36 , Mike Haney wrote:

> Hello.  I have been designing a provisioning and licensing system for our
> suite of applications, and I came across ACE which it looks like will give
> me a big headstart in implementing these features.  

Great, we're looking forward in collaborating on this.

> However, I know there
> are some requirements that won't be fulfilled by ACE.  For example, we will
> need to be able to integrate with a third party licensing system,

Actually, we did keep that in mind when developing ACE. If you have a third 
party licensing system that basically can determine which "licenses" (or 
distributions as we call them in ACE) are licensed to which "targets" then 
there is an API for feeding that information programmatically to the system.

> and also
> be able to deploy user-specific configuration data either as property files
> or nodes in a JCR repository.  

For configuration data we currently implement the Auto Config spec, which 
builds on Deployment Admin and Configuration Admin. On top of that we have some 
highly experimental templating system that allows you to have an artifact with 
certain parameters, where these parameters will be substituted based on 
attributes attached to targets.

> It occurred to me that some of those
> capabilities might be useful for other users as well, so I would like to be
> able to contribute them back to the community if they are something people
> think would be generally useful.

Definitely, we would welcome that.

> What would be the best way to structure my development environment so that I
> can modify ACE as needed to make it work for us, but still be able to easily
> commit those changes later?  

Contributions are usually submitted back as patches. These patches are attached 
to Jira issues, so we can track their status.

> I've never contributed to an open-source
> project before, so maybe there is a standard way to isolate our changes from
> the development trunk that I'm not aware of.  

There are no special things in place for that. Just checkout the project, make 
your changes and create a patch from that.

> Any pointers to documentation
> or tips in this area would be greatly appreciated.

http://www.apache.org/foundation/how-it-works.html provides some general 
information on how the Apache Software Foundation works.

How to best create patches depends on your favourite IDE. What are you using?

Greetings, Marcel

Reply via email to