-
Notifications
You must be signed in to change notification settings - Fork 148
Develop SRE recipe that introduce general delay for home page rendering in Online Boutique #1009
Comments
The release includes the following: * Use [Online Boutique][ob-github] (v0.6.0) as a demo application instead of outdated fork of Hipster Shop * Change the branching model from [gitflow] to [trunk-based] * Modification of CI/CD including: * Cleanup not used workflows * Conversion from self-hosted to Github-hosted [agents] * Improved Terraform validation * Shell script linting validation * Consolidation of all (non-Terraform) scripts into a single `sandboxctl` implemented in Bash script * Support of "delete" operation that does not require shutting down (a.k.a. deleting) Google Cloud project. * Revision of the site documentation and consolidation all documentation in the Github repo. * Revision of the walkthrough guide to help in Sandbox launching As part of the above changes and in order to support further development, this release discontinues support of the following: * Website ([cloud-ops-sandbox.dev](https://cloud-ops-sandbox.dev/)) has a deprecation note displayed in every page announcing end of life (in July). * Website allows to users to launch previous minor release (version 0.8.0) of Sandbox in the case they need discontinued functionality. * Support of the custom Cloud Shell image to launch Sandbox is stopped. Launching process will be guided using interactive tutorial. ### Discontinued functionality This is release does not support some functions and features that exist in the previous minor release (0.8). * Rating service does not in Online Boutique. It has the following effect on Sandbox features: * Sandbox stops provisioning AppEngine services and CloudSQL DB instance. * Sandbox does not demonstrate a window-based SLO definition. * SLO recipe that was using rating service will be removed * Single-click installation is no longer available. Users will use the guided installation using the walkthrough tutorial (from README page). * Launch process does not create a new project. Users will have to create a project by themselves. * Suspension of SRE recipes. Online Boutique does not currently provide adequate support for chaos engineering that is used in SRE recipes. Because of it the version 0.9.0 does not feature SRE recipes. This functionality will be restored in the version 0.10.0 after changing the chaos engineering engine of the recipes. #1009 tracks the work on restoring this function. * Load generator from Online Boutique does not expose GUI for manual customization. It only provides a constant low load. You can use CLI parameter `--skip-loadgenerator` to avoid load generation. GoogleCloudPlatform/microservices-demo#1692 was created to support this functionality in Online Boutique. ### Pending tasks There is a number of tasks that are incomplete at the time of the 0.9.0 release. These tasks will be implemented in the following releases. The list below captures the current set of the tasks: * integration tests to validate correctness of provisioned Cloud Ops resources * enabling release-please bot to automate release PRs * Use [cloud-ops-sandbox.dev](https://cloud-ops-sandbox.dev/) to host a _read-only_ version of Cloud Ops Sandbox that can be used for a reference or as a preview * rennovated SRE recipes engine (will be released in version 0.10.0) ### 🛠️ Resolved issues Fixes #1001, Fixes #1002, Fixes #1003, Fixes #1010, Fixes #1012, Fixes #1018, Fixes #1021, Fixes #987 The following issues will be closed by this release: Closes #216, Closes #324, Closes #453 (as no longer reproducible), Closes #575, Closes #748, Closes #789, Closes #880, Closes #888, Closes #914 (obsolete), #1006 (obsolete) [ob-github]: https://github.com/GoogleCloudPlatform/microservices-demo [gitflow]: https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow [trunk-based]: https://trunkbaseddevelopment.com/ [agents]: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners
Downgrading the issue priority to reflect the decrease in the maintenance capacity of the project. |
Hi @minherz, I understand this issue and #1010 are the main reasons why SRE Recipes were temporarily disabled in 0.9. Instead of injecting code into the current running version of the Online Boutique provisioned by Kustomize, would it make more sense to open PRs on the Online Boutique so faults can be injected by modifying the value of an environment variable, like in 0.8? For example, we could request an update to recommendation_server.py, from: max_responses = 5 to: max_responses = int(os.environ.get("MAX_RESPONSES", 5)) This is compliant with the twelve-factor app good practices and does not introduce any breaking change, so I do not see why the Online Boutique maintainers would decline the PR. That could work for other recipes as well. WDYT? |
We would like to avoid introducing unrelated code changes to other projects. One of the primary goals to remove the code of the demo application from COS was to reduce chorn maintenance of artifacts that aren't related to COS. |
Implement an SRE recipe that will replace recipe 0 and will introduce latency in displaying the Online Boutique's home page by injecting code in one of the other services that support source code refresh at runtime (e.g. Javascript or Python*).
--
* cpython does not support this feature without the use of additional modules (e.g. watchdog). Another way to do it is to convert one or more of the Online Boutique services to run on pypy.
The text was updated successfully, but these errors were encountered: