Is it possible to use Web Deploy from Visual Studio Online? - amazon-web-services

I would like to build in Visual Studio Online and then Web Publish to Amazon.
Is this possible? Or does it only publish to Azure?

It publishes to wherever you like.
Use the PowerShell, Batch, or ShellScript task to deploy to whatever system you like in whatever way that you want.
Better yet, create a professional release pipeline with release management and deploy to many environments.

I ran MSBuild with the following parameters added...
/P:DeployOnBuild=True
/P:DeployTarget=MSDeployPublish
/P:DeployIISAppPath=MyWebsite
/P:AllowUntrustedCertificate=True
/P:MSDeployPublishMethod=WMSvc
/P:CreatePackageOnPublish=True
/P:MsDeployServiceUrl=https://DOMAIN/MsDeploy.axd
/P:UserName=User1
/P:Password=******

Related

How do I create a TFS2017 Build Task equivalent to Visual Studio's Web Deploy Publish method?

I am trying to complete Continuous Integration/Continuous Deployment automation for a web application project. I have been helped by a series of SO posts link1, link2, link3 and things are now running, except the upload to the hosting server is longer than it needs to be; I currently upload all files instead of just the ones that changed.
When creating the TFS2017 Build (or Release) there are many Task options, including some from the marketplace. I'm referring to, in this case, the dialogue for a Build as shown below:
I'm currently using a PowerShell script which seems a little archaic and inefficient as noted above. Do any of the tasks available to us mimic the Visual Studio 2017 Web Deploy Publish Method which runs quite nicely and quickly? If not, what can I use for an 'intelligent' upload process that checks whether or not a file must be uploaded?
Unfortunately, there is no this kind of build task could mimic the Visual Studio 2017 Web Deploy Publish Method for now.
The method trough VS IDE will dynamically check if some files need to be uploaded or not.
However through TFS build task or powershell script will not do this, just simply copy all files you assigned. Afraid there is no workaround for an 'intelligent' upload process that checks whether or not a file must be uploaded. Since we don't how VS IDE did this.

Can I catch VSTS Agent output with SDK?

I'm trying to write simple CLI tool, helping me with several VSTS-related tasks, like:
Create project from template
Building and watching build from console
etc
So, it would be nice to attach to running build (triggered via CI) and watch console output in live in my desktop console. Is there such ability in SDK?
I'm currently using this packages:
https://www.visualstudio.com/en-us/docs/integrate/get-started/client-libraries/dotnet
There isn't any API can achieve this feature as I know. You can submit a feature request on VSTS User Voice.

Continuous deployment between TFS and AWS

I'm working for a company where we're using on-prem TFS for dev and continuous build, however our environments are hosted on AWS. We need to setup a continuous deployment pipeline from our build servers to AWS.
Any recommendation for an enterprise continuous deployment tool for such an environment? We've already done a POC with Octopus Deploy. Is it possible to set up a continues deployment pipeline using just Microsoft tools? Any pointers and documentation with examples would be highly appreciated.
Octopus Deploy is indeed a good choice. Octopus Deploy and TFS/VSO can work together to make automated, continuous delivery easy. For more information, see the Octopus Deploy documentation at http://docs.octopusdeploy.com/display/OD/Team+Foundation+Server
It's also possible to set up a continues deployment pipeline using just Microsoft tools. You need to use Microsoft Release Managerment.It can Run automations to deploy your app to each environment.
If you are working on vNext build, just like James mentioned, this is only support for Team Foundation Server 2015 (update 2 and above) and Visual Studio Team Services. Detail features you can refer this link:Release Management vNext
If you are working on XAML build, here is a good documentation about Continuous Integration, Continuous Deployment with Team Foundation Server 2013 & VS 2013
You can easily integrate the new Release Management tools from Microsoft with TFS.
!!Release Management tools in TFS 2015 Update 2
The easy way would be to install the TFS 2015 Update 2 RC. It's fully supported by MS and works great.
http://nkdagility.com/the-high-of-release/
!!Release Management in VSTS with TFS
An alternative until Update 2 is to use VSTS Release Management Online to do the deployments from your local TFS.
https://blogs.msdn.microsoft.com/visualstudioalm/2015/11/28/deploy-artifacts-from-onprem-tfs-server-with-release-management-service/
I would recommend that you use one of the two above methods or move your TFS server to VSTS in it's entirety.
!!Release Management Server for TFS
For now the released version of RM is available for download and install. It's not as good as the new one, but also works fine.
http://nkdagility.com/create-release-management-pipeline-professional-developers/
You can do it without octopus. All you need is an EC2 based build agent with (PAT) authentication and you can deploy almost any artifact. How to do this is given in following tutorials.
How to Build a CI/CD Pipeline Using AWS CodeDeploy and Microsoft Team Foundation Server (TFS)
(For hybrid/complex deployments, you can use this. You can deploy IIS websites, MSI packages, services, exe). The beauty of this is that with a single deployment you can deploy to both on premises and cloud environment.
https://www.youtube.com/watch?v=MIE0P3m9eEY
How to Integrate AWS Elastic Beanstalk with Microsoft Team Foundation Server (TFS) or (VSTS)
(for IIS websites/batch jobs you can use this)
https://www.youtube.com/watch?v=nRLZZefLDqU
How to Integrate AWS Cloudformation with Microsoft Team Foundation Server (TFS)
(fully infrastructure automation and manage infrastructure as code)
https://www.youtube.com/watch?v=WU93NJT0_3s

