-
-
Notifications
You must be signed in to change notification settings - Fork 218
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Convert FORM_LINK_WORKFLOW FF to a Standard plan privilege #32431
Conversation
This needs a bit more work on the strategy for dealing with domains that are below standard plan and have enabled the flag. Currently I have captured the subscription data for all the domains that have the flag enabled. |
@snopoke @biyeun @dannyroberts Just checking for others inputs on how to deal with domains that are under a plan that we want to upgrade the feature flag to. This is likely going to be an issue with other flags that will be GAed soon, so arriving at a good solution will make it easy for others to follow. I am happy to implement those, but want to get input from the wider team. @gherceg suggested taking the approach of creating a custom plan using a method he followed earlier. This is likely the best approach we have so far, but I suspect if this will create too many accounting data models when we do this for large number of feature flags. |
@sravfeyn I'm not sure what the best approach here is. This seems like something you should discuss with the SaaS ops team? |
I have added a CEP #32482 that I am planning to implement to deal with the problem of enabling for domains that may not have paid plan. |
] | ||
|
||
operations = [ | ||
migrations.RunPython(_grandfather_form_link_workflow_privs), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I'm not mistaken, this migration is not revertable if a "down" method is not specified
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't usually add a down method for these sort of migrations,
corehq/toggles/__init__.py
Outdated
@@ -537,7 +537,7 @@ def all_toggles_by_name_in_scope(scope_dict, toggle_class=StaticToggle): | |||
result = {} | |||
for toggle_name, toggle in scope_dict.items(): | |||
if not toggle_name.startswith('__'): | |||
if isinstance(toggle, toggle_class): | |||
if type(toggle) == toggle_class: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: add comment to indicate why isinstance
can't be used
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added
Build is passing now. Bumping to see if there is any further feedback on this PR. |
Hey @snopoke does this look good to you now? |
Product Description
This moves the FORM_LINK_WORKFLOW toggle to a Standard plan privilege within the existing End of Form Navigation feature.
https://dimagi-dev.atlassian.net/browse/SC-2410
Technical Summary
Feature Flag
Removed FORM_LINK_WORKFLOW toggle
Safety Assurance
Safety story
I have tested this locally for apps built with toggle enabled previously before removing the toggle and I have tested that the feature works without the toggle for fresh apps.
Automated test coverage
Tests exist
QA Plan
NA, I have done UI tests myself as they are minimal
Migrations
Rollback instructions
If the toggle deletion needs to be reverted we need to identify domains that start using the feature without the toggle and then enable the toggle for those domains after reverting
Labels & Review