Give your Node Azure Website a tuneup by choosing any node or npm version. Tuneup will download the selected versions dynamically during deployment.
npm install tuneup -g
azure site create --git
git add .
git commit -am "first commit"
git push azure master.
Note: For npm future deployments will be much faster if you specify a specific version rather than using a semver i.e. "1.8.x".
Several options are available for specifying your selected node and npm version.
By default when you run tuneup it will update your package.json (or create one it it does not exist) with an engines entry containing a default node and npm version.
"engines":"node": "0.10.15""npm": "1.3.5"
You can override the default by using the --node and --npm parameters. See `tuneup --help' for more.
In order to update the version, you can modify package.json and push again to git. Before doing that first do an `azure site restart' in your app folder to ensure that
You can set specify versions in the Windows Azure portal by adding the settings NODE_VERSION and NPM_VERSION on the configure tab as show below.
Make sure you click "Save" on the bottom to have the settings change take effect.
If the app is already deployed, you can make the version change take effect immediately within the portal by redeploying your last deployment. To do that head to the "Deployments" tab, select your most recent deployment and then click "Redeploy" on the bottom.
Check the logs after deployment is completed to see if any errors occured.
If you are using the azure-cli, you can also select a version and apply from the shell using
azure site config
azure site config add NODE_VERSION=0.10.xazure site config add NPM_VERSION=1.2.x
Next to apply the changes redeploy your app. First list the deployments.
azure site deployment list
The output will be as follows listing each commit that has been deployed.
info: Executing command site deployment list+ Enumerating deploymentsdata: Time Commit id Status Author Messagedata: ------------------- ---------- ------- ----------- ------------data: 2013-05-12 23:37:49 f925d413dc Active Glenn Block updateddata: 2013-05-12 23:23:42 9c5bf8ec17 Success Glenn Block updated
Next redeploy the last commit.
azure site deployment redeploy f925d413dc
Which will give you a result similar to the following.
info: Executing command site deployment redeployWeb site name: gbnodeverReploy deployment with f925d413dc id? (y/n) y+ Redeploying deployment+ Enumerating deploymentsdata: Time Commit id Status Author Messagedata: ------------------- ---------- ------- ----------- ------------data: 2013-05-13 00:53:57 f925d413dc Active Glenn Block updateddata: 2013-05-12 23:23:42 9c5bf8ec17 Success Glenn Block updatedinfo: site deployment redeploy command OK
Regardless of which method you use, when you deploy, the selected npm version and node version will be used.
If you check your app, you should see that it will be running the selected node version.