-
Notifications
You must be signed in to change notification settings - Fork 103
Feat/add dry run docs #513
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
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Zihan Kuang <[email protected]>
Signed-off-by: Zihan Kuang <[email protected]>
✅ Deploy Preview for bejewelled-pegasus-b0ce81 ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
categories: [Designer] | ||
tags: [designs] | ||
aliases: | ||
- /meshmap/tasks/designs/dry-running-designs |
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 this is a brand-new page, there's no need for this baggage (for this redirect).
- /meshmap/tasks/designs/dry-running-designs | ||
--- | ||
|
||
## 1. Overview |
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.
This screams "you are now reading AI-generated content. Enjoy". Perhaps, we can do without?
## 1. Overview | ||
|
||
Dry Run lets you try out your design without making any changes to your Kubernetes clusters. | ||
It’s a safe way to check if everything is set up correctly before you actually deploy. |
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.
Nice explanation. This is relatable and understandable.
|
||
 | ||
|
||
## 2. Why Use Dry Run? |
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.
## 2. Why Use Dry Run? | |
## Why you should perform Dry Runs |
Just a suggestion... please reject at-will.
## 3. How to Perform a Dry Run | ||
|
||
Meshery provides **two UI entry points** for Dry Run operations: |
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.
Meshery provides **two UI entry points** for Dry Run operations: | |
Kanvas provides **two UI entry points** for Dry Run operations: |
" two UI entry points " - - can we change this to user-speak?
|
||
### 3.1 Using the Actions Dropdown Menu | ||
|
||
- In the [kanvas](https://playground.meshery.io/extension/meshmap), click the **Actions** dropdown. |
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.
It's not "the kanvas". It is:
- Kanvas, which is a pronoun, not a noun (e.g. not "the Zihan", just "Zihan").
- Kanvas, which is a pronoun, not a non (e.g. not "zihan", but "Zihan"), because she is unique, special, and deserves capitalization.
|
||
 | ||
|
||
- After clicking, the results will appear: |
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.
- After clicking, the results will appear: | |
- After clicking, results of your simulated deployment will appear: |
|
||
## 6. Best Practices & Tips | ||
|
||
- Always **Validate → Dry Run → Deploy** in that order. |
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.
- Always **Validate → Dry Run → Deploy** in that order. | |
- As a best practice, always **Validate → Dry Run → Deploy** - in that order. |
Dry Run does **not** include schema validation. | ||
We recommend clicking **Validate first**, then **Dry Run**, then **Deploy**. | ||
|
||
## 6. Best Practices & Tips |
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.
Perhaps, this should be a numbered list?
- Use Dry Run in your CI pipelines to catch issues before merge. | ||
- Ensure your Kubernetes context is correctly configured and you have network access to the clusters you are targeting. | ||
|
||
[^1]: In the current release, you may occasionally encounter a case where the Arrow Dropdown Menu does not respond as expected. This is a known issue and is currently being addressed. In the meantime, please use the Actions Dropdown Menu as an alternative for triggering a Dry Run. |
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.
There's huge value in your discovery and raising of bugs, @zihanKuang. Is there an open issue on this behavior?
Signed-off-by: Zihan Kuang <[email protected]>
Signed-off-by: Zihan Kuang <[email protected]>
Hi @leecalcote @hortison, thanks a lot for the helpful feedback! I've updated the PR based on your suggestions:
Also, I’ve opened an issue to track the dropdown behavior mentioned in the footnote: #14584 Let me know if there's anything else I can improve. |
## How to Perform a Dry Run | ||
|
||
In Kanvas, there are two ways to start a Dry Run: | ||
|
||
### Using the Actions Dropdown Menu | ||
|
||
- In [kanvas](https://playground.meshery.io/extension/meshmap), click the **Actions** dropdown. | ||
- Select **Dry Run** from the list. | ||
|
||
 | ||
|
||
- After clicking, results of your simulated deployment will appear: | ||
|
||
 | ||
|
||
### Using the Arrow Dropdown Menu | ||
|
||
- At the top-right corner of the design mode in [kanvas](https://playground.meshery.io/extension/meshmap), click the **arrow-shaped dropdown button**. | ||
- Select **Dry Run** from the list. | ||
|
||
 | ||
|
||
- The simulation will be triggered immediately based on the clusters selected in your current context. | ||
- You will receive feedback via the **[Notification Center](https://docs.meshery.io/guides/infrastructure-management/notification-management)**, where you can view results for each component[^1]. | ||
|
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.
I noticed that the "Actions" and the "Arrow" dropdown next to it seem to serve a similar purpose. Both options lead to the same set of steps, with one displaying just icons and the other including the heading along with the icon. Would it be possible to merge this into a single option—for example, Users can click either "Actions" or the Arrow dropdown to access features like Dry Run? This could help avoid repetition without any effect on the understanding of docs.
Signed-off-by: Zihan Kuang <[email protected]>
Thanks for reviewing, @Paladian78 |
Regarding the difference in behavior on the Actions button - - https://cloud.layer5.io/academy/learning-paths/mastering-meshery/introduction-to-meshery?chapter=deploying-meshery-designs The single-click action offers away for experienced users to bypass a wizard and simply directly invoke the selected action. |
This PR adds a page for the “Dry Run” functionality in Meshery's design workflows. The guide explains what Dry Run does, how to use it, and how it differs from Validate and Deploy.
What's Included
Supporting images (GIF + PNGs) for UI walkthroughs
Usage explanation with screenshots
Q&A and footnotes for known UI behaviors
The section “How It Works” reflects the real execution flow based on these implementations:
https://github.com/meshery/meshery/blob/master/ui/machines/validator/designValidator.js
https://github.com/meshery/meshery/blob/ec5eea1a098b12afdafe93cf1b821da99a3f6bfc/server/handlers/design_engine_handler.go
https://github.com/meshery/meshery/blob/72ad171fa7ae0975d3ffa57b7b27da37e4be70c0/server/models/pattern/patterns/k8s/k8s.go
Yes, I signed my commits.