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

docs: add new document for hello operator #1079

Merged
merged 1 commit into from
Oct 25, 2024

Conversation

Rory-Z
Copy link
Member

@Rory-Z Rory-Z commented Oct 22, 2024

Summary by CodeRabbit

  • New Features

    • Added documentation for accessing the EMQX cluster via LoadBalancer in both English and Chinese.
    • Introduced a comprehensive guide for deploying the EMQX Operator on a local Kubernetes cluster using kind.
  • Documentation

    • Updated documentation to include new entries for LoadBalancer access in docs/directory.json.
    • Enhanced the hello-operator.md with detailed steps for deploying the EMQX Operator.
    • Revised installation instructions and clarified steps in the getting started guides for both English and Chinese versions.

@Rory-Z Rory-Z requested a review from zmstone October 22, 2024 02:59
@Rory-Z Rory-Z requested a review from a team as a code owner October 22, 2024 02:59
Copy link

coderabbitai bot commented Oct 22, 2024

Caution

Review failed

The head commit changed during the review from be6e920 to df344a0.

Walkthrough

The changes enhance the documentation for the EMQX project by updating the docs/directory.json file with new entries in both English and Chinese regarding accessing the EMQX cluster via LoadBalancer. Additionally, the guide hello-operator.md has been introduced, detailing the deployment of the EMQX Operator on a local Kubernetes cluster using kind, including installation steps and configuration instructions. The getting-started.md files in both English and Chinese have also been revised for clarity and correctness in installation instructions.

Changes

File Path Change Summary
docs/directory.json Added new entries: "Access EMQX Cluster By LoadBalancer" (en) and "通过 LoadBalancer 访问 EMQX 集群" (cn) under "Manage EMQX Cluster".
docs/en_US/getting-started/hello-operator.md New file created providing a comprehensive guide for deploying the EMQX Operator on a local Kubernetes cluster using kind.
docs/en_US/getting-started/getting-started.md Updated installation instructions for cert-manager, added version-specific deployment tabs, and improved YAML examples.
docs/zh_CN/getting-started/getting-started.md Revised installation instructions for cert-manager, clarified steps, and standardized YAML examples for EMQX deployment.

Poem

In the meadow, we hop with glee,
New docs sprout like a blossoming tree.
Access EMQX, oh what a delight,
With guides to help us, everything feels right!
Kubernetes clusters, all set to play,
Hooray for updates, hip-hip-hooray! 🐇✨


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Outside diff range and nitpick comments (4)
docs/directory.json (1)

53-56: LGTM! Consider minor title capitalization adjustment.

The new entry for accessing the EMQX cluster via LoadBalancer is well-placed and consistent with the existing structure. The title is clear and descriptive, and the path follows the established convention for task-related pages.

Consider adjusting the title capitalization for consistency with other entries:

-          "title": "Access EMQX Cluster By LoadBalancer",
+          "title": "Access EMQX Cluster by LoadBalancer",
docs/en_US/getting-started/hello-operator.md (3)

1-25: LGTM with a minor correction

The introduction and tool installation section is well-structured and informative. However, there's a small grammatical issue to address:

On line 13, please correct "MacOS" to "macOS" as it's the official spelling for Apple's operating system.

-On MacOS: [Orbstack](https://orbstack.dev/)
+On macOS: [Orbstack](https://orbstack.dev/)
🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)


27-60: LGTM with a style consideration

The environment preparation section provides clear and concise instructions for setting up the Kubernetes cluster and installing cert-manager.

Consider removing the dollar signs ($) before the commands in code blocks throughout the document. This is a style preference suggested by Markdownlint (MD014) and can make it easier for users to copy and paste commands. However, if you prefer to keep them for clarity, that's also acceptable.

Example:

-$ kind create cluster
+kind create cluster
🧰 Tools
🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


82-124: LGTM with a suggestion for improvement

The EMQX deployment section is well-structured and provides clear instructions along with a helpful example configuration.

Consider expanding the explanation of the configuration options in the YAML file. For example, you could briefly explain what core and replicant nodes are, and why a user might want to adjust these values. This additional context would be valuable for users who are new to EMQX.

Example addition:

In this configuration:
- `coreTemplate.spec.replicas: 2` sets up 2 core nodes, which handle MQTT connections and message routing.
- `replicantTemplate.spec.replicas: 3` sets up 3 replicant nodes, which can be used for horizontal scaling to handle more connections.

Adjust these values based on your expected load and high availability requirements.
🧰 Tools
🪛 Markdownlint

114-114: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


120-120: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 44e9730 and ab0208f.

📒 Files selected for processing (2)
  • docs/directory.json (1 hunks)
  • docs/en_US/getting-started/hello-operator.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/en_US/getting-started/hello-operator.md

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)

