istio.io
istio.io copied to clipboard
Automate microservices tutorial
This PR tries to automate the microservices tutorial in the example section of the Istio docs. It consists of 2 parts:
- update to the istio.io test framework to use the same test framework across multiple tests (parent-child relationship)
- added automated tests for the microservices tutorial which has the parent-child relationship
- Throughout all the tutorials, updated the commands to create resources in the
tutorialnamespace - In
setup-kubernetes-cluster, updated the roles and rolebindings foristio-systemandtutorialnamespaces. The original RBAC permissions are very broad and allow all verbs on all resources for several Kubernetes API Groups. In this PR, we have added a finer grained Kubernetes RBAC Role for read-write access to a participant's namespace. Also added aClusterRole andClusterRoleBindingto enable manual sidecar injection for pods in thetutorialnamespace [add-istio-Enable Istio on productpage`].
- Throughout all the tutorials, updated the commands to create resources in the
Updates to the test framework to support this scenario includes added 3 new optional tags to the TestCase object -
- @parent: this is the parent id that will be used to identify the parent test case
- @child: this indicates that the test case if the child of a parent id. The parent id set using the @parent tag will be used here.
- @order: this tag will be used to specify the order in which the child tests need to be run
The child tests will be run as a subtest of the parent test.
Fixes istio#8429, istio#7989
[ ] Configuration Infrastructure [X ] Docs [ ] Installation [ ] Networking [ ] Performance and Scalability [ ] Policies and Telemetry [ ] Security [ ] Test and Release [ ] User Experience [ ] Developer Infrastructure
🤔 🐛 You appear to be fixing a bug in Go code, yet your PR doesn't include updates to any test files. Did you forget to add a test?
Courtesy of your friendly test nag.
😊 Welcome! This is either your first contribution to the Istio documentation repo, or it's been awhile since you've been here. A few things you should know:
-
You can learn about how we write and maintain documentation, about our style guidelines, and about all the available web site features by visiting Contributing to the Docs.
-
In the next few minutes, an automatic preview of your change will be built as a full copy of the istio.io website. You can find this preview by clicking on the Details link next to the
deploy/netlifyentry in the Status section of this page. -
We care about quality, so we've put in place a number of checks to ensure our documentation is top notch. We do spell checking, we sanitize the markdown, we ensure all hyperlinks point to valid location, and more. If your PR doesn't pass one of these checks, you'll see a red X in the status section of the page. Click on the Details link to get a list of the problems with your PR. Fix those problems and push an update to your PR. This will automatically rerun the tests and hopefully this time everything will be perfect.
-
Once your changes are accepted and merged into the repository, they will initially show up on https://preliminary.istio.io. The changes will be published to https://istio.io the next time we do a major release (which typically happens every 3 months or so).
Thanks for contributing!
Courtesy of your friendly welcome wagon.
Mariam, please have a look at the test/lint output so we can move this forward. Thank you!
@craigbox whenever you have some time to take a look at this one. Appreciate it.
@johnma14: PR needs rebase.
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
@johnma14: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:
| Test name | Commit | Details | Required | Rerun command |
|---|---|---|---|---|
| doc.test.profile_default_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile_default |
| doc.test.multicluster_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.multicluster |
| doc.test.profile_none_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile_none |
| doc.test.profile_demo_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile_demo |
| doc.test.profile_minimal_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile_minimal |
| doc.test.profile-demo_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile-demo |
| doc.test.profile-default_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile-default |
| doc.test.profile-none_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile-none |
| doc.test.profile-minimal_istio.io | e441e39b9ba603fb05094c65afea411605fd342d | link | true | /test doc.test.profile-minimal |
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.
@johnma14 no longer works on Istio any more. @ericvn thoughts? Would you and someone willing to step up to get this to finish line? My thoughts are we are probably okay without the tutorial.