deployment tools under .NET solutions

江枫思渺然 提交于 2019-12-21 12:19:48

问题


We all do code, small (like one .exe) or big applications (complete solutions) with web applications, windows applications, databases, help files, configuration files and registry values...

my question is simple, in my opinion that is, now that I need to deploy a web application and a windows application in just one installation setup:

What do you use to the deployment of your applications, regarding creating of help files, database scripts so we can create a database and tables, create a virtual directory for the web applications, add registry values to work with our windows application?

I just open Setup & Deployment from Visual Studio 2008, but is it me or it lack a lot of such features? is there any thing worst a try out there for this?

I know Inno Setup that they use here in the company, but it does not do all, any good tutorial that I should see? In my search I found out some products in Visual Studio Gallery, but none does all-in-one :(

Thank you.


回答1:


I strongly suggest NSIS, you can get a lot of help on the forums.




回答2:


I have written a pretty detailed blog post using TeamCity, and Web Deployment projects to automate build and deployment as a starter here:

http://www.diaryofaninja.com/blog/2010/05/09/automated-site-deployments-with-teamcity-deployment-projects-amp-svn

I have then added to this to show FTP addition

http://www.diaryofaninja.com/blog/2010/09/21/continuous-integration-tip-1-ndash-ftp-deployment

A basic process flow is pretty simple:

  • Using a teamcity build server i download from my SVN repo
  • I build and deploy the site to a local folder on the build server
  • I fire a command line FTP client that supports scripting called
  • WinSCP using the MSBUILD Task EXEC (http://winscp.net/)
  • Upload all my sites content
  • Have [insert beverage] of choice

I then make sure that i only deploy the Trunk of my SVN repo, and develop and test everything in an branch before merging - this way only tested stuff gets deployed. Add Automated testing to your build cycle and you've got a match made in heaven.

Some great free tools to get going are:

  • Visual Studio Web Deployment Project
  • TeamCity (free for under 20 build configs)
  • Bamboo

Some non-free online services that provide this:

  • OnCheckin Continuous Deployment
  • AppHarbor



回答3:


If you are into self harm you could look at WiX (http://wix.sourceforge.net). WiX is used by some of the product teams at Microsoft and is actually maintained by Microsoft employees, but it is pretty much their only open source project on SourceForge.

It is very powerful and has features for doing all that you want, but it is all done in XML and can be a little tricky to get going. On the bright side once it is set up it integrates will with automated builds because it has support for being inside Visual Studio (MSBuild support).




回答4:


We use FinalBuilder and FinalBuilder server here. Lets you build complicated build processes using a relatively nice build interface and launch them from a web application or on a timer.

Our "average" project will grab source from SVN, add the revision number to the version and build, grab the database scripts and upgrade or rebuild the database and deploy to either a webserver, ZIP it up for emailing or even create an ISO for it.




回答5:


The setup and deployment projects have served me well in the past for simple setups like creating virtual directories and packaging files such as documentation, etc.

If you want more power have a look at WIX



来源:https://stackoverflow.com/questions/416573/deployment-tools-under-net-solutions

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!