🪛 Markdownlint
docs/en_US/getting-started/hello-operator.md

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


77-77: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


114-114: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


120-120: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


132-132: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


142-142: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


152-152: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


158-158: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


164-164: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


170-170: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

🔇 Additional comments (6)
docs/directory.json (1)

Line range hint 159-162: LGTM! Chinese entry is consistent with the English version.

The new Chinese entry for accessing the EMQX cluster via LoadBalancer is well-placed, correctly translated, and consistent with the English version. The path is correctly kept the same as the English entry.

docs/en_US/getting-started/hello-operator.md (5)

62-80: LGTM

The EMQX Operator installation section provides clear and comprehensive instructions. The inclusion of the status check command is particularly helpful for users to verify the successful installation of the operator.

🧰 Tools
🪛 Markdownlint

77-77: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


125-133: LGTM

This section provides a concise explanation of the resources created by the EMQX Operator during deployment. The included command for checking these resources is particularly helpful for users to verify and understand the deployment structure.

🧰 Tools
🪛 Markdownlint

132-132: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


135-145: LGTM

The "Access EMQX Dashboard" section provides clear and concise instructions for exposing and accessing the EMQX dashboard. The port-forwarding approach is appropriate for a local development environment, and the inclusion of the link to further documentation is helpful for users who want to explore more features.

🧰 Tools
🪛 Markdownlint

142-142: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


147-171: LGTM

The "Clean up" section provides comprehensive instructions for removing all components installed throughout the guide. The cleanup steps are presented in a logical order, ensuring a thorough removal of resources. This section is crucial for users who want to reset their environment after following the guide.

🧰 Tools
🪛 Markdownlint

152-152: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


158-158: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


164-164: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


170-170: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


1-171: Overall, excellent documentation with minor suggestions for improvement

This guide provides a comprehensive and well-structured walkthrough for deploying EMQX Operator on a local Kubernetes cluster using kind. The instructions are clear, concise, and cover all necessary steps from tool installation to cleanup.

To further enhance this already excellent document, consider implementing the following minor suggestions:

  1. Correct the spelling of "macOS" on line 13.
  2. Consider removing dollar signs ($) before commands in code blocks for easier copy-pasting, as per Markdownlint suggestion (MD014).
  3. Expand the explanation of configuration options in the EMQX deployment section, particularly regarding core and replicant nodes.

These small improvements will make the guide even more user-friendly and informative. Great job on creating this valuable resource for EMQX users!

🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)

🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


77-77: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


114-114: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


120-120: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


132-132: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


142-142: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


152-152: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


158-158: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


164-164: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


170-170: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

Copy link

codecov bot commented Oct 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 76.33%. Comparing base (44e9730) to head (a6a0ed1).
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1079      +/-   ##
==========================================
+ Coverage   76.27%   76.33%   +0.06%     
==========================================
  Files          69       69              
  Lines        6250     6250              
==========================================
+ Hits         4767     4771       +4     
+ Misses       1245     1242       -3     
+ Partials      238      237       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Outside diff range and nitpick comments (4)
docs/en_US/getting-started/hello-operator.md (4)

1-25: Minor improvements for the introduction and tool installation section.

