I’ve just committed a new API URL to Edison which enables the storage of Package Name, Version and Repository linked against the ConfigurationItem FQDN.
This enables you to create a plugin for your package manager that posts to a URL and inserts into a database the packages it has just installed/updated.
As an example, the package manager would need to execute a POST request to http://edison_server/api/auditorium/packages/ with the following data:
- AffectedItem: FQDN of host the packages are being installed/updated on
- Name: The name of the package being updated/installed
- Version: The version of the package which is being updated/installed
- Repository: The repository from which the package has been sourced
This would then create a Package item in the database linked to the Configuration Item letting you search for all packages which have recently been installed on a system.
It works with CURL without issue, I’m hoping to write a YUM plugin (and eventually an apt-plugin as well) to automate this process in the next couple of days.
There are a few things that I think need adding to the model such as the date/time the INSERT was made, however its one step closer to a fully-automated search for changes in system state!
The Hamster is growing…