Can I deploy to Azure Cloud Services with a mac? - node.js

Deploy with non-windows SDK?
The documentation is vague or non-existent for deploying to Azure's Cloud Services from a non-windows environment. I have the Azure SDK for node.js and the CLI but there are no commands for publishing or building the required packages.
This repo used to solve the problem, but hasn't been touched in several years and no longer seems to work: https://github.com/c9/azure-cmdlet-node
Found Documentation
or lack thereof
None of this explicitly says you can't deploy outside of Windows, but nor does it say you can:
This document explains deploying and building the package via Powershell: http://azure.microsoft.com/en-us/documentation/articles/cloud-services-nodejs-develop-deploy-app/
This explains how to do it with git and an Azure Website (not Cloud Service): http://azure.microsoft.com/en-us/documentation/articles/web-sites-nodejs-develop-deploy-mac/
And this article talks about the package and configuration that needs to be generated: http://azure.microsoft.com/en-us/documentation/articles/cloud-services-how-to-create-deploy/

You can't. I tried and tried and eventually gave up.
https://mediocre.com/forum/topics/one-does-not-simply-run-node-js-on-microsoft-azure

Have you tried cross platform command line interface
http://azure.microsoft.com/en-us/documentation/articles/xplat-cli/

Related

Client uses a cached bot version post deployment

Client browser session, on the web channel, displays deprecated dialogs and functionality in recently deployed version. The issue is resolved once cache is purged, am I missing a step or setting in deployment?
I'm using nodeJS SDK4.4 using Kudu for Azure deployment.
Thanks
I've never used Kudu specifically to deploy to the bot framework; the MSBF supports using the AZ CLI to deploy (though this seems to be similar enough, in that it is a "zip deployment"). That being said, it's possible the Kudu deployment method is somehow being delayed.
One option you could try is to enable continuous deployment through Github. It's as simple as authorizing Azure to look at the github repo you have your bot code in.
The Bot Framework has a how-to here.

Deploying a Java Azure Function to Azure Functions Runtime (On Premises)

So I am using Azure Functions at work and thought I would have a play and install them on my own server. I have successfully installed Azure Functions Runtime 2 (preview).
I have then followed the Java tutorial to create an Azure Function :
https://learn.microsoft.com/en-us/azure/azure-functions/functions-create-first-java-maven
How do I then deploy this function to my own Azure functions server?
In the guide it says about using :
az login
mvn azure-functions:deploy
Unfortunately, mvn azure-functions:deploy is to deploy functions to Azure site as az login is required before deployment, which doesn't support deployment to on-premises Runtime portal.
But the key point is, the on-premises Runtime is obsolete(one year behind the latest bits), new project probably can't work with it even if we find how to publish.
Since v2 becomes GA, it is recommended to leverage custom image for usages out of Azure box.
Update
Missed one point. As AF Team answered in the issue you post, no Java Image for now so the usage of Azure Java Function outside Azure is blocked unless we could figure out creating the image on our own.

how to deploy NodeJs on Windows Azure Cloud Service using command line tools in Mac

