Invoke-psake
Contributions are welcome in Psake-repo.
SYNOPSIS
Runs a psake build script.
SYNTAX
Invoke-psake [[-buildFile] <String>] [[-taskList] <String[]>] [[-framework] <String>] [-docs]
[[-parameters] <Hashtable>] [[-properties] <Hashtable>] [[-initialization] <ScriptBlock>] [-nologo]
[-detailedDocs] [-notr] [-ProgressAction <ActionPreference>] [<CommonParameters>]
DESCRIPTION
This function runs a psake build script
EXAMPLES
EXAMPLE 1
Invoke-psake
Runs the 'default' task in the '.build.ps1' build script
EXAMPLE 2
Invoke-psake '.\build.ps1' Tests,Package
Runs the 'Tests' and 'Package' tasks in the '.build.ps1' build script
EXAMPLE 3
Invoke-psake Tests
This example will run the 'Tests' tasks in the 'psakefile.ps1' build script. The 'psakefile.ps1' is assumed to be in the current directory.
EXAMPLE 4
Invoke-psake 'Tests, Package'
This example will run the 'Tests' and 'Package' tasks in the 'psakefile.ps1' build script. The 'psakefile.ps1' is assumed to be in the current directory.
EXAMPLE 5
Invoke-psake .\build.ps1 -docs
Prints a report of all the tasks and their dependencies and descriptions and then exits
EXAMPLE 6
Invoke-psake .\parameters.ps1 -parameters @{"p1"="v1";"p2"="v2"}
Runs the build script called 'parameters.ps1' and passes in parameters 'p1' and 'p2' with values 'v1' and 'v2'
Here's the .\parameters.ps1 build script:
properties { $my_property = $p1 + $p2 }
task default -depends TestParams
task TestParams { Assert ($my_property -ne $null) '$my_property should not be null' }
Notice how you can refer to the parameters that were passed into the script from within the "properties" function. The value of the $p1 variable should be the string "v1" and the value of the $p2 variable should be "v2".
EXAMPLE 7
Invoke-psake .\properties.ps1 -properties @{"x"="1";"y"="2"}
Runs the build script called 'properties.ps1' and passes in parameters 'x' and 'y' with values '1' and '2'
This feature allows you to override existing properties in your build script.
Here's the .\properties.ps1 build script:
properties { $x = $null $y = $null $z = $null }
task default -depends TestProperties
task TestProperties { Assert ($x -ne $null) "x should not be null" Assert ($y -ne $null) "y should not be null" Assert ($z -eq $null) "z should be null" }
PARAMETERS
-buildFile
The path to the psake build script to execute
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-taskList
A comma-separated list of task names to execute
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: @()
Accept pipeline input: False
Accept wildcard characters: False
-framework
The version of the .NET framework you want to use during build. You can append x86 or x64 to force a specific framework. If not specified, x86 or x64 will be detected based on the bitness of the PowerShell process. Possible values: '1.0', '1.1', '2.0', '2.0x86', '2.0x64', '3.0', '3.0x86', '3.0x64', '3.5', '3.5x86', '3.5x64', '4.0', '4.0x86', '4.0x64', '4.5', '4.5x86', '4.5x64', '4.5.1', '4.5.1x86', '4.5.1x64'
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-docs
Prints a list of tasks and their descriptions
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: False
Acc