Due to current global pandemic conditions I find myself with some extra time to work on this. I do also have an infant, so not a ton of time, but more than I usually have to work on these kinds of projects.
I am currently thinking I will focus on the following things in the module but would love input on any features people would like in an API module out of the box.
- Creating a readthedocs or github pages based webpage for help files integrated with powershell’s
get-help {function-Name} -onlinefunctionality. i.e. https://github.com/darksidemilk/FogApi is a rough draft - Moving the api to its own repo following best practices for powershell modules. https://github.com/darksidemilk/FogApi.
- Update the build script to utilize the new structure and documentation needs
- Make sure each existing function has documentation, especially including examples
- Make it compatible with Powershell 7 (ideally without losing powershell 5 compatibility)
- Once compatible with powershell 7, add more cross platform compatibility for linux and mac (though I don’t have a way to test mac functionality) on all existing functions
- Add Functions for more common fog tasks (Hoping to get some requests to know where focus is best spent)
- Make it so the return object will work with the small api changes in fog 1.6 by making it just return just the content as the count is automatically included in a powershell object or changing the return object in some way that isn’t a breaking change. i.e. it currently returns something like
count: 100
hosts: {hostJsonContent}
in 1.6 I understand it will change to
count: 100
data: {hostJsonContent}
So I may utilize some method to make it so everything returns an object with count and data or just data or something based on what fog version you have. May also add additional 1.6 options if time permits (I understand there are join functions, and options to return just a specific parameter/member of an object or objects, or at least those were the plans 2 years ago)
- Make it so there’s more pipeable commands. i.e. you put some host in a variable and then just pipe it to actions
Get-FogHost -hostname computername | Add-FogHostMac -macaddress "12:34:56:78:90"
This would probably take quite some time to add
We’ll see how much of this I’m able to do in the undetermined amount of time this pandemic has me at home all day.