Info
Version: | 0.37.51 |
Last Update: | Monday, February 10, 2025 |
.NET Fiddle: | Create the first Fiddle |
NuGet Url: | https://www.nuget.org/packages/Bake |
Install
Install-Package Bake
dotnet add package Bake
paket add Bake
Bake Download (Unzip the "nupkg" after downloading)
Bake is a convention based build tool that focuses on minimal to none effort
to configure and setup.
Ideally you should be able to run `bake` in any
repository with minimal arguments and get the "expected" output or better. This
however comes at the cost of conventions and how well Bake works on a project
all depends on how many of the conventions that project follows.
Bake is the right tool for you if you
- ..don't want to have a complicated build setup and configuration
- ..just want to focus on the development part of your project
- ..
want to have the "basics" covered during build and release
- ..just want a build, test and release process that works
Bake is **NOT** the right tool for you if you
- ..like having control of every part of the build and release process
- ..have a project with a lot of custom build and/or release steps
## Features
- **Artifacts** are automatically created for relevant projects.
Examples
are NuGet packages, Windows/Linux single binaries for tools, containers
for `Dockerfile`
- **Release notes** are parsed and added to all applicable artifacts
- **Tests** are automatically located and executed
## Installing Bake
There is a few different ways to install Bake, choose one that best suites your
needs.
* **Download binary** - Simply download a binary from the
[releases](https://github.com/rasmus/Bake/releases)
page that suites your platform and architecture
* **Install .NET tool** - If have the .NET SDK installed, you can install
Bake as a .NET tool.
```
dotnet tool install --global Bake --version [VERSION]
```
**NOTE:** Be sure to always install a specific version to ensure that your
builds does not suddenly change behavior when new features are introduced
in new versions of Bake.
## Usage
Here are some examples of typical arguments passed to Bake.
### Basic test build
Here is the simple use case for using Bake on e.g. pull requests
```
bake run
```
### Basic release build
Here is the simple example of running a release build that sends NuGet packages
created during the release to the GitHub package store for the owner of the
current repository.
```
bake run --convention=Release --destination="nuget>github,container>rasmus"
```.