dotnet-appsettings 0.2.0-rc2

This is a prerelease version of dotnet-appsettings.
There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global dotnet-appsettings --version 0.2.0-rc2
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 dotnet-appsettings --version 0.2.0-rc2
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=dotnet-appsettings&version=0.2.0-rc2&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
nuke :add-package dotnet-appsettings --version 0.2.0-rc2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

dotnet-appsettings - .NET tools

The tool to convert appsettings.json files to Docker Compose environment format (yaml) or json name-value format support bulk update to Application Settings on Azure AppService.

Nuget package

NuGet

Build Status

Build Status

Getting started

.NET 6.0 Support

  • Package version 0.2.*-* support .NET Runtime and .NET SDK 6.0.

Samples

  • appsettings.json
{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "Array": [
    {
      "Name": "Value1"
    },
    {
      "Name": "Value2"
    }
  ],
  "AllowedHosts": "*"
}
  • Environment format for Docker compose file docker-compose.yml
services:
  webapi:
    environment:
      - AllowedHosts=*
      - Array__0__Name=Value1
      - Array__1__Name=Value2
      - Logging__LogLevel__Default=Information
      - Logging__LogLevel__Microsoft=Warning
      - Logging__LogLevel__Microsoft.Hosting.Lifetime=Information

Edit in bulk

[
  {
    "name": "AllowedHosts",
    "value": "*",
    "slotSetting": false
  },
  {
    "name": "Array__0__Name",
    "value": "Value1",
    "slotSetting": false
  },
  {
    "name": "Array__1__Name",
    "value": "Value2",
    "slotSetting": false
  },
  {
    "name": "Logging__LogLevel__Default",
    "value": "Information",
    "slotSetting": false
  },
  {
    "name": "Logging__LogLevel__Microsoft",
    "value": "Warning",
    "slotSetting": false
  },
  {
    "name": "Logging__LogLevel__Microsoft.Hosting.Lifetime",
    "value": "Information",
    "slotSetting": false
  }
]
  • Text format for manually update Azure AppService / Configuration / Application Settings
AllowedHosts
*

Array__0__Name
Value1

Array__1__Name
Value2

Logging__LogLevel__Default
Information

Logging__LogLevel__Microsoft
Warning

Logging__LogLevel__Microsoft.Hosting.Lifetime
Information

Installation dotnet tool globally

Download and install the .NET Core 3.1 SDK or .NET Core 5 SDK or newer. Once installed the .NET Core SDK, run the following command:

dotnet tool install --global dotnet-appsettings

If you already have a previous version of dotnet-appsettings installed, you can upgrade to the latest version using the following command:

dotnet tool update --global dotnet-appsettings

Usage

appsettings appsettings.json appsettings.Production.json

Installation dotnet tool to a path

You can install the tool dotnet-appsettings to a folder

dotnet tool install dotnet-appsettings --tool-path C:\Development\Project1\tools

Usage

C:\Development\Project1\tools\appsettings.exe appsettings.json appsettings.Production.json

Installation dotnet tool locally

You can either install the tool locally in the project folder scope as https://docs.microsoft.com/en-us/dotnet/core/tools/local-tools-how-to-use

cd /d C:\Development\Project1
dotnet new tool-manifest
dotnet tool install dotnet-appsettings

Usage

C:\Development\Project1\Core> dotnet appsettings appsettings.json appsettings.Production.json

Usage

Command line global:
  appsettings [appsettings.json [appsettings.Production.json]]

Command line local:
  dotnet appsettings [appsettings.json [appsettings.Production.json]]

Command line tool path:
  "C:\Development\Project1\tools\appsettings.exe" [appsettings.json [appsettings.Production.json]]

Parameters:
  -p|--path             path to appsettings.json, appsettings.Production.json
  -o|--output-file      path to output-file.json
  -e|--environment      output in docker compose environment
  -t|--text             output in text format
  --skip-slot-setting   skip SlotSetting=false
  -?|-h|--help          help
  --version             version of this tool

Limitations

  • #4: Not implement quote for YAML yet

This package has no dependencies.

Version Downloads Last updated
0.2.0 103 11/10/2021
0.2.0-rc2 43,686 10/15/2021
0.2.0-rc1 67,174 9/15/2021
0.2.0-preview7 3,018 9/13/2021
0.1.2 66,525 7/6/2021
0.1.1 272 6/14/2021
0.1.0 305 6/5/2021
0.1.0-alpha1.2 77 6/5/2021