Speed up your development with hot-update
Do you know that you don’t have to deploy and restart the whole application over and over again just to see your latest changes while developing on SAP HANA Cloud Platform? You can now speed up your development by applying and activating changes on the already running application.
Just use the hot-update command (beta) in the console client..
With hot-update, you redeploy and update the binaries of an application started on one process faster than the normal deploy and restart.
Use the — strategy parameter to choose among three approaches to hot-update:
- replace-binaries – redeploys and updates the application binaries
- restart-runtime – redeploys and updates the application binaries and restarts the application process
- reprovision-runtime – cleans up the file system, reprovisions the runtime and redeploys and updates the application binaries
The different strategies help you to update your application depending on its behavior.
For example, to update a web resource like image, you can use the first strategy. To support applications that need to retrigger the initialization logic, use the restart-runtime strategy, while apps that want to have a clean file system can make use of the reprovision strategy.
neo hot-update –host us1.hana.ondemand.com –account myacc –application myapp –source samples/deploy_war/example.war –user email@example.com –strategy replace-binaries
The hot update is still in beta so do not use it to update productive applications. Use it only for testing purposes during development.
The beta state still has the following limitations:
- Works only if there is a single running process of the application.
- Removing WAR files is not supported.
You cannot change deploy parameters and context path of the application.
Try it out!
It will save you a lot of time.
Give us your feedback and we will make it even better.
Any chance it will make it into an option in the Eclipse IDE?
Would also be nice if we could do similar on local builds? - sometimes there's a reasonable amount of initialisation that needs to be run that isn't needed if it's just replacing a JS files, would greatly speed development.
If there is already a way to do this locally, please do tell, I'm fed-up restarting my local HCP server, re-initializing various values just to test a couple of JS changes.
We plan to add this feature inside Eclipse tools by replacing the existing republish operation with hot-update. By my (non official) measurements the cloud republish operation will takes 12 seconds instead almost 2 minutes as is now.
Awesome! Wish my deploys were 2mins, slightly slower from Australia with much of Spring framework in the packaged libs. Really looking forward to a local data centre!