openwisp / openwisp/openwisp-utils

[feature] Design mechanism to define default settings

Open
#408 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
93
Forks
104
Avg merge
14h 10m
Merged PRs (30d)
22

Description

Is your feature request related to a problem? Please describe.

It's not uncommon that a specific setting needs to be added to the project settings, due to a change in a dependency or in a module.
This creates a bit of friction when maintaining the installers.

Describe the solution you'd like

I am wondering if we can find a solution for this which avoids the need of constantly modifying the settings.

If in each module we could specify a set of default settings that have to be automatically added to the project settings, we may make maintenance easier, we may also make upgrading custom deployments easier.

Describe alternatives you've considered
N/A.

Additional context
E.g.:

Contributor guide

Open the contributing guide

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

Start by reading Django's custom default settings documentation and the linked openwisp-users and ansible-openwisp2 pull requests. Then inspect how openwisp-utils and its modules currently define and install settings. Done means agreeing on and documenting a mechanism that reduces manual project-settings changes during dependency or module updates.

Written by the indexing model from the issue text.

Assessment

Tech stack
django, python
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.