More Inventory Management Options
Feature request
What feature do you suggest?
-
Import/update inventory from git projects into UI
-
Add additional information in the UI about hosts/groups/inventories
-
Additional inventory/group/host filters
How do you imagine it?
1. Import/update inventory from git project into UI
Currently a git project can have a ./inventory file, but it isn't shown in the UI. AWX performs this feature through a sources tab in the inventory. The features I'm looking for are pretty much the same ones AWX supports. Please see below AWX implementation.
Below is how each one works
Personally, I don't feel "Update on launch" being very useful to me, but I'd like the others implemented. It's up to you if you want to follow how AWX performed overwrite (if overwrite=true and local to polemarch and not in git inventory list, it moves it to global inventory rather than delete), but I'd be happy with a true overwrite of hosts.
I would love this to be a feature in .polemarch.yaml file rather than directly adding to UI. Something like below.
Maybe utilize "sync_on_run" variable for syncing inventories as well and get rid of variable "update_on_project_update"?
inventories:
inventory:
id: 1
file: inventory
overwrite: true
overwrite_variables: false
update_on_launch: false
update_on_project_update: true
inventory:
id: 2
file: inventory2
overwrite: true
overwrite_variables: false
update_on_launch: false
update_on_project_update: true
2. Add additional information in the UI about hosts/groups/inventories
Polemarch provides very basic information about a host. I'd like if it provided more information like AWX does. I'd like to know if it belongs to any inventory and what groups it belongs to. This greatly helps in auditing what a host does
I'd like to see what inventories a group belongs to in the UI
If I try to delete an inventory that belongs to a project, I get an error that it's in use. It'd be beneficial to see what projects are using the inventory in the UI.
3. Additional inventory/group/host filters
During testing, I performed a lot of imports in inventory/projects and this resulted in a lot of duplicates and I didn't see an easy way to really audit if something was even in use. For long term use, this would be difficult to maintain. AWX supports some of these features, please see below example of searching for inventories that contain a host in AWX.
- Host filters
- A way to filter for duplicate hostnames besides just searching for name
- A way to search for host that contain a specific group (including a way to search for hosts that belong to no groups)
- A way to search for hosts that belong to an inventory (including a way to search for hosts that belong to no inventories)
- Group filters
- A way to filter for duplicate group names besides just searching for name
- A way to search for groups that contain a specific host (including a way to search for groups that contain no hosts)
- A way to search for groups that belong to an inventory (including a way to search for groups that contain no inventories)
- Inventory filters
- A way to filter for duplicate inventory names besides just searching for name
- A way to search for inventories that contain a specific host (including a way to search for inventories that contain no hosts)
- A way to search for inventories that contain a specific group (including a way to search for inventories that contain no groups)
Why do you think that this feature should be implemented in the application?
I absolutely love the way Polemarch handles templates on a project level with options to select compared to AWX , but I feel it's missing a lot of really helpful inventory features that AWX has.