How to update the SOAJS UI Modules?
Objective
Become familiar with how the SOAJS notifies you about new SOAJS UI Modules updates and learn how to pull and apply them and apply them on the Nginx deployed in the Dashboard Environment.
Steps
- Locate Update Notifications
- Apply the Update
Step 1
SOAJS UI modules are part of the SOAJS Dashboard repository and whenever there is a new update for the UI, the Release notes will include details about these updates.
Dashboard Release Notes: https://github.com/soajs/soajs.dashboard/releases
You can look up the update details and learn what they are about in the release notes then apply them to the Nginx deployed in the Dashboard environment. The UI Modules updates are not applicable on nginx deployed in other environment since they provide an interface to manage the SOAJS cloud only.
Step2
Once the updates are pushed, you can pull them and deploy them in your Nginx:
- Go to Deploy pillar → Clouds & Deployments
- Make sure that the red drop down menu in the left side bar is selected to DASHBOARD
- Click on Nginx Tab
- Lookup the nginx entry
- Open the Service Operations menu
- Click Restart Service
Restart Service
This operation will restart your service using the exact same settings that were used to deploy it in the first place.
The SOAJS deployer inside the SOAJS image will run and clone the SOAJS Dashboard UI Modules, if there are changes then they will be pulled then it will check if you have any Custom UI modules if you have provided them in the recipe and pulls them as well.
Then it will build the upstream configuration to point to the SOAJS Controller and create the virtual host entry for the Dashboard UI widget and start the nginx server.
While the deployer is running, your old nginx remains operational until the new one is flagged as running by either Docker Swarm or Kubernetes depending on which of the two drivers you have chosen.
When the new nginx becomes ready, then the old one will be terminated; your Nginx is now updated and contains the new UI Modules updates.