PleOps.Cake 0.8.0

Suggested Alternatives

Cake.Frosting.PleOps.Recipe

Additional Details

PleOps recipes based on Cake DSL are not supported. To continue using PleOps recipes, migrate to Cake Frosting based build systems.

dotnet add package PleOps.Cake --version 0.8.0                
NuGet\Install-Package PleOps.Cake -Version 0.8.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="PleOps.Cake" Version="0.8.0">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add PleOps.Cake --version 0.8.0                
#r "nuget: PleOps.Cake, 0.8.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install PleOps.Cake as a Cake Addin
#addin nuget:?package=PleOps.Cake&version=0.8.0

// Install PleOps.Cake as a Cake Tool
#tool nuget:?package=PleOps.Cake&version=0.8.0                

PleOps.Cake pipeline MIT License Build and release

Full automated build, test, stage and release pipeline for .NET projects based on Cake. Check also the template repository to see the pipeline in action!

Release Package
Stable Nuget
Preview Azure Artifacts

Requirements

  • .NET 6.0 SDK
  • [Linux and MacOS only] Mono 6 (for DocFX)

Build system command

The following target are available for build, test and release.

  • BuildTest: build the project and run its tests and quality assurance tools.

  • Generate-ReleaseNotes: generate a release notes and full changelog by analyzing issues and PR of GitHub.

  • Stage-Artifacts: run BuildTest, generate the release notes, build the documentation, pack the libraries in NuGet and stage the executables.

  • Push-Artifacts: push the libraries, applications and documentation to the preview or stable feed.

Preview versions

To use a preview version, add a nuget.config file in the same directory as build.cake with the following content:

<?xml version="1.0" encoding="utf-8"?>

<configuration>
  <packageSources>
    <clear/>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
    <add key="PleOps-Preview" value="https://pkgs.dev.azure.com/benito356/NetDevOpsTest/_packaging/PleOps/nuget/v3/index.json" />
  </packageSources>
  <packageSourceMapping>
    <packageSource key="nuget.org">
      <package pattern="*" />
    </packageSource>
    <packageSource key="PleOps-Preview">
      <package pattern="PleOps.Cake" />
    </packageSource>
  </packageSourceMapping>
</configuration>

Documentation

Feel free to ask any question in the project Discussion site!

Check the documentation for more information. For reference, this is the general build and release pipeline.

release diagram

Build

The project requires to build .NET 6.0 SDK (Linux and MacOS require also Mono). If you open the project with VS Code and you did install the VS Code Remote Containers extension, you can have an already pre-configured development environment with Docker or Podman.

To build, test and generate artifacts run:

# Only required the first time
dotnet tool restore

# Default target is Stage-Artifacts
dotnet cake

To just build and test quickly, run:

dotnet cake --target=BuildTest
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • .NETStandard 2.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

## v0.8.0 (March 01, 2023)


As part of this release we had [1 issue](https://github.com/pleonex/PleOps.Cake/milestone/14?closed=1) closed.

### Migration steps

- Update `cake.tool` to `3.0` in _.config/dotnet-tools.json_. You can also run `dotnet tool update cake.tool`
- Update the PleOps.Cake version to 0.8.0 from `build.cake`
- If using VS Code Remote Containers, pull and rebuild the container
- Note that this version upgrades some third-party dependencies that use native libraries. They may no longer run in _older_ versions of Linux OS that use libc &lt; 2.33 like Ubuntu Focal or Debian 11.

__enhancement__

- [__#61__](https://github.com/pleonex/PleOps.Cake/pull/61) :arrow_up: Upgrade to Cake 3.0 and bump dependencies