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 subscription 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
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:1mesheryctl system channel set [stable|stable-version|edge|edge-version]
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
- Create new Meshery config.yaml file 1mesheryctl system context create [context-name]Example:
- To view the newly created meshery context use 1mesheryctl system context view [context-name]
- After making these changes, you can switch between different context by using 1mesheryctl system context switch
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.
mesheryctl system context create new-context --components meshery-istio meshery-osm meshery-linkerd --platform docker --url http://localhost:9081 --set --yes
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:
1mesheryctl system context view
This will show you the currently channels ,stable or edge, along with the version number and other information.
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.1mesheryctl system channel switch
1mesheryctl system channel view
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.