Skip to content

Commit dd968ba

Browse files
committed
Remove waffle flag '2fa-enforcement-for-developers-and-special-users'
1 parent 7415053 commit dd968ba

File tree

8 files changed

+0
-83
lines changed

8 files changed

+0
-83
lines changed

docs/topics/development/waffle.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ over flags in most cases as switches are:
1212

1313
Flags can be used if you want to do a gradual rollout a feature over time or to a subset of users.
1414

15-
We have a flag `2fa-enforcement-for-developers-and-special-users` in production now.
16-
1715
## Creating/Deleting a switch
1816

1917
Switches are added via database migrations.

src/olympia/accounts/decorators.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@ def two_factor_auth_required(f):
1717
def wrapper(request, *args, **kw):
1818
if not request.session.get(
1919
'has_two_factor_authentication'
20-
) and waffle.flag_is_active(
21-
request, '2fa-enforcement-for-developers-and-special-users'
2220
):
2321
# Note: Technically the user might not be logged in or not, it does
2422
# not matter, if they are they need to go through FxA again anyway.

src/olympia/accounts/tests/test_decorators.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ def setUp(self):
1717
self.request = RequestFactory().get('/')
1818
self.request.session = {}
1919
self.request.user = AnonymousUser()
20-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
2120

2221
def test_has_two_factor_auth(self):
2322
self.request.session['has_two_factor_authentication'] = True
@@ -36,15 +35,6 @@ def test_does_not_have_two_factor_auth_yet(self):
3635
)['location']
3736
self.assert3xx(response, expected_redirect_url)
3837

39-
def test_does_not_have_two_factor_auth_yet_but_waffle_is_off(self):
40-
self.create_flag(
41-
'2fa-enforcement-for-developers-and-special-users', everyone=False
42-
)
43-
func = two_factor_auth_required(self.f) # Does nothing
44-
response = func(self.request)
45-
assert self.f.call_count == 1
46-
assert response == 'FakeResponse'
47-
4838
def test_does_not_have_two_factor_auth_yet_anonymous(self):
4939
func = two_factor_auth_required(self.f)
5040
response = func(self.request)

src/olympia/accounts/tests/test_views.py

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -600,7 +600,6 @@ def _test_should_continue_without_redirect_for_two_factor_auth(
600600
}
601601

602602
def test_addon_developer_should_redirect_for_two_factor_auth(self):
603-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
604603
self.user = user_factory()
605604
# They have developed a theme, but also an extension, so they will need
606605
# 2FA.
@@ -609,37 +608,17 @@ def test_addon_developer_should_redirect_for_two_factor_auth(self):
609608
self._test_should_redirect_for_two_factor_auth()
610609

611610
def test_special_user_should_redirect_for_two_factor_auth(self):
612-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
613611
self.user = user_factory()
614612
# User isn't a developer but is part of a group.
615613
self.grant_permission(self.user, 'Some:Thing')
616614
self._test_should_redirect_for_two_factor_auth()
617615

618-
def test_user_should_redirect_for_two_factor_auth_flag_user_specific(self):
619-
self.user = user_factory()
620-
flag = self.create_flag(
621-
'2fa-enforcement-for-developers-and-special-users', everyone=False
622-
)
623-
flag.users.add(self.user)
624-
# User isn't a developer but is part of a group.
625-
self.grant_permission(self.user, 'Some:Thing')
626-
# The flag is enabled for that user.
627-
self._test_should_redirect_for_two_factor_auth()
628-
629-
# Others should be unaffected as the flag is only set for a specific
630-
# user.
631-
self.user = user_factory()
632-
self.grant_permission(self.user, 'Some:Thing')
633-
self._test_should_continue_without_redirect_for_two_factor_auth()
634-
635616
def test_theme_developer_should_not_redirect_for_two_factor_auth(self):
636-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
637617
self.user = user_factory()
638618
addon_factory(users=[self.user], type=amo.ADDON_STATICTHEME)
639619
self._test_should_continue_without_redirect_for_two_factor_auth()
640620

641621
def test_addon_developer_already_using_two_factor_should_continue(self):
642-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
643622
self.user = user_factory()
644623
addon_factory(users=[self.user])
645624
identity = {
@@ -652,7 +631,6 @@ def test_addon_developer_already_using_two_factor_should_continue(self):
652631
)
653632