The content is well-structured and informative. However, there are a couple of minor points to address:

  1. On line 13, "MacOS" should be written as "macOS" (Apple's official spelling).
  2. Consider adding a brief explanation of why each tool is necessary for the setup.

Here's a suggested change for line 13:

-On MacOS: [Orbstack](https://orbstack.dev/)
+On macOS: [Orbstack](https://orbstack.dev/)
🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)


27-60: Environment preparation section looks good.

The instructions for creating a Kubernetes cluster and installing cert-manager are clear and well-explained. The inclusion of verification steps is helpful for users.

For consistency, consider adding a brief explanation of why kind is used for this setup, similar to the explanation provided for cert-manager.

You may want to add a brief explanation after line 29, such as:

kind is used in this guide because it provides a simple way to create a local Kubernetes cluster for testing and development purposes.
🧰 Tools
🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


82-124: EMQX deployment section is informative and well-structured.

The explanation of the EMQX custom resource definition and the YAML example are very helpful for users. The deployment instructions are clear and include verification steps.

There's a minor formatting issue to address:

Fix the line break in the middle of a sentence on lines 108-109:

-EMQX custom resource definition (CRD) also provides `dashboardServiceTemplate` and `listenersServiceTemplate` to configure the EMQX dashboard and listeners service. For
-more configuration options, you can refer to the [EMQX Operator documentation](https://docs.emqx.com/en/emqx-operator/latest/reference/v2beta1-reference.html).
+EMQX custom resource definition (CRD) also provides `dashboardServiceTemplate` and `listenersServiceTemplate` to configure the EMQX dashboard and listeners service. For more configuration options, you can refer to the [EMQX Operator documentation](https://docs.emqx.com/en/emqx-operator/latest/reference/v2beta1-reference.html).
🧰 Tools
🪛 Markdownlint

114-114: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


120-120: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


135-145: EMQX Dashboard access instructions are clear and helpful.

The instructions for accessing the EMQX Dashboard are well-explained and easy to follow. The inclusion of the dashboard URL is helpful for users.

Consider adding a note about the default credentials for accessing the dashboard, if applicable. For example:

Note: The default username and password for the EMQX Dashboard are both 'admin'. It's recommended to change these credentials after your first login.
🧰 Tools
🪛 Markdownlint

142-142: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between ab0208f and 9c3e3ea.

📒 Files selected for processing (2)
  • docs/directory.json (1 hunks)
  • docs/en_US/getting-started/hello-operator.md (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/directory.json
🧰 Additional context used
🪛 LanguageTool
docs/en_US/getting-started/hello-operator.md

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)

🪛 Markdownlint
docs/en_US/getting-started/hello-operator.md

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


77-77: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


114-114: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


120-120: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


132-132: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


142-142: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


152-152: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


158-158: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


164-164: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


170-170: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

🔇 Additional comments (4)
docs/en_US/getting-started/hello-operator.md (4)

62-80: EMQX Operator installation section is well-written.

The instructions for installing the EMQX Operator are clear, concise, and include all necessary steps. The inclusion of a wait command to check the installation status is a good practice that helps users ensure everything is set up correctly before proceeding.

🧰 Tools
🪛 Markdownlint

77-77: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


125-133: Clear explanation of EMQX deployment resources.

This section provides a concise explanation of the resources created by the EMQX Operator during deployment. The inclusion of a command to check these resources is helpful for users to verify their setup.

🧰 Tools
🪛 Markdownlint

132-132: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


147-171: Comprehensive cleanup instructions.

The cleanup section provides clear and comprehensive instructions for removing all resources created during the setup. The steps are well-organized and follow a logical order, ensuring that users can easily clean up their environment after completing the tutorial.

🧰 Tools
🪛 Markdownlint

152-152: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


158-158: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


164-164: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


170-170: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


1-171: Excellent guide for deploying EMQX Operator on a local Kubernetes cluster.

This document provides a comprehensive and well-structured guide for deploying the EMQX Operator on a local Kubernetes cluster using kind. The strengths of this guide include:

  1. Clear and concise explanations of each step in the process.
  2. Helpful context and background information for tools and concepts.
  3. Well-organized sections that follow a logical flow.
  4. Inclusion of verification steps and commands to check the status of deployments.
  5. A thorough cleanup section to help users reset their environment.

The minor formatting and grammar issues identified earlier don't significantly impact the overall quality of the guide. Once those are addressed, this will be an excellent resource for users looking to get started with EMQX Operator in a local development environment.

🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)

🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


77-77: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


114-114: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


120-120: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


132-132: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


142-142: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


152-152: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


158-158: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


164-164: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


170-170: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Outside diff range and nitpick comments (10)
docs/zh_CN/getting-started/getting-started.md (2)

31-31: LGTM! Consider adding a version comment for clarity.

The update from --set installCRDs=true to --set crds.enabled=true is correct and aligns with modern Helm chart practices for cert-manager.

Consider adding a comment about the minimum supported version of cert-manager, like this:

+     # For cert-manager v1.1.6+
     --set crds.enabled=true

This will help users understand the version compatibility more easily.


Line range hint 1-24: LGTM! Consider standardizing version references.

The YAML configurations for different EMQX versions (Enterprise 5, Open Source 5, Enterprise 4, Open Source 4) have been correctly updated. The guide is well-structured and provides clear instructions for users.

For consistency, consider standardizing how you refer to versions across the document. For example:

  • In the Enterprise 5 section, you use emqx/emqx-enterprise:5.6
  • In the Open Source 5 section, you use emqx:5
  • In the Enterprise 4 section, you use version: 4.4.19
  • In the Open Source 4 section, you use version: 4.4.19

Consider using the same level of specificity for all versions, either by using specific patch versions for all or by using major versions for all.

docs/en_US/getting-started/getting-started.md (4)

31-31: LGTM! Consider adding a brief explanation for the change.

The update to the cert-manager installation command is correct and aligns with the current Helm chart options. The added warning for GKE users is valuable.

Consider adding a brief note explaining why the option was changed from installCRDs to crds.enabled, to help users understand the evolution of the configuration.


Line range hint 69-114: LGTM! Consider standardizing image tags for consistency.

The organization of deployment instructions into tabs and the updated YAML configurations for EMQX Enterprise 5 and Open Source 5 are well-structured and correct.

For consistency, consider using specific version tags for both Enterprise and Open Source examples. Currently, Enterprise uses "5.6" while Open Source uses "5". Using specific versions for both (e.g., "5.6.0" for Open Source) would provide more clarity and consistency across examples.


Line range hint 116-173: LGTM! Consider aligning structure with EMQX 5 examples.

The organization and content of the EMQX 4 deployment instructions are correct and well-structured.

For consistency with the EMQX 5 examples, consider simplifying the YAML configurations for EMQX 4 versions. The current nested structure (spec.template.spec.emqxContainer.image) could be flattened to match the EMQX 5 style (spec.image), if the EMQX Operator supports this for v1beta4 API version. This would make the examples more uniform across versions.


Line range hint 1-173: Great improvements to the documentation! Consider adding a note about version compatibility.

The reorganization of deployment instructions into tabs, updates to YAML configurations, and improved clarity in the cert-manager installation process significantly enhance the user experience and accuracy of the documentation.

Consider adding a brief note at the beginning of the "Deploy EMQX" section about version compatibility between EMQX Operator and the different EMQX versions. This would help users ensure they're using a compatible combination of Operator and EMQX versions.

docs/en_US/getting-started/hello-operator.md (4)

1-25: Correct the spelling of macOS

The content looks good and provides clear instructions. However, there's a minor spelling issue to address.

Please update line 13 to use the correct spelling of macOS:

-On MacOS: [Orbstack](https://orbstack.dev/)
+On macOS: [Orbstack](https://orbstack.dev/)
🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)


83-126: Fix minor grammatical issue in configuration options sentence

The EMQX deployment section is well-written and informative. However, there's a small grammatical issue to address.

Please update the sentence on lines 109-110 for better readability:

-EMQX custom resource definition (CRD) also provides `dashboardServiceTemplate` and `listenersServiceTemplate` to configure the EMQX dashboard and listeners service. For
-more configuration options, you can refer to the [EMQX Operator documentation](https://docs.emqx.com/en/emqx-operator/latest/reference/v2beta1-reference.html).
+EMQX custom resource definition (CRD) also provides `dashboardServiceTemplate` and `listenersServiceTemplate` to configure the EMQX dashboard and listeners service. For
+more configuration options, refer to the [EMQX Operator documentation](https://docs.emqx.com/en/emqx-operator/latest/reference/v2beta1-reference.html).
🧰 Tools
🪛 Markdownlint

115-115: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


155-230: Fix grammatical issues in configuration management section

The EMQX configuration management section is informative and well-structured. However, there are a couple of minor grammatical issues to address.

Please make the following corrections:

  1. On line 175, remove the redundant "of":
-EMQX operator will record the EMQX configuration in the `.metadata.annotations` field, you can check the EMQX configuration by running the following command:
+EMQX operator will record the EMQX configuration in the `.metadata.annotations` field. You can check the EMQX configuration by running the following command:
  1. On line 192, correct the grammar:
-For EMQX's core node, it's must be a stateful node, so use the stable network ID to identify the node.
+For EMQX's core node, it must be a stateful node, so use the stable network ID to identify the node.

These changes will improve the readability and correctness of the documentation.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~159-~159: Possible missing article found.
Context: ...ation ### Check EMQX configuration In above example, we set the log.console.level...

(AI_HYDRA_LEO_MISSING_THE)


[style] ~175-~175: Consider removing “of” to be more concise
Context: ... .spec.config.data field, it will put all of the .spec.config.data configures to the `...

(ALL_OF_THE)


[grammar] ~192-~192: It seems that only one verb should be used here.
Context: ... replicant nodes. For EMQX's core node, it's must be a stateful node, so use the stable n...

(I_M_MD)


[grammar] ~210-~210: After ‘it’, use the third-person verb form “routes”.
Context: ...to access the EMQX dashboard, it always route to the core node, you can expose the EM...

(IT_VBZ)

🪛 Markdownlint

162-162: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


168-168: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


213-213: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


219-219: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


227-227: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


1-254: Consider removing dollar signs from command examples

The documentation is well-written and informative. However, there's a stylistic consideration regarding the use of dollar signs in command examples.

Markdownlint suggests removing dollar signs from command examples when not showing output. This is a stylistic choice, but it can make copying and pasting commands easier for users. Consider removing the dollar signs from the command examples throughout the document, like this:

-$ kubectl apply -f emqx.yaml
+kubectl apply -f emqx.yaml

This change would apply to all command examples in the document. However, this is a minor stylistic suggestion, and the current format is also acceptable if you prefer to keep it for clarity.

🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)


[uncategorized] ~159-~159: Possible missing article found.
Context: ...ation ### Check EMQX configuration In above example, we set the log.console.level...

(AI_HYDRA_LEO_MISSING_THE)


[style] ~175-~175: Consider removing “of” to be more concise
Context: ... .spec.config.data field, it will put all of the .spec.config.data configures to the `...

(ALL_OF_THE)


[grammar] ~192-~192: It seems that only one verb should be used here.
Context: ... replicant nodes. For EMQX's core node, it's must be a stateful node, so use the stable n...

(I_M_MD)


[grammar] ~210-~210: After ‘it’, use the third-person verb form “routes”.
Context: ...to access the EMQX dashboard, it always route to the core node, you can expose the EM...

(IT_VBZ)

🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


78-78: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


115-115: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


162-162: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


168-168: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


213-213: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


219-219: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


227-227: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


235-235: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


241-241: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


247-247: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


253-253: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 9c3e3ea and 65e1d44.

📒 Files selected for processing (4)
  • docs/directory.json (1 hunks)
  • docs/en_US/getting-started/getting-started.md (1 hunks)
  • docs/en_US/getting-started/hello-operator.md (1 hunks)
  • docs/zh_CN/getting-started/getting-started.md (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/directory.json
🧰 Additional context used
🪛 LanguageTool
docs/en_US/getting-started/hello-operator.md

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)


[uncategorized] ~159-~159: Possible missing article found.
Context: ...ation ### Check EMQX configuration In above example, we set the log.console.level...

(AI_HYDRA_LEO_MISSING_THE)


[style] ~175-~175: Consider removing “of” to be more concise
Context: ... .spec.config.data field, it will put all of the .spec.config.data configures to the `...

(ALL_OF_THE)


[grammar] ~192-~192: It seems that only one verb should be used here.
Context: ... replicant nodes. For EMQX's core node, it's must be a stateful node, so use the stable n...

(I_M_MD)


[grammar] ~210-~210: After ‘it’, use the third-person verb form “routes”.
Context: ...to access the EMQX dashboard, it always route to the core node, you can expose the EM...

(IT_VBZ)

🪛 Markdownlint
docs/en_US/getting-started/hello-operator.md

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


78-78: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


115-115: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


162-162: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


168-168: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


213-213: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


219-219: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


227-227: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


235-235: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


241-241: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


247-247: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


253-253: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

🔇 Additional comments (5)
docs/en_US/getting-started/hello-operator.md (5)

27-60: LGTM: Environment preparation instructions are clear and accurate

The instructions for creating a Kubernetes cluster and installing cert-manager are well-written and use the correct syntax. This section provides a solid foundation for the rest of the guide.

🧰 Tools
🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


62-81: LGTM: EMQX Operator installation instructions are comprehensive

The instructions for installing the EMQX Operator are clear, concise, and include all necessary steps. The addition of the status check command is particularly helpful for users to verify the installation.

🧰 Tools
🪛 Markdownlint

78-78: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


128-153: LGTM: Clear explanation of EMQX deployment resources

This section provides a comprehensive overview of the resources created by the EMQX Operator during deployment. The inclusion of the command to check these resources is particularly helpful for users to understand the deployment structure.


231-254: LGTM: Comprehensive cleanup instructions

The cleanup section provides clear and thorough instructions for removing all resources created during the tutorial. This ensures that users can easily clean up their environment after following the guide.

🧰 Tools
🪛 Markdownlint

235-235: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


241-241: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


247-247: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


253-253: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


1-254: Excellent guide for deploying EMQX Operator

This document provides a comprehensive and well-structured guide for deploying EMQX Operator on a local Kubernetes cluster using kind. The instructions are clear, concise, and cover all necessary steps from environment setup to cleanup.

Key strengths of this guide:

  1. Clear explanations of each step and component
  2. Useful commands for verifying the status of deployments
  3. Comprehensive coverage of configuration management
  4. Thorough cleanup instructions

The minor grammatical and stylistic issues identified in the review do not significantly impact the overall quality of the document. Addressing these small points will further enhance the already excellent guide.

Great job on creating this valuable resource for users looking to deploy EMQX using the EMQX Operator!

🧰 Tools
🪛 LanguageTool

[grammar] ~13-~13: The operating system from Apple is written “macOS”.
Context: ....docker.com/desktop/install/linux/) On MacOS: Orbstack ###...

(MAC_OS)


[uncategorized] ~159-~159: Possible missing article found.
Context: ...ation ### Check EMQX configuration In above example, we set the log.console.level...

(AI_HYDRA_LEO_MISSING_THE)


[style] ~175-~175: Consider removing “of” to be more concise
Context: ... .spec.config.data field, it will put all of the .spec.config.data configures to the `...

(ALL_OF_THE)


[grammar] ~192-~192: It seems that only one verb should be used here.
Context: ... replicant nodes. For EMQX's core node, it's must be a stateful node, so use the stable n...

(I_M_MD)


[grammar] ~210-~210: After ‘it’, use the third-person verb form “routes”.
Context: ...to access the EMQX dashboard, it always route to the core node, you can expose the EM...

(IT_VBZ)

🪛 Markdownlint

34-34: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


40-40: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


78-78: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


115-115: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


162-162: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


168-168: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


213-213: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


219-219: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


227-227: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


235-235: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


241-241: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


247-247: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


253-253: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)

@Rory-Z Rory-Z force-pushed the docs/add-hello-operator branch 5 times, most recently from 28f0665 to 7ccbc1a Compare October 22, 2024 10:09
@Rory-Z Rory-Z merged commit d4d9cc4 into emqx:main Oct 25, 2024
35 checks passed
@Rory-Z Rory-Z deleted the docs/add-hello-operator branch October 25, 2024 01:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants