itglue / powershellwrapper

This PowerShell module acts as a wrapper for the IT Glue API.
Apache License 2.0
120 stars 51 forks source link

Addition of comment based help #152

Closed Celerium closed 11 months ago

Celerium commented 1 year ago

Addresses issue #56

Quite a bit to go over with this initial update so ZERO rush to get this in place but overall 99% of the changes are the addition of comment-based help to all wrapper functions with support for the Get-Help <command name> -online function.

Example: Get-Help Get-ITGlueUsers -online

What are everyone's thoughts on the structure and or next steps?

Unless otherwise defined all modifications are additions of comment-based help

  1. Pester Tests

    • Updated to Pester 5
    • General test improvements (could use some more tweaks)
    • Added HelpComment.Tests to help validate help-based comments
  2. APIKey

    • Added cmdletbinding to all functions
    • Fixed basic scriptAnalyzer warnings
    • New Test-ITGlueAPIKey
    • Added because its helpful when needing to validate general functionality or when using RMM deployment tools
  3. BaseURI

    • Added cmdletbinding to all functions
    • Fixed basic scriptAnalyzer warnings
  4. ModuleSettings

    • Added cmdletbinding to all functions
    • Fixed basic scriptAnalyzer warnings
    • New Remove-ITGlueModuleSettings
    • Nice to remove saved settings from systems when no longer needed
  5. ConfigurationInterfaces

    • Added cmdletbinding to New-ITGlueConfigurationInterfaces
  6. Configurations

    • Added cmdletbinding to New-ITGlueConfigurations
  7. ConfigurationStatues

    • Added cmdletbinding to New-ITGlueConfigurationStatuses
    • Added cmdletbinding to Set-ITGlueConfigurationStatuses
  8. ConfigurationTypes

    • Added cmdletbinding to New-ITGlueConfigurationTypes
    • Added cmdletbinding to Set-ITGlueConfigurationTypes
  9. Contacts

    • Added cmdletbinding to New-ITGlueContacts
  10. ContactTypes

    • Added cmdletbinding to New-ITGlueContactTypes
    • Added cmdletbinding to Set-ITGlueContactTypes
  11. FlexibleAssetFields

    • Added cmdletbinding to New-ITGlueFlexibleAssetFields
    • Might need to add in mandatory parameters to Get-ITGlueFlexibleAssetFields (Can come later)
  12. FlexibleAssetTypes

    • Added cmdletbinding to New-ITGlueFlexibleAssetTypes
    • Added cmdletbinding to Set-ITGlueFlexibleAssetTypes
  13. FlexibleAssets

    • Might need to add mandatory parameter's to Get-ITGlueFlexibleAssets (Can come later)
  14. Locations

    • Added cmdletbinding to New-ITGlueLocations
    • Should the "Remove-ITGlueLocations" data param need an update paramSet?
  15. Manufacturers

    • Added cmdletbinding to New-ITGlueManufacturers
    • Added cmdletbinding to Set-ITGlueManufacturers
  16. Models

    • Added cmdletbinding to New-ITGlueModels
  17. Organizations

    • Added cmdletbinding to New-ITGlueOrganizations
  18. OrganizationStatuses

    • Added cmdletbinding to New-ITGlueOrganizationStatuses
    • Added cmdletbinding to Set-ITGlueOrganizationStatuses
  19. OrganizationTypes

    • Added cmdletbinding to New-ITGlueOrganizationTypes
    • Added cmdletbinding to Set-ITGlueOrganizationTypes
  20. PasswordCategories

    • Added cmdletbinding to New-ITGluePasswordCategories
    • Added cmdletbinding to Set-ITGluePasswordCategories
  21. Passwords

    • Added cmdletbinding to New-ITGluePasswords
  22. Users

    • Added cmdletbinding to Set-ITGlueUsers
Celerium commented 1 year ago

With all the new development going on when would be a good time to merge these changes? I was thinking once #157 is completed.

This would give me or others time to review any grammar or consistency issues with help descriptions between the functions as well as give a good jumping-off point for further module development.

Celerium commented 1 year ago

I've updated various, grammar, spelling, and word consistency for each of the functions and feel like this is a good starting point for the modules about_help.

I can switch this to ready for review so it can be merged now or after #157.

adrianwells commented 1 year ago

@Celerium this is an impressive amount of work as @CalebAlbers noted. It seems it should be merged soon. @davidhaymond thoughts?

Celerium commented 1 year ago

@Celerium this is an impressive amount of work as @CalebAlbers noted. It seems it should be merged soon. @davidhaymond thoughts?

@adrianwells thank you, something to note as it's been a while, so it would be a good idea to do a once-over of this addition as well as make sure any of the new functions include comment-based help.

davidhaymond commented 1 year ago

@Celerium this is an impressive amount of work as @CalebAlbers noted. It seems it should be merged soon. @davidhaymond thoughts?

I would love to see this merged and included in v2.3.0. I'll see if I can find time this week to review it.

davidhaymond commented 11 months ago

@Celerium This PR seems ready to me. Could you rebase your branch on top of the current master branch and squash all the commits? I'd like to try to keep the Git history relatively clean.

It looks like you've allowed maintainers to edit the PR, so if you like, I can rebase and merge for you.

Celerium commented 11 months ago

@Celerium This PR seems ready to me. Could you rebase your branch on top of the current master branch and squash all the commits? I'd like to try to keep the Git history relatively clean.

It looks like you've allowed maintainers to edit the PR, so if you like, I can rebase and merge for you.

@davidhaymond, if you could that would be wonderful. Thank you

davidhaymond commented 11 months ago

I've cleaned up this PR and merged into master! Thanks again for your incredible contribution, @Celerium!