Feature #1377
closedForeman should support a "versioning" backend (for templates, params/vars, etc)
Description
Use case example :
Say you use a template to provision a machine. Afterwards someone edits this template. This is saved directly in the DB and if you need to re-provision that machine (or a "clone") Foreman is not able to guarantee you are deploying the same machine as it's not aware of the version of the template you used.
You are also not able to rollback to a previous working version.
Possible other places where you might want versioning (Similar story where you can't roll back to a previous version.):
- Smartvars / Parameters
- Hostgroups
- etc
We had different discussions about this implementation and I guess it all boils down to 2 options:
Option 1- Implement that on the DB creating your own version control system
Option 2- Use an existing alternative backend like GIT to store that information
Both options have advantages and disadvantages and we could probably discuss them here in this ticket.