654633
def test_2fa_enforced_already_using_two_factor_should_continue(self):
655-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
656634
self.user = user_factory()
657635
identity = {
658636
'uid': '1234',
@@ -668,27 +646,10 @@ def test_2fa_enforced_already_using_two_factor_should_continue(self):
668646
assert 'enforce_2fa' not in self.request.session
669647

670648
def test_2fa_enforced_on_this_view_should_redirect_for_two_factor_auth(self):
671-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
672649
self.user = user_factory()
673650
self.request.session['enforce_2fa'] = True
674651
self._test_should_redirect_for_two_factor_auth()
675652

676-
def test_waffle_flag_off_developer_without_2fa_should_continue(self):
677-
self.create_flag(
678-
'2fa-enforcement-for-developers-and-special-users', everyone=False
679-
)
680-
self.user = user_factory()
681-
addon_factory(users=[self.user])
682-
self._test_should_continue_without_redirect_for_two_factor_auth()
683-
684-
def test_waffle_flag_off_enforced_2fa_should_have_no_effect(self):
685-
self.create_flag(
686-
'2fa-enforcement-for-developers-and-special-users', everyone=False
687-
)
688-
self.user = user_factory()
689-
self.request.session['enforce_2fa'] = True
690-
self._test_should_continue_without_redirect_for_two_factor_auth()
691-
692653
@override_settings(FXA_CONFIG={'default': {'client_id': ''}})
693654
def test_fake_fxa_auth(self):
694655
self.user = user_factory()

src/olympia/accounts/views.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -294,19 +294,9 @@ def inner(self, request):
294294
extra={'sensitive': True},
295295
)
296296
user = find_user(identity)
297-
# We can't use waffle.flag_is_active() wrapper, because
298-
# request.user isn't populated at this point (and we don't want
299-
# it to be).
300-
enforce_2fa_flag = waffle.get_waffle_flag_model().get(
301-
'2fa-enforcement-for-developers-and-special-users'
302-
)
303-
enforce_2fa_flag_is_active = enforce_2fa_flag.is_active(request) or (
304-
enforce_2fa_flag.pk and enforce_2fa_flag.is_active_for_user(user)
305-
)
306297
if (
307298
user
308299
and not identity.get('twoFactorAuthentication')
309-
and enforce_2fa_flag_is_active
310300
and (
311301
user.is_addon_developer
312302
or user.groups_list

src/olympia/devhub/tests/test_views.py

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -916,7 +916,6 @@ def setUp(self):
916916
self.client.force_login_with_2fa(UserProfile.objects.get(email='[email protected]'))
917917
self.user = UserProfile.objects.get(email='[email protected]')
918918
self.user.update(last_login_ip='192.168.1.1')
919-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
920919

921920
def _submit_actions(self, doc):
922921
return doc('form[name=api-credentials-form] button[type=submit][name=action]')
@@ -1283,7 +1282,6 @@ def setUp(self):
12831282
self.client.force_login(self.user)
12841283
self.url = reverse('devhub.upload')
12851284
self.xpi_path = self.file_path('webextension_no_id.xpi')
1286-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
12871285

12881286
def post(self, theme_specific=False, **kwargs):
12891287
data = {
@@ -1452,17 +1450,6 @@ def test_upload_extension_without_2fa(self):
14521450
}
14531451
}
14541452

1455-
def test_upload_extension_without_2fa_waffle_is_off(self):
1456-
self.create_flag(
1457-
'2fa-enforcement-for-developers-and-special-users', everyone=False
1458-
)
1459-
self.url = reverse('devhub.upload')
1460-
response = self.post()
1461-
upload = FileUpload.objects.get()
1462-
assert upload.channel == amo.CHANNEL_LISTED
1463-
url = reverse('devhub.upload_detail', args=[upload.uuid.hex, 'json'])
1464-
self.assert3xx(response, url)
1465-
14661453
def test_upload_theme_without_2fa(self):
14671454
self.xpi_path = os.path.join(
14681455
settings.ROOT, 'src/olympia/devhub/tests/addons/static_theme.zip'

src/olympia/devhub/tests/test_views_submit.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ def setUp(self):
7171
self.client.force_login_with_2fa(self.user)
7272
self.user.update(last_login_ip='192.0.2.1')
7373
self.addon = self.get_addon()
74-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
7574

7675
def get_addon(self):
7776
return Addon.objects.get(pk=3615)
@@ -407,7 +406,6 @@ def setUp(self):
407406
self.client.force_login_with_2fa(self.user)
408407
self.user.update(last_login_ip='192.0.2.1')
409408
self.url = reverse('devhub.submit.distribution')
410-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
411409

412410
def test_check_agreement_okay(self):
413411
response = self.client.post(reverse('devhub.submit.agreement'))
@@ -523,7 +521,6 @@ def setUp(self):
523521
self.user.update(last_login_ip='192.0.2.1')
524522
self.upload = self.get_upload('webextension_no_id.xpi', user=self.user)
525523
self.statsd_incr_mock = self.patch('olympia.devhub.views.statsd.incr')
526-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
527524

528525
def post(
529526
self,
@@ -2235,7 +2232,6 @@ def setUp(self):
22352232
self.version.save()
22362233
self.upload = self.get_upload('webextension.xpi', user=self.user)
22372234
self.statsd_incr_mock = self.patch('olympia.devhub.views.statsd.incr')
2238-
self.create_flag('2fa-enforcement-for-developers-and-special-users')
22392235

22402236
def post(
22412237
self,

src/olympia/devhub/views.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -621,9 +621,6 @@ def upload(request, channel='listed', addon=None, is_standalone=False):
621621
not theme_specific
622622
and not is_standalone
623623
and not request.session.get('has_two_factor_authentication')
624-
and waffle.flag_is_active(
625-
request, '2fa-enforcement-for-developers-and-special-users'
626-
)
627624
):
628625
# This shouldn't happen: it means the user attempted to use the add-on
629626
# submission flow that is behind @two_factor_auth_required decorator

0 commit comments

Comments
 (0)