dotnet-appsettings 0.1.2

.NET 5.0 .NET Core 3.1
There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global dotnet-appsettings --version 0.1.2
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.1.2
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=dotnet-appsettings&version=0.1.2
nuke :add-package dotnet-appsettings --version 0.1.2

dotnet-appsettings - .NET tools

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

Nuget package

NuGet

Build Status

Build Status

Getting started

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
Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
.NET Core netcoreapp3.1
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
0.2.3 2,844 1/27/2023
0.2.2 755 1/11/2023
0.2.1 2,385 7/8/2022
0.2.0 1,058 11/10/2021
0.2.0-rc2 43,763 10/15/2021
0.2.0-rc1 67,272 9/15/2021
0.2.0-preview7 3,123 9/13/2021
0.1.2 66,685 7/6/2021
0.1.1 418 6/14/2021
0.1.0 459 6/5/2021
0.1.0-alpha1.2 145 6/5/2021