Table of Contents

Recipe overview

The recipe provides with a set of tasks for different project deliveries.

It's built on top of Cake Frosting and available as a NuGet: Cake.Frosting.PleOps.Recipe.

Build state

The tasks requires a build state with build configuration and outputs: PleOpsBuildContext. More information in build context.

Tasks

PleOps.Recipe.Common.CleanArtifacts

PleOps.Recipe.Common.SetGitVersion
└─PleOps.Recipe.Common.RestoreTools

PleOps.Recipe.DocFx.Bundle
└─PleOps.Recipe.DocFx.Build
   └─PleOps.Recipe.Common.RestoreTools

PleOps.Recipe.Dotnet.BuildProject
├─PleOps.Recipe.Dotnet.Restore
├─PleOps.Recipe.Dotnet.Build
│ └─PleOps.Recipe.Dotnet.Restore
└─PleOps.Recipe.Dotnet.Tests
   ├─PleOps.Recipe.Dotnet.Build
   │ └─PleOps.Recipe.Dotnet.Restore
   └─PleOps.Recipe.Common.RestoreTools

PleOps.Recipe.Dotnet.BundleProject
├─PleOps.Recipe.Dotnet.BundleNuGets
└─PleOps.Recipe.Dotnet.BundleApplications
   └─PleOps.Recipe.Common.RestoreTools

PleOps.Recipe.Dotnet.DeployProject
└─PleOps.Recipe.Dotnet.DeployNuGet

PleOps.Recipe.GitHub.ExportReleaseNotes
└─PleOps.Recipe.Common.RestoreTools

PleOps.Recipe.GitHub.UploadReleaseBinaries

Common

Task name Description
RestoreTools Restore dotnet tool defined in the manifest file
CleanArtifacts Clean the artifacts and temporary paths
SetGitVersion Set the version of the repository with GitVersion tool

.NET

Complete information in .NET projects.

Task name Description
Restore Restore NuGet dependencies and run Clean target
Build Build .NET projects
Tests Run tests and create test coverage report
BundleNuGets Pack libraries and tools as NuGet packages
BundleApplications Prepare (publish target) and bundle applications in ZIP files
DeployNuGet Push NuGets to the preview or production feeds
BuildProjectTask Run tasks restore, build and tests
BundleProjectTask Run tasks BundleNuGets and BundleApplications
DeployProjectTask Run task DeployNuGet

DocFX

Task name Description
Build Build the DocFx documentation
Bundle Zip the documentation output

GitHub

Task name Description
ExportReleaseNotes Export release notes from the GitHub repository
UploadReleaseBinaries Upload binaries to the release notes