2010-12-06 6 views
2

좋은 하루!ASP.NET MVC 2 응용 프로그램을 간단하게 자동화

내가 명령 줄에서 이러한 작업을 수행하기위한 솔루션을 찾고 있어요

:

  • 컴파일 ASP.NET MVC 2.0 응용 프로그램 (1 개 asp.net MVC 프로젝트와 2 개 클래스 프로젝트 솔루션 1)
  • 컴파일 결과에서 출시를 압축하는 svnversion
  • 실행 외부 아카이브를 사용하여 SVN 개정 번호를 추가
  • 실행 박쥐 파일을 일부 파일과 폴더를 삭제하여 Web.config 변환을 수행
  • 아직도 내 프로젝트가 이미 Web.Release.configWeb.Debug.config을 가지고, 내가 비주얼 웹 개발자 2010을 사용하고 있습니다 VS

를 사용하여 디버깅 할 수있는 능력을 가지고있다.

MSBuild를 사용하여이 작업을 수행 할 수 있습니까?

감사합니다.

답변

1

예, 당신이 가장하지 않을 경우 모든 작업을 수행 할 MSBuild를 사용할 수 있어야합니다. MSBuild 커뮤니티 태스크를 확인하십시오. MSBuild 커뮤니티 태스크는 꽤 많은 기능을 추가합니다.

http://msbuildtasks.tigris.org/

HTH는

+0

는 것 같다 (기사 주셔서 감사합니다, 그것은! 좋아요), 그러나 그것은 나에게 이러한 상황에서 잔인한 것 같다 내 솔루션,하지만 내가 알기로는 솔루션 레벨에서 스크립트를 작성할 수 없습니다. 프로젝트 레벨에서만 가능합니까? – artvolk

+0

솔루션 레벨 대 프로젝트 레벨의 의미가 확실하지 않은가요? 만약 당신이 전체 솔루션에 대해 msbuild를 사용할 수 없다는 것은 맞지 않습니다. 예, 전체 솔루션에 사용할 수 있습니다. –

1

MSBuild 자체가 귀하의 목록에있는 많은 것들을 할 것이라고 나는 생각하지 않습니다. 이것을하기 위해 많은 스크립트를 만들 수 있습니다. 그러나 Hudson 연속 통합 서버를 살펴 보는 것이 좋습니다. 이미 귀하의 목록에 많은 것들을 할 수 있습니다. 이것은 플러그인 기반 시스템이므로 플러그인이 없으면 자신 만의 롤을 만들 수 있습니다. 또한 꽤 활발한 커뮤니티가있어서 많은 블로그 게시물을 찾을 수 있습니다. 여기에 자신의 사이트에 대한 링크는 다음과 같습니다

http://hudson-ci.org/

나는 또한 허드슨과 .NET을 시작하기에 대한 블로그 게시물 않았다. 당신은 그 유용도 찾을 수 있습니다 :이 도움이

http://blog.bobcravens.com/2010/03/getting-started-with-ci-using-hudson-for-your-net-projects/

희망을.

+0

덕분에, 난 정말 CI 솔루션의 일부 사용하고 싶습니다 – artvolk

1

나는 일반적으로 루비 + 레이크를 사용하여 내 자신의 롤. 다음은 여러분이 나열한 것들의 대부분을 처리합니다. 응답에 대한

require 'rake/clean' 

SELF_PATH = File.dirname(__FILE__) 
PATH_TO_ROOT = SELF_PATH 
PATH_TO_WEB = "C:\\Dev\\" 
PATH_TO_MSBUILD = "C:\\Windows\\Microsoft.NET\\Framework\\v3.5\\msbuild.exe" 

CLEAN.exclude("**/core") 
CLEAN.include("*.cache", "*.xml", "*.suo", "**/obj", "**/bin", "../Deploy") 

task :build do 
    sh "#{PATH_TO_MSBUILD} /v:q #{PATH_TO_ROOT}/HUD.sln" 
end 

namespace "deploy" do 
    desc "Preps the project for deployment" 
    task :package, :project_name do |t, args| 
    begin 
     Rake::Task["clean"].invoke 
     Rake::Task["build"].invoke 
     Dir.mkdir("../Deploy") 
     sh "xcopy .\\#{args.project_name} ..\\Deploy\\#{args.project_name}\\ /S /C /F /Y /exclude:e.txt" 
     begin 
     sh "xcopy .\\#{args.project_name}\\Web.config.prod ..\\Deploy\\#{args.project_name}\\Web.config /S /C /F /Y" 
     rescue 
     end 
    rescue Exception=>e 
     puts e 
    end 
    end 
end 
+0

옵션을 주셔서 감사합니다.'.bat' 파일을 사용하여 비슷한 것을 만들었습니다 :( – artvolk

관련 문제