Skip to content
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

Add kill switch for Search and Opportunity data display #2695

Closed
5 tasks
mdragon opened this issue Nov 1, 2024 · 3 comments · Fixed by #3115
Closed
5 tasks

Add kill switch for Search and Opportunity data display #2695

mdragon opened this issue Nov 1, 2024 · 3 comments · Fixed by #3115
Assignees

Comments

@mdragon
Copy link
Collaborator

mdragon commented Nov 1, 2024

Summary

In case we have an issue with bad data that rises to the level of a risk to the program we want to have a way to disable usage of the Search and Opportunity pages respectively to force people back to the existing site.

Use content from #2735

The Dev flags have been set up in AWS Systems Manager - Parameter Store:
/frontend/dev/feature-opportunity-off
/frontend/dev/feature-search-off

Acceptance criteria

  • With the Search flag set to True the Search page does not allow searching and does not display results
  • With the Opportunity flag set to True the Opportunity page does not display data about the Opportunity
  • When the flags are True a message is displayed directing the user to grants.gov until the issue can be resolved
  • With the Search flag set to False the Search page behaves as normal
  • With the Opportunity flag set to False the Opportunity page behaves as normal
@coilysiren
Copy link
Collaborator

coilysiren commented Nov 5, 2024

Kill switch options:

  • env var: no - would get reset on redeploy
  • database value: maybe - this requires database access though, with is a little rare. also would add frontend latency on every request, but not backend latency
  • ssm param at runtime: no - this would add latency to every request that we don't want
  • ssm param at build time: yes - good option, would require a redeploy though

choice: ssm param at build time

@doug-s-nava
Copy link
Collaborator

doug-s-nava commented Nov 7, 2024

seems like we need some consensus on whether or not the AC for this:

  • is ok with a redeploy to introduce a flag change (and read from SSM parameters)
  • is ok with a code change to introduce a flag change (no change necessary)
  • needs to be dynamic at runtime (should probably split out into multiple tickets and discuss approach)

I think this is a question for @mdragon

@mdragon
Copy link
Collaborator Author

mdragon commented Dec 4, 2024

@doug-s-nava lets make this require a code change for now, but set it up where we have the message(from @michellemin-nava in #2735) wired up in the code so that if we flip the variable the message is up and we can roll it out.
Let's make sure this is overridable via a query param for testing both directions, turning on the message for this development, but also bypassing the message in Prod to make sure Search or Opp bugs are fixed before we roll out the code change to turn those features back on.

@doug-s-nava doug-s-nava self-assigned this Dec 5, 2024
@doug-s-nava doug-s-nava moved this from Todo to In Progress in Simpler.Grants.gov Product Backlog Dec 5, 2024
@doug-s-nava doug-s-nava moved this from In Progress to In Review in Simpler.Grants.gov Product Backlog Dec 10, 2024
doug-s-nava added a commit that referenced this issue Dec 11, 2024
#3115)

* adds maintenance page
* adds "kill switch" flags that can be used to direct the search and opportunity pages to
* adds ability to set flags with environment variables
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

Successfully merging a pull request may close this issue.

3 participants