Jobs loaded and executed from XML rather than loaded from XML and executed from DB
Reported by John Wyles | 2011-04-26 09:59:36 UTC
A surprising discrepancy was found between the on disk XML defined for a job and the one loaded in to the DB for RunDeck. Ideally the XML could either be polled and loaded in to the DB on a regular interval or parsed every time the job is loaded/executed.
Comments and changes to this ticket
-

Greg Schueler 2011-04-26 10:52:40 UTC
i suppose something like this could be set up with jenkins/hudson; the job.xml are in source control and when updated a jenkins job is executed that imports them into rundeck.
i.e. normal source control workflow could be used, rather than baking it into the RunDeck system. this is just an observation. We have also talked about ways to organize the job xml on disk as the authoritative source and sync changes made via GUI (like jenkins/hudson does for jobs)
-

Deleted User 2011-04-26 11:04:00 UTC
As a convention, I've been placing them in /var/rundeck/projects/<project>/jobs.d and then rd-jobs load'ing them from there.
-

Alex-SF 2011-04-27 14:21:13 UTC
+1 on @John's point. Possible next steps:
1) decide sync model/life-cycle for job defs between file system and DB
2) discuss configuration settings specifying where job defs live on the FS
3) reconcile changes made through the gui to (versioned?) files on the FS -

Deleted User 2011-06-08 11:50:19 UTC
- Tag set to customer request
-

Greg Schueler 2012-02-28 09:31:14 UTC
Yes, making it a point for plugins would definitely be a requirement of this. I think the crucial questions for this issue are:
- how/when should job definitions be "synched" between the RD datastore and any plugins that provide the definitions?
- Should it be two way, such that any change to a job definition gets written back through the plugins? Or should each plugin get to decide whether it can do this?
- How can a plugin tell Rundeck that something has changed? i.e. push a new definition into Rundeck? (this can already be done with the API)
Some of this overlaps with the existing API: you can already read and write jobs to Rundeck that way.
If we consider the issue in light of a Webhook model, then other web services could perhaps 'subscribe' to job definition data and receive changes via HTTP.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
(DEPRECATED) Please use github issues for issue tracking at http://github.com/dtolabs/rundeck/issues
