С# Microsoft(.NET)

This configuration is suitable if the project is built using Maven and runs on .NET. In this case, the project can be written in languages such as C#, F# and all supported languages for .NET.

You can write a yaml file yourself using the instructions below, or use our yaml generator by clicking on link, or fill it out in the «Configuration» section of your personal account.

Meta section

The meta section of the amverum.yml file will look like this:

meta:
  environment: csharp
  toolchain:
    name: dotnet
    version: 8.0

The only parameter that can be changed here is meta.toolchain.version. Logically, this is the version of .NET that should be used for the build. Technically, the value of version is substituted into the name of the Docker image that will be used.

For the build and run phase, this is mcr.microsoft.com/dotnet/sdk:${meta.toolchain.version}. The valid values can be seen on the docker hub page.

Important

The meta.toolchain.version value must be valid for both the build and run phases. The best way is to simply use the LTS version number of .NET.

Build section

The following parameters can be specified in the build section:

  • image

  • args

  • artifacts

The image parameter allows you to use a different build image than the one provided by Amverum. The image must meet the following requirements:

  • source code for the build is expected in the /app folder (or image, no matter where the source code is located);

Section run

The following parameters can be used in the run section:

  • image

  • buildFileName

  • persistenceMount

  • containerPort

The image parameter allows you to use a different build image than the one provided by Amverum. The image must meet the following requirements:

  • the build result is expected in the /app folder (or image, it doesn’t matter where the build result is located);

The buildFileName parameter is the name of your project.

If you don’t know where to get the buildFileName parameter. Enter the following command on your computer in the project folder: dotnet build. You will get a folder bin/Debug/net*.0/${buildFileName}. You need to take the file name .exe without the extension. An example can be found in the minimal amverum.yml file

The persistenceMount parameter allows you to specify in which directory the folder with persistent storage will be mounted. The default value is /data.

The containerPort parameter allows you to specify which port the application listens on. The default value is 80.

Recipes

Minimal amverum.yml file

meta:
  environment: csharp
  toolchain:
    name: dotnet
    version: 8.0

run:
  buildFileName: bin/WebApplication

Important: The buildFileName field must be in the format bin/file_name, or bin/publish/file_name if you are doing it via publishing.