As I mentioned somewhere:
- we have two rundeck instances, production one where no one have edit rights except few people, and testing rundeck where people can edit jobs.
- every job xml/yaml is placed in git repo that is periodically uploaded to production rundeck - so we have some configuration management over jobs and auditing
- to eliminate waste in form of duplicates we've developed simple templating system for projects and jobs. So we have kind of project definition with references to templates that should be part of that project, plus content of the project xml/yaml is preprocessed and some placeholders are replaced with value defined for given project
- project itself is managed by our puppet recipe
Personally I believe that configuration management is hard to unify as there is lot of use cases and approaches how are companies using Rundeck. But auditing is another story and some internal functionality should be provided in order to audit changes to project and jobs configuration.