I am using Mac to try to deploy NodeJs on Windows Azure Cloud Azure, but the official documents are about NodeJs under Windows, I created a new Cloud Service, but it needed me to upload .cscfg and .cspkg, I searched documents and Google but found nothing useful. And what I want to know is how to write .cscfg and .cspkg file.
Could you give me some documents or articles, or point me a direction to solve this problem?
Thank you for your help.
The cspkg file is the "package" that need to be compiled for uploading to Windows Azure PaaS Cloud Services. Unfortunately, this package can only be created via the cspack command line tool (part of the Windows Azure SDK) for Windows OS (http://msdn.microsoft.com/en-us/library/windowsazure/gg432988.aspx). You can also learn more about the format of the package file at: http://msdn.microsoft.com/en-us/library/windowsazure/jj151522.aspx
The cscfg is a configuration file (just a specially names XML file) who's schema can be found at: http://msdn.microsoft.com/en-us/library/windowsazure/ee758710.aspx
If you do not have a specific need for Cloud Services, you can deploy a node application to Azure Web Sites.
There is a lab for this available. I have actually worked with this functionality for quite a while. You will find the deployment times to be significantly faster than with Cloud Services. Much more in line with what you would expect from a node environment.

Azure vs Cloud Foundry

I'm new to cloud foundry and would like to do a detailed comparison between Windows Azure and Cloud Foundry. I've searched around a lot but haven't been able to find anything useful. Is there a good post or some material which does a detailed feature wise comparison of the two?
Regards,
Vikram
You're not exactly comparing like for like here. Azure has IaaS type capability as well as PaaS, not only can you push applications to it but you can also deploy VM images too, including Linux.
However, as Cloud Foundry is open source the number of runtimes and frameworks if supports evolves quickly as VMWare openly encourage contributions from the OSS community. Correct me if I am wrong, but in a lot of cases, with Azure, you have to provide the runtime you wish to use where as Cloud Foundry supports them "natively", if that's the correct word?!
Right now, Cloud Foundry supports the following runtimes and frameworks;
Runtimes
java - 1.6.0_24
java7 - 1.7.0_04
node - 0.4.12
node06 - 0.6.8
node08 - 0.8.2
ruby18 - 1.8.7p357
ruby19 - 1.9.2p180
Frameworks
grails
java_web
lift
node
play
rack
rails3
sinatra
spring
standalone
They also provide all the major storage services too, including MySQL, Postgres, RabbitMQ and Redis.
The actual open source project supports a whole lot more too!
I don't know much about Azure. But, I've used Cloudfoundry. Its great for Java deployments. I use VMC from Ruby gem for deployment and its so 3 - 4 step easy way to push your WAR to cloudfoundry server. They also provide neat documentation for configuration and setup. Oh and adding services (like Mongo DB, MySql) are also very simple. Though,sometimes, debugging server related issues are annoying with it. But, overall, its good for me :)
http://docs.cloudfoundry.com/tools/deploying-apps.html
Likewise, I don't know much about Cloud Foundry but I'm using Windows Azure for a couple of client projects and I have to say that I'm now very impressed with the development environment. I'm using the Websites Preview feature with continuous Git deployment via BitBucket. Setting this up is a breeze and allows me to push my changes to BitBucket and have Windows Azure deploy them automatically for me. There's currently no ability to run unit tests as part of the deployment cycle as per other cloud platforms (e.g. AppHarbor) but the feature set for getting up and running with a .NET application and SQL Azure database is now pretty slick. Here's a couple of links:
Deploying an ASP.NET Web Application to a Windows Azure Web Site and SQL Database
Continuous Deployment with Windows Azure Websites and Bitbucket

Hosting existing node.js apps on Windows Azure

Is it possible to port existing node.js applications to Windows Azure platform? I currently develop on my Mac but will need to deploy the application to Windows Azure in a near future.
You may also want to check a video on Channle 9.
node.js on Azure : http://channel9.msdn.com/Events/Patterns-Practices-Symposium-Online/Patterns-Practices-Symposium-Online-2012/node-js-on-Azure
Yes it is very much possible. You may also need to consider to make changes to use Azure Blob storage where your node.js code is using local file system (if required). The deployment is very similar to any other Windows Azure App and one you have Azure SDK for node.js you can use powershell cmdlets to make your job easy.
Download Node.js SDK for Azure
https://www.windowsazure.com/en-us/develop/nodejs/
Here you can learn the basics to deploy node.js app to Azure:
https://www.windowsazure.com/en-us/develop/nodejs/tutorials/getting-started/
Porting node.js apps to Azure is possible but not yet a yes/no answer.
You can run your Node apps in Azure but you need to look at the modules you're using to make sure you aren't depending on a tool or command or other facility that isn't yet available on Azure. For example, are you using a database like redis or couchDB or mysql? These don't exist natively in Azure so you may or may not be able to port that layer -- you'll have to check.
Since you're on a Mac, there isn't yet a native OS X deployment tool. Microsoft and the Cloud9 folks have been showing a way for Macs to deploy from the Cloud9 IDE which works but the Mac story will most assuredly improve over time. I work on a Mac but I keep a Windows VM open (Parallels) and if I deploy from the desktop I've been using the Powershell cmdlets in the Windows Azure SDK for Node.js which makes things fairly turnkey from Windows.
You will want to follow a couple of repos and their contributors: Azure SDK for Node, which allows native access to Azure Storage via npm install azure and iisnode (on Github) which is a component that assists your node app running under IIS (the Windows Web Server) on Azure.
It's been great to see the Node story on Azure evolve; it's still just a little early but they seem to be making great progress quickly.

Resources