sillsdev / sillsdev/serval

Specify settings in appsettings.json files instead of Kubernetes config

Open
#27 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

deployment
Dominant language
C#
Stars
3
Forks
2
Avg merge
3d 1h
Merged PRs (30d)
3

Description

Currently, most settings are configured as environment variables in the Kubernetes deployment configuration. These settings should be defined in the appropriate appsettings.json file based on the environment (connection strings, logging, engines, etc.). Only secrets should be configured in by environment variables.

By default, ASP.NET Core supports three environments: Production, Staging, and Development. appsettings.json is for production and contains the defaults for the other files. appsettings.Staging.json is for QA. We could use it for external QA. appsettings.Development.json is for development. We will probably need to add another environment for internal QA, if it has different settings than external QA. We can call it InternalStaging or something like that, so that would use appsettings.InternalStaging.json.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the Kubernetes deployment configuration and the appsettings.json, appsettings.Staging.json, and appsettings.Development.json files described in the issue. Inventory non-secret environment variables and map them to the appropriate environment configuration, leaving secrets as environment variables. Confirm the ASP.NET Core environments and verify deployments still load the intended settings.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, kubernetes
Domain
api, backend, devops
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.