DeployDotnet 0.1.0-beta.1

This is a prerelease version of DeployDotnet.
dotnet tool install --global DeployDotnet --version 0.1.0-beta.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local DeployDotnet --version 0.1.0-beta.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=DeployDotnet&version=0.1.0-beta.1&prerelease
                    
nuke :add-package DeployDotnet --version 0.1.0-beta.1
                    

DeployDotnet CLI Tool

DeployDotnet CLI is a .NET global/local tool that helps deploy .NET applications using DeployDotnet.

Install

Requires the .NET 10 SDK. Works on Windows, Linux and macOS.

DeployDotnet is in beta, so pass --prerelease (or an exact --version):

dotnet tool install --global DeployDotnet --prerelease

Update later with dotnet tool update --global DeployDotnet --prerelease.

Usage

deploydotnet --help

Common options:

  • --proj path to the .csproj to deploy
  • --api-token API token from DeployDotnet (or set DEPLOYDOTNET_API_TOKEN)
  • --env KEY=VALUE environment variable; can be repeated
  • --env-file PATH dotenv file of environment variables; --env overrides its entries
  • --save-config save resolved config to .deploydotnet/config.json
  • --clear-config remove local saved config
  • --check-config check whether current folder is deployment-ready

Example:

deploydotnet --proj ./MyApp/MyApp.csproj --api-token YOUR_TOKEN --env ASPNETCORE_ENVIRONMENT=Production --save-config

CI Pipelines

Pass the token through the DEPLOYDOTNET_API_TOKEN environment variable rather than --api-token, so it comes from a pipeline secret and stays out of logs and the process list. Name the project with --proj so nothing prompts. For example, in GitHub Actions:

- uses: actions/setup-dotnet@v4
  with:
    dotnet-version: "10.0.x"

- run: dotnet tool install --global DeployDotnet --version 0.1.0-beta.1

- run: deploydotnet --proj ./MyApp/MyApp.csproj --env-file ./deploy.env
  env:
    DEPLOYDOTNET_API_TOKEN: ${{ secrets.DEPLOYDOTNET_API_TOKEN }}

Pin --version in CI so a new release never changes a pipeline unannounced. The token resolves in this order: --api-token, then DEPLOYDOTNET_API_TOKEN, then a saved config, then a prompt.

Environment Variables

Prefer --env-file for secrets: values passed with --env end up in your shell history and are visible in the process list while the deploy runs.

deploydotnet --env-file ./deploy.env

The file is one KEY=VALUE per line. Blank lines and lines starting with # are ignored, a leading export is allowed, and one pair of surrounding quotes is stripped from a value. Nothing else is interpreted: no escapes, no ${VAR} expansion, and no inline comments (so a # inside a value is kept). Keep the file out of source control. The values are sent with the deploy request, not inside the package, and are not saved by --save-config.

Saved Token Storage

--save-config writes .deploydotnet/config.json in the current folder. The API token is protected at rest:

  • Windows — encrypted with DPAPI for the current user; the file is unusable by another account or machine.
  • Linux / macOS — the directory is created 0700 and the file 0600 (owner-only).

The CLI also writes .deploydotnet/.gitignore so the folder never lands in your repository. Use --check-config to see how the saved token is stored.

Uninstall

dotnet tool uninstall --global DeployDotnet
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.1.0-beta.1 94 10/3/2026