Templates/PSADT/PSAppDeployToolkit.Extensions/PSAppDeployToolkit.Extensions.psm1
<#
.SYNOPSIS PSAppDeployToolkit.Extensions - Provides the ability to extend and customize the toolkit by adding your own functions that can be re-used. .DESCRIPTION This module is a template that allows you to extend the toolkit with your own custom functions. This module is imported by the Invoke-AppDeployToolkit.ps1 script which is used when installing or uninstalling an application. #> ##*=============================================== ##* MARK: MODULE GLOBAL SETUP ##*=============================================== # Set strict error handling across entire module. $ErrorActionPreference = [System.Management.Automation.ActionPreference]::Stop $ProgressPreference = [System.Management.Automation.ActionPreference]::SilentlyContinue Set-StrictMode -Version 1 ##*=============================================== ##* MARK: FUNCTION LISTINGS ##*=============================================== function New-ADTExampleFunction { <# .SYNOPSIS Basis for a new PSAppDeployToolkit extension function. .DESCRIPTION This function serves as the basis for a new PSAppDeployToolkit extension function. .INPUTS None You cannot pipe objects to this function. .OUTPUTS None This function does not return any output. .EXAMPLE New-ADTExampleFunction Invokes the New-ADTExampleFunction function and returns any output. #> [CmdletBinding()] param ( ) begin { # Initialize function. Initialize-ADTFunction -Cmdlet $PSCmdlet -SessionState $ExecutionContext.SessionState } process { try { try { } catch { # Re-writing the ErrorRecord with Write-Error ensures the correct PositionMessage is used. Write-Error -ErrorRecord $_ } } catch { # Process the caught error, log it and throw depending on the specified ErrorAction. Invoke-ADTFunctionErrorHandler -Cmdlet $PSCmdlet -SessionState $ExecutionContext.SessionState -ErrorRecord $_ } } end { # Finalize function. Complete-ADTFunction -Cmdlet $PSCmdlet } } ##*=============================================== ##* MARK: SCRIPT BODY ##*=============================================== # Announce successful importation of module. Write-ADTLogEntry -Message "Module [$($MyInvocation.MyCommand.ScriptBlock.Module.Name)] imported successfully." -ScriptSection Initialization |