Keep your WSO2 products up to date with WUM
- Sameera Jayaratna
- Software Engineer - WSO2
We at WSO2 continuously improve our products with bug fixes, security fixes , and various other improvements. Every major release of our WSO2 products is followed by a series of periodic dot releases that roll up all these recent updates.
We want everyone evaluating, developing on, or preparing WSO2 products for production deployments to have the best experience and especially not trip over a bug that has already been fixed! WSO2 Update Manager (WUM) makes this process much easier - now you can get access to latest updates as and when we release them.
What is WUM?
WUM is a command-line application which allows you to keep WSO2 products up-to-date. It determines which updates are new and relevant for your WSO2 products, downloads and installs them. WUM builds you a new product distribution with all the relevant updates; this distribution is ready to deploy into your development or production environment. Note that WUM will not push updates into production: you have full control over when and how you want to such pushes to occur.
Updates are available for the following products and versions. We are in the process of adding more products and versions.
- WSO2 Enterprise Service Bus 5.0.0
- WSO2 Enterprise Service Bus 4.9.0
- WSO2 Enterprise Service Bus Analytics 5.0.0
- WSO2 API Manager 2.0.0
- WSO2 API Manager Analytics 2.0.0
Note that fresh WSO2 product distributions downloaded via the wso2.com site or using WUM, are licensed under Apache 2. However, product distributions built by WUM with updates installed are licensed under WSO2 Update License 1.0. The updated product distributions are not licensed for use in production without a valid WSO2 subscription. Visit https://wso2.com/support for more information about WSO2 subscription.
Installing WUM
You can download WUM from https://wso2.com/wum. Download the binary release suitable for your operation system and processor architecture. Binary distributions are available for Linux, Mac OS, and Windows (follow installation instructions available on the same download page).
Once the installation is completed, open a new terminal and execute the following command. You should get the help page with all the available commands.
$ wum
Initialize WUM with your WSO2 credentials
You need to have a WSO2 account to get started with WUM. If you don’t have an account with WSO2, please create one here.
$ wum init You need a WSO2 account to start using wum. Don't have one yet? Sign up at https://wso2.com/user/register Please enter your WSO2 credentials to continue Username: [email protected] Password for '[email protected]': Authenticating... Done! -- Welcome to WUM 1.0-beta -- * Find more information at https://wso2.com/wum * Documentation: https://docs.wso2.com/display/ADMIN44x/Updating+WSO2+Products What's next? Have a look at the following list of wum commands: Add WSO2 products to your product repository wum search Search WSO2 products wum add Add or download WSO2 products Update WSO2 products available in your product repository wum check-update Check for new updates wum update Update your WSO2 products Manage WSO2 products available in your product repository wum list List WSO2 products wum describe Show details of WSO2 products wum delete Delete WSO2 products Use "wum [command] --help" for more information about a command. Use "wum [command] --help" for more information about a command.
Local product repository
WUM maintains a local product repository in your machine where it stores WS02 product distributions. Whenever you update a product, WUM creates a new distribution with all these updates and stores it in this repository. By default, WUM creates this repository in the user’s home directory, but you have the option to change this as well.
Search and add WSO2 products
Before you update any WSO2 product, you need to add the product to your local product repository. You can either download a product or add an already downloaded product. If you are not sure about what product name to use, you can use the ‘wum search’ command. If you run the search command without any arguments, it will list all the WUM supported WSO2 products.
$ wum search Connecting to WSO2 Update... wso2esb-5.0.0 - Enterprise Service Bus wso2esb-analytics-5.0.0 - Enterprise Service Bus Analytics wso2am-2.0.0 - API Manager wso2am-analytics-2.0.0 - API Manager Analytics wso2esb-4.9.0 - Enterprise Service Bus What's next? use "wum add <product>" to download a product e.g "wum add wso2esb-5.0.0" to download Enterprise Service Bus 5.0.0
You can also search using keywords.
$ wum search api manager Connecting to WSO2 Update... wso2am-2.0.0 - API Manager wso2am-analytics-2.0.0 - API Manager Analytics What's next? use "wum add <product>" to download a product e.g "wum add wso2am-2.0.0" to download API Manager 2.0.0
If you look at the examples given in the “what’s next” section, you would see the expected format of the product name to use. Use the following command if you want to add the latest version of wso2esb.
$ wum add wso2esb Connecting to WSO2 Update... The following product(s) will be downloaded. wso2esb-5.0.0.zip After this operation, 218.1MB of additional disk space will be used. Do you want to continue? [Y/n] Downloading product wso2esb-5.0.0... [2.4MB/218.1MB]
If you want to add a specific version of wso2esb then you need to specify the version as follows:
$ wum add wso2esb-4.9.0
You also have the option to add an already downloaded product distribution using the add command.
$ wum add --file ~/user/wso2/dist/wso2esb-5.0.0.zip
Now try the following command to see the list of add products.
$ wum list
Update WSO2 products
As I’ve explained earlier, WUM creates a new product zip file with all the updates installed. But if you want to check whether updates are available before you attempt to update, you can use the “check-update” command as follows.
$ wum check-update wso2esb-4.9.0 Connecting to WSO2 Update... Checking for latest updates for wso2esb-4.9.0... 96 updates are available [WARNING] 11 critical security updates. WSO2 strongly recommends that you install these updates now. What's next? use "wum update" to install latest updates
Now let’s update the products using the “update” command
$ wum update wso2esb-4.9.0 Connecting to WSO2 Update... Validating your subscription status for product wso2esb... [WARNING] Your credentials are not associated with an active WSO2 subscription. Please remember that updates are not licensed for use in production without a valid WSO2 subscription. See: https://wso2.com/wum for more details. Updating wso2esb-4.9.0... 96 updates are available Downloading updates... Installing updates... Preparing update summary... Building updated product... Update summary: Installed updates: 96 * [WARNING] WSO2 strongly recommends to use this updated product for production as soon as possible. Security updates: 11 Updated Product: /Users/sameera/.wum-wso2/products/wso2esb/4.9.0/wso2esb-4.9.0.1472889183206.zip * More information about updates are available inside the above product archive Update summary(pdf): (product-archive)/updates/summary-2016-09-08T19-23-50/update-summary-1472889183206.pdf * Configuration changes are available Change log: (product-archive)/updates/summary-2016-09-08T19-23-50/change-log-1472889183206.txt What's next? use "wum list [<product-pattern>]" to list products in your local repository use "wum describe [<product-pattern>]" to get more details of products
If you don’t have an active WSO2 subscription for wso2esb, you would get a warning as above. This means you can use the updated product for your development activities, but you are not supposed to use it in production.
Once the update is completed, you should be able to see the updated product files in your local repository. We version updated product distributions using the timestamp of the latest update.
$ wum list Product Updated Filename wso2am-2.0.0 08 Sep 16 18:01 IST wso2am-2.0.0.1473322072976.zip wso2am-2.0.0 - wso2am-2.0.0.zip wso2esb-4.9.0 08 Sep 16 19:24 IST wso2esb-4.9.0.1472889183206.zip wso2esb-4.9.0 - wso2esb-4.9.0.zip
Manage your product repository
There are several WUM commands available for you to manage your local product repository. The “wum list” command lists all the available products. If you want to get more information about a product, you can use the “wum describe” command. It gives you the location of the product file and update history, among other information.
$ wum describe wso2esb-4.9.0.1472889183206.zip Filename: wso2esb-4.9.0.1472889183206.zip Product Name: wso2esb Product Version: 4.9.0 Kernel Version: 4.4.1 Last Updated Time: 2016-09-08T19:23:55+05:30 Product File Path: /Users/sameera/.wum-wso2/products/wso2esb/4.9.0/wso2esb-4.9.0.1472889183206.zip No Of Times Updated: 1 Installed Updates: 96 Update History: Date Installed Updates Username 2016-09-08T19:23:55+05:30 96 [email protected]
In case you want clean up your product repository by deleting files, you can use the “wum delete” command.
$ wum delete wso2esb-4.9.0 The following product file(s) will be deleted. wso2esb-4.9.0.1472889183206.zip wso2esb-4.9.0.zip Do you want to continue? [y/N]
The above command will delete all the wso2esb-4.9.0 product files including the updated files. List, describe and delete commands accepts a product pattern; therefore you can filter out products by given a particular pattern.
We’ve released the Beta version of WUM. Try it out and let us know what you think.