ansible / django-ansible-base

Apache License 2.0
18 stars 49 forks source link

[Looking For Feedback] Add feature app #626

Closed john-westcott-iv closed 1 month ago

john-westcott-iv commented 1 month ago

Adds a DAB application whose goal is to give the platform a standard way to have "feature flags". This would enable us to develop features which could be enabled/disabled by an admin user. There are likely many aspects of development which would need to be thought about for feature development.

sonarcloud[bot] commented 1 month ago

Quality Gate Failed Quality Gate failed

Failed conditions
62.4% Coverage on New Code (required ≥ 80%)

See analysis details on SonarCloud

chrismeyersfsu commented 1 month ago

I like that this is a separate app. I could see this being its own microservice .. but not now .. for god sakes not now.

:+1: :heavy_plus_sign:

I'm going to go into bigger picture thoughts. Features flagging is, basically, settings. The landscape of considerations that come with settings. Being able to change the value without restart the system and have them take effect, this is a cache problem. Particularly, invalidation when a value changes. Controller has a hacky feature for reloading rsyslog when external logging config changes. We run a service that listen to pgnotify. A signal is sent when the external logging settings are sent, the service re-writes the rsyslog config file and restart the service.

@TheRealHaoLiu has given thought to this topic.

matburt commented 1 month ago

I kinda disagree with what this is doing... Feature Flags isn't a core capability of AAP, we'd have to maintain this. This is something we should pull off the shelf and my handbook FF proposal does just that.