C++ in the cloud. Casablanca REST Service on Microsoft Azure

Hello fellow Azure users. I have created quite an extensive C++ REST service using the CasaBlanca REST SDK. When I began working on this project I as lead to believe that I could run it in the Cloud (Azure) . Please explain how best I can get this service to run on Microsoft Azure. I can't afford to re-program the entire project in another language like C# or Java. Thanks in advance!
If you're wondering why I believed CasaBlanca was meant for the Cloud:
http://channel9.msdn.com/Events/TechEd/Australia/2012/AZR331
-Seth
Looking at the TechEd video I can see that they are using the SpeechService demo which you can find the source of here: https://hg.codeplex.com/microsoftcasablanca so you can understand how they performed the deployment to Azure.
Looking at the code I can see the solution is designed to be deployed to a Cloud Service Worker Role and includes a "Cloud Service" project in the Visual Studio solution - this is the project type which gives the "Deploy To Cloud" option which you see in the video.
Given that the demo is from 2012 there will have been many Azure SDK releases since then so the demo code may require an update, but the deployment method from Visual Studio 2012 and 2013 remains essentially unchanged.
Regardless how you're using casablanca, c++ applications can be run on Virtual Machines, web/worker role (stateless) VMs in cloud services, probably websites... Choosing between these is a matter of opinion (or at least dependent on the app you're building), and there's no single right answer.

Looking for a .NET BuildServer SaaS

I've a question regarding Build Servers for .NET Projects. Currently I'm using TeamBuild in conjunction w/ TFS 2010 to do automated builds in the .NET world. Some older projects are built using plain old MSBuild scripts.
To get rid of the administrative effort I'm currently moving my sources to github. Github offers, as many other sites service hooks to trigger build servers for doing automated builds such as CI or nightly builds.
Sure I could use TeamCity OnPremise and dynamically create Build Agents in Windows Azure using VMRole and Virtual Disks, but I think this hybrid solution is a little bit moronic.
So what are your thoughts about the following architectural idea?
Let's say you're using github as source control platform. When commiting sources to your repository an Azure WebRole hosting a WCF Service will be triggered.
The WebRole itself will just use the Azure API to fire up a new instance of a custom Azure VMRole.
The Azure VMRole itself will use some kind of buildscript such as Rake or MSBuild to have as few developer tools installed on the build agent as needed. After building the entire project the artifacts will be published to Azure BlobStorage and the WebRole hosting the WCF service will be called again, but right now the Azure WebRole is going to terminate the BuildAgent.
While using such a setup you could minimize the costs for the build agent and build nearly any kind of project as far as you're able to install the required element for the build by using PowerShell.
So in bottom line: what are your thoughts on this architecture? Other Ideas? Is there an existing service offering such a solution?
Thorsten
have you looked at https://appharbor.com ? I know a number of people who are using it to do exactly what you are doing.
Check out Team Foundation Service as it can do the following:
Continuous Delivery to Azure
Deploy to production on Windows Azure with two clicks from Visual Studio, or automatically as part of your build process.
Just found this one http://www.appveyor.com/ AppVeyor is also free for OpenSource projects.