ImmyBot Reflection

What reflection is possible in ImmyBot? Within a script, can I ask ImmyBot for a list of deployments that apply to the current computer?

Would this work via the (undocumented but kind of documented) API?

I don’t think this is currently possible, but I like the idea.

At the beginning of a maintenance session, all of the deployments get resolved, which takes some time, so I doubt there is an API call that will do this outside of a session being started.

That said, how would you utilize this if you had it? I’m hard pressed to think of how I would use this?

This leans into the “remove duplicate versions” topic. I started thinking about a maintenance task that could remove duplicate versions of software (as per other thread), instead of the current approach which seems to be per-software.

Gathering the info is straightforward, figuring out which is the latest version is also straightforward, but calling one uninstaller seems to remove all the versions (for some software at least).

So the idea of “reflection” would be to allow the maintenance task to find the software/deployment entry for that item/computer and invoke the repair/reinstall/etc.

This all gets very meta though, and probably creates more problems than it solves :frowning:

You don’t need reflection to determine that, just a software test and a script to uninstall multiple versions, both of which already exist in Immy. We just have to use them on software that we find is prone to this kind of issue,