Task-oriented PowerShell build automation for .NET based on a set of conventions. It leverages Invoke-Build and it consists of a set of predefined tasks and the ability to create custom ones.
Pask is shipped as NuGet package and it should be installed via NuGet Package Manager in Visual Studio 2015/2017.
To run a build, open a PowerShell session and execute the build runner:
PS C:\Path_to_your_solution> .\Pask.ps1
Check out the getting started guide.
Pask is a modular task-oriented PowerShell build tool for .NET which relies on Invoke-Build DSL (domain specific language). It provides a set of predefined tasks and the ability to easily create custom ones.
On very simple projects, building and testing the software can be accomplished using the capabilities of your IDE (Integrated Development Environment).
However, this is really only appropriate for the most trivial of tasks.
Soon enough any project would demand more control and so it is vital to script building, testing and packaging activities.
Pask can target any .NET solution following some basic convention patterns and it can be used at any stage of a Deployment Pipeline allowing to define the pipelined job processes with code.
Primarily to make the build process a first class citizen and treat it exactly as the code which is building. Pask introduces a set of conventions and predefined tasks which reduce the overhead of setting up a build pipeline for new projects. It allows to catch failed builds earlier by running the same process on a CI server as well as on a development machine. Pask is designed to be extended to reduce the amount of boilerplate code in your build scripts by creating extensions with single responsibility.
- Project Wiki: Detailed documentation of conventions and patterns
- Invoke-Build: Wiki, script tutorials and examples
- The project was inspired by PowerTasks and psakify
Pask is Copyright © 2017 Luca Sgroi under the Apache License.