Deploying to On-Premises Servers with VSTS

Sign in to queue

The Discussion

  • User profile image
    Andux

    Great intro, very informative.

    Does this work from on-prem build servers?

  • User profile image
    Damovisa

    Are you talking about using Release Management in TFS rather than VSTS? If so - it will work if you're on a recent-enough version (the docs say TFS 2018).

    If you're talking about whether you can do this from VSTS/TFS Build (rather than Release), the answer is no. Deployments should really be handled with Release Management (or another tool if you like) rather than Build - separating the creation of an artifact and actually deploying and promoting it between environments is really important in a good DevOps strategy. There's some good information about why on the 12 Factor App page.

  • User profile image
    Joey Eng

    I'm not seeing the SQL Server Database deploy task in VSTS. Is it just using SqlPackage.exe behind the scenes? If so can you pass SqlPackage.exe parameters like exclude users?

  • User profile image
    Joey Eng

    Whoops, ignore my last question. I was looking at build definition tasks instead of release. And I see the arguments section to pass parameters to SqlPackage.exe.

  • User profile image
    Doug

    Both "Deploy SQL DACPAC" and "Deploy IIS App" are deprecated now. I am looking for something to use in a production environment. Do replacements exist?

  • User profile image
    Damovisa

    @Doug: These tasks are now only available for Deployment Groups - i.e. you need an agent on the machine to do the deployment. The advantage is no potentially tricky remote connection issues! You can find info here: 

  • User profile image
    flozen

    @Damovisa: Does this work, if both web server and database server sitting on the same machine and no tags created.  B'cas, i currently have the issue, deploying this way,  it does perfectly, for the webapp.  But, it executes the sql task but, nothing is deployed to database server and it says, deployment completed successfully.

  • User profile image
    cenko

    The on-prem database server is owned and controlled by the vendor whose software application our company currently uses. We only have access to a database in the server. Since an agent on the machine is needed to deploy this will not work for us. What would be an alternative?

  • User profile image
    Rob

    I'm new to TFS and VSTS but have a question about what access does VSTS need to the on-prem server? How does the agent on the local server know that a deployment is waiting for it? Does VSTS need to communicate directly to the on-prem server or is it strictly the on-prem server reaching out to the VSTS site? In other words, are any firewall ports needed to be opened FROM the VSTS site to the on-prem server? Cause that ain't gonna happen! LOL Thanks!

  • User profile image
    AbelSquid​Head

    To go on prem you have to install an agent behind your firewall. The only requirement is that the agent needs to be able to reach out to Azure DevOps (formerly known as VSTS) and the agent needs to be able to reach whatever machine it is deploying to. You can even install the agent on the machine you want to deploy to, but that is not required.

Add Your 2 Cents