What it does

This action allows you to build and test .NET apps. You can use it to run NUnit tests and generate artifacts (such as .exe files) and then deploy them.

How it works

Test and build commands defined by the user, are run on a previously built virtual machine running Windows OS. All commands are executed in the context of the repository. Once the commands are run, dependencies and artifacts are saved in the pipeline's filesystem and the virtual machine is terminated.

Action preview


Run commands

  • The field supports multiple commands (one per line), piping commands together, or splitting a single command into multiple lines with \ (backslash) at the end of each line
  • The action is marked as failed when a command exits with a non-zero value
  • The action supports Environment variables which could be used in build commands (Run tab), and in your scripts
  • If encrypted ENV VARs are used in build commands (Run tab), their values will be masked in the action logs
  • Settable variables with a scope higher than the pipeline (ex: project, workspace) are passing their values between pipelines
  • Exit code handling: you can either halt the commands if any throws an error or run the following commands regardless of the result of previous command

Pipeline’s filesystem

  • Action is being run in the pipeline. Each pipeline has it's own persistent filesystem. This filesystem serves as base dependency and artifact cache
  • Filesystem files are copied onto a virtual machine on which the user defined commands/scripts are then run. Once the execution ends, files from the virtual machine are copied back to the pipeline's filesystem and the virtual machine is terminated
  • In the action settings, you can define which files and directories are to be copied between the virtual machine and the filesystem


  • You can change the Docker image used by this action to any other image from the selected Docker registry or an image built with Buddy
  • If the Latest tag is used, Buddy will pull the newest version of the Docker image from the registry on each execution (provided it exists)
  • You can use your own Docker image from the Docker Hub Private and Docker Hub Public, Amazon ECR, Google GCR, or any other private or public Docker repository
  • It is also possible to use custom images created with the Build Docker image action in previous steps of the pipeline


  • If commands specified on the Run tab change the value of the variable marked as settable on the Environment variables tab, the new value will be passed on to the next actions
  • SSH keys defined in the ENV VARs are added to ~/.ssh directory of the launched action, so they can be used to fetch private dependencies


  • It is possible to specify conditions under which the action will be executed
  • Available conditions: always, on changes in the repository since the last run, on changes in specific paths in the repository, or when a Variable has a specific value
  • Error handling: you can either stop the execution, mark action and pipeline as failed or proceed the execution, mark action as warning and jump to the next action
Windows build

Do more with Windows build

Buddy allows you to instantly connect Windows build with 100+ actions to automate your development and build better apps faster.

1 - 9 (of 149)