Meshery is constantly evolving and improving, with new features and bug fixes being added regularly. To stay up to date with the latest Meshery features and updates, you can switch between different release channels.

Artifacts of the builds for Meshery and its components are published under two different release channels, so that improved controls may be provided to both Meshery users and Meshery developers. The two release channels are edge and stable release channels. Relative to stable releases, edge releases occur much more frequently. Edge releases are made with each merge to master, unless that merge to master is for a stable release. Stable releases are made with each merge to master when a GitHub release tag is also present in the workflow.

How release channels offer subscription

Release Channels offers a subsciption where user can subscribe to a specific release channel and get notified when a new release is available. This is useful for users who want to stay up to date with the latest Meshery features, while also also providing flexibility for users who want to stay on a specific version of Meshery. However, this approach can be risky because some updates may introduce bugs or compatibility issues that could break your existing installation. Depending upon your risk aversion and the nature of your deployment environment, having a subscription means that you will automatically receive these updates that you might not be ready incorporate. On the other hand, release channels also offer the ability to pin to a specific release which is a good thing as it allows users to maintain stability and predictability of their environment by preventing unexpected changes from being introduced into their system. However, doing so cancels out any future subscription-based benefits such as receiving security patches or bug fixes that were added after that version was released. Therefore, it's important for you to weigh the pros and cons of each option before making decisions on how you want to manage your Meshery deployment. It's recommended you and your organizations have a well-defined upgrade strategy based on testing and validation procedures prior to applying new releases in production environments whether via subscriptions or manual upgrades to ensure that system availability is maintained and risks are minimized.

To subscribe to a specific release channel or version using mesheryctl you can use

mesheryctl system channel set [stable|stable-version|edge|edge-version] Copy to clipboard

This command will update your local Meshery configuration to use the selected channel for future updates. To set the channel to a specific version, replace Version with the desired version number. Example: mesheryctl system channel set stable or mesheryctl system channel set stable-v0.5.56

Switching between Release Channels

There are two ways to switch between Meshery release channels: using mesheryctl or by editing your meshconfig file. In this blog post, we'll cover both methods.

What is Meshconfig?

Meshconfig is a configuration file that is used to configure Meshery. It is typically located in the ~/.meshery/config.yaml directory. It contains information about the current release channel, the version of Meshery that is installed, and other configuration options that are specific to your Meshery installation. Meshconfig is automatically generated when you run Meshery for the first time. It is also automatically updated when you update Meshery

Switching between Meshery release channels using meshconfig file.

Open your terminal and confirm that you have mesheryctl installed by running

mesheryctl version. If you don’t have mesheryctl installed, you can install it by following the instructions in the Meshery documentation.

1. Create new Meshery config.yaml file

mesheryctl system context create [context-name] Copy to clipboard

Example:
mesheryctl system context create new-context --components meshery-istio meshery-osm meshery-linkerd --platform docker --url http://localhost:9081 --set --yes

2. To view the newly created meshery context use

mesheryctl system context view [context-name] Copy to clipboard

3. After making these changes, you can switch between different context by using

mesheryctl system context switch Copy to clipboard

Switching between Meshery release channels using mesheryctl.

mesheryctl is a command-line tool for managing Meshery. You can use it to switch between different release channels. Here's how:

  • Run the following command to see the current configuration for Meshery:

  • mesheryctl system context view Copy to clipboard

    This will show you the currently channels ,stable or edge, along with the version number and other information.

  • Run the following command to switch to a different release channel:

  • mesheryctl system channel switch Copy to clipboard

    This command will update your meshconfig file to switch release channel and version of context in focus. To switch the channel to a specific version, replace Version with the desired version number.

  • To confirm that the channel has been changed, run the following command again:

  • mesheryctl system channel view Copy to clipboard

Conclusion

Switching between Meshery release channels is a simple and straightforward process. You can do it using mesheryctl or by switching between your meshconfig file. Whether you want stable updates or bleeding-edge features, Meshery has a release channel that suits your needs. Just remember to carefully consider your use case and needs before making any changes to ensure that you have the best Meshery experience.