[MSBuild] XML 을 이용한 Build

728x90
반응형

 

 

MSBuild 이용시, XML 파일을 이용해서 Build 에 관련한 셋팅 및 절차를 기록하여 진행 할 수 있습니다. 

실제로 진행하고 있는 프로젝트 혹은 솔루션 폴더 내에 해당 xml 파일을 위치 시켜놓고, 

MSBuild를 이용해서 xml 파일을 실행시키는 방식으로 빌드를 진행 할 수 있습니다.

 

이 방식은 Jenkins 와 연동하여, 다양한 Action을 제어 할 수 있습니다. 

아래의 File 은 현재 저희 프로젝트에서 Build 만 진행 했을 경우에 사용하는 xml 파일이며, 

해당 부분에 여러 Taget 을 정의 하고 Call 하는 방식으로 순차적인 진행을 제어 할 수 있습니다.

 

아래 파일은 Build 만 진행하지만, 

파일 삭제, Backup, Packaging, Deploy, Zip 등 다양한 Target을 정의 할 수 있습니다. 

 

 

XML 파일

<?xml version="1.0" encoding="utf-8" ?>
<Project ToolsVersion="15.0" DefaultTargets="Run" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
    <SolutionName>SolutionName</SolutionName>
    <SolutionFile>$(SolutionName).sln</SolutionFile>
    <ProjectName>ProjectName</ProjectName>
    <ProjectFile>$(ProjectName)\$(ProjectName).csproj</ProjectFile>
    <ProjectVersion>1.0.0.0</ProjectVersion>
    <BackUpFolder>$([System.DateTime]::Now.ToString("yyyyMMdd_HHmmss")) ($(ProjectVersion))</BackUpFolder>
  </PropertyGroup>

  <Target Name="Run">
    <CallTarget Targets="Build" />
  </Target>

  <Target Name="Build">
    <Message Text="2. Build Start ######################################################################"></Message>
    <MSBuild Projects="$(SolutionFile)" ContinueOnError="false" Targets="Build" Properties="Configuration=$(Configuration)" />
  </Target>

</Project>

 

 


호출

> MSBuild.exe "E:\Server\Build.xml" /p:Configuration=Debug;SloutionName=SolutionName;ProjectName=ProjectName;DeployURL=https://000.000.000.000 /p:VisualStudioVersion=15.0

 

 

728x90