Enable Django infrastructure to support site changes without code push

RESOLVED FIXED in 1.1

Status

P2
normal
RESOLVED FIXED
7 years ago
5 years ago

People

(Reporter: lorchard, Unassigned)

Tracking

unspecified

Details

(Whiteboard: u=administrator c=siteadmin p=3)

(Reporter)

Description

7 years ago
We can use jsocol's django-waffle [1] and django-constance [2] to implement site switches and variable settings that can be managed from the admin pages without a code push.

Given that infrastructure, we can build content & features whose visibility and functionality are conditional based on admin settings. The catch is that content & features need to be implemented, QA'ed, and pushed to the site before they're needed.

This bug is intended to track the installation and activation of the necessary infrastructure.

[1]: https://github.com/jsocol/django-waffle/
[2]: https://github.com/jezdez/django-constance
(Reporter)

Updated

7 years ago
Whiteboard: u=developer c=siteadmin p=3
(Reporter)

Updated

7 years ago
Whiteboard: u=developer c=siteadmin p=3 → u=administrator c=siteadmin p=3
(Reporter)

Comment 1

7 years ago
Not included in this bug, BTW, is making Dev Derby content in particular switchable. That'll be another point or so worth of work, but fairly easy to just make a part of the next content push once the groundwork is done
Les, I also noticed that current derby content block is in devderby_landing.html. Is part of this bug to move the current challenge content block up into the tag in __init__.py?
(Reporter)

Comment 3

7 years ago
(In reply to comment #2)
> Les, I also noticed that current derby content block is in
> devderby_landing.html. Is part of this bug to move the current challenge
> content block up into the tag in __init__.py?

No, this bug is just about getting waffle and/or constance working on MDN. File additional bugs for anything beyond that.
It seems Les is making good progress on this, and it could save us time in the future, so I would hesitate to put it off for long.
OS: Mac OS X → All
Priority: -- → P2
Hardware: x86 → All
We'll want to be sure the switches automatically move Derbies into the "Previous" tab after they have ended. See for example bug 675803, which we forgot to file until a day before the 0.9.9 push.
Target Milestone: --- → 1.1
Summary: Enable Django infrastructure to support site changes without code push → devderby: Enable Django infrastructure to support site changes without code push
Whiteboard: u=administrator c=siteadmin p=3 → u=administrator c=devderby p=3
(Reporter)

Comment 6

7 years ago
FWIW, this bug is not about dev derby. This is about getting waffle and/or constance installed. Changes to dev derby require another bug to build on top of waffle or constance. Other parts of the site will be able to take advantage of run-time admin options, as well
Summary: devderby: Enable Django infrastructure to support site changes without code push → Enable Django infrastructure to support site changes without code push
(Reporter)

Updated

7 years ago
Whiteboard: u=administrator c=devderby p=3 → u=administrator c=siteadmin p=3
(Reporter)

Updated

7 years ago
Blocks: 683919
(Reporter)

Comment 7

7 years ago
Just filed bug 683919 to be more explicit about next steps required to manage Dev Derby content in particular.
(Reporter)

Comment 8

7 years ago
This went faster than I expected. From a first look, I thought it would need a redis server installed by IT, but it looks like django-constance should work fine with mysql+memcached (which we already have)

https://github.com/mozilla/kuma/commit/868e94bd3d92b1a8038aac84f71a9806b4b26fb4

bug 672238 and bug 683919 - Dynamic config and Dev Derby

* vendor lib update for django-waffle and django-constance
* Remove Dev Derby content selection tags from apps/demos/__init__.py
* Dev Derby constance config defaults added to settings.py
* Grab current challenge, upcoming challenges, previous winner, and
  challenge choices for Dev Derby landing from constance config
* Front and center challenge on Dev Derby landing pulled from current
  challenge tag
* Grab challenge tag choices for Demo Submission form from constance
  config
* Bugfix for pre-checked challenge tag choice on demo submission form
* Bugfix for unicode strings in tag description helpers
* parse_tags utility that preserves user input ordering
* South migration for constance
* Re-enabled ~/vagrant/log/kuma-django.log
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → FIXED
(Assignee)

Updated

6 years ago
Version: Kuma → unspecified
(Assignee)

Updated

6 years ago
Component: Website → Landing pages
Product: Mozilla Developer Network → Mozilla Developer Network
You need to log in before you can comment on or make changes to this bug.