Watchmen.psm1
# Dot source public/private $Public = @( Get-ChildItem -Path $PSScriptRoot\Public\*.ps1 -Recurse -ErrorAction SilentlyContinue ) $Private = @( Get-ChildItem -Path $PSScriptRoot\Private\*.ps1 -Recurse -ErrorAction SilentlyContinue ) Foreach($import in @($Public + $Private)) { . $import.fullname } Initialize-Watchmen # The allowed commands within the scope of 'WatchmenOptions', 'WatchmenTest', and 'Notifies' # If the commands are called outside of their respective scopes and error will be thrown $script:CommandFences = @{ WatchmenOptions = @( 'Notifies' ) WatchmenTest = @( 'FromSource', 'Notifies', 'TestType', 'Parameters', 'Test', 'Version' ) Notifies = @( 'When', 'Notifies', 'Email', 'EventLog', 'LogFile', 'PowerShell', 'Slack', 'Syslog' ) } # Aliases New-Alias -Name gwt -Value Get-WatchmenTest New-Alias -Name iwt -Value Invoke-WatchmenTest # Export aliases / functions Export-ModuleMember -Alias 'gwt','iwt' Export-ModuleMember -Function $Public.Basename |