다음을 통해 공유


연습: Visual Studio 설치 프로젝트를 빌드하도록 팀 빌드 구성

업데이트: 2007년 11월

사용자 지정 작업을 추가하거나 빌드 프로세스 동안 지정된 위치에서 실행된 MSBuild 작업을 사용하여 Team Foundation Build를 사용자 지정할 수 있습니다. 이 항목에서는 MSBuild Exec 작업을 사용하여 Visual Studio 설치 프로젝트를 빌드하도록 빌드 정의를 사용자 지정하는 데 필요한 단계에 대해 설명합니다.

사전 요구 사항

이 연습을 진행하려면 먼저 다음 작업을 수행해야 합니다.

클라이언트 컴퓨터 준비

  • Development Edition 설치됨

  • 팀 탐색기 설치됨

  • Team Foundation Server에 대한 연결

  • 작업 영역으로 사용할 로컬 디렉터리

팀 프로젝트 준비

  • 만들어진 빌드 정의

  • 로컬 디렉터리에 매핑된 소스 제어의 작업 영역

    자세한 내용은 방법: 매핑된 작업 영역 만들기를 참조하십시오. 이 연습에서는 C:\DeploymentProjects라는 로컬 작업 영역을 사용합니다.

  • 소스 제어 사용

    1. Team Foundation 버전 제어를 사용하도록 Visual Studio를 구성하려면 도구 메뉴에서 옵션을 클릭하고 소스 제어를 클릭합니다.

    2. 현재 소스 제어 플러그 인 목록 상자에서 Visual Studio Team Foundation Server를 선택합니다.

Team Foundation Build가 설치된 빌드 에이전트

MSBuild Exec 작업을 통해 devenv.exe를 호출하여 설치 프로젝트를 빌드하려면 Visual Studio를 빌드 에이전트에 설치해야 합니다. 자세한 내용은 Exec 작업Devenv 명령줄 스위치를 참조하십시오.

참고:

빌드 에이전트는 빌드가 실행되는 컴퓨터입니다. 자세한 내용은 방법: 빌드 에이전트 만들기 및 관리를 참조하십시오.

필요한 권한

이러한 연습를 수행하려면 빌드 관리와 작업 영역 관리 권한이 허용으로 설정되어 있어야 합니다. 또한 체크 인 권한과 체크 아웃 권한도 허용으로 설정되어 있어야 합니다.

팀 프로젝트를 만들려면 새 프로젝트 만들기 권한이 허용으로 설정되어 있어야 하고 Windows SharePoint Server에서 SharePoint Central Admins 그룹의 멤버여야 하며 SQL Reporting Services에서 내용 관리자 권한을 가지고 있어야 합니다.

Team Foundation Build에서 만든 설치 관리자를 실행할 컴퓨터에 대한 설치 권한이 있어야 합니다.

Visual Studio 프로젝트 만들기

이 연습에서는 간단한 C# Windows Forms 응용 프로그램 만들기 예제를 통해 Visual Studio 설치 프로젝트를 빌드하도록 Team Foundation Build를 구성합니다.

Visual Studio Windows Forms 응용 프로그램을 만들려면

  1. 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트를 클릭합니다.

  2. 새 프로젝트 대화 상자의 프로젝트 형식 창에서 Visual C#을 선택합니다. 템플릿 창에서 Windows Forms 응용 프로그램을 선택합니다.

  3. 이름 상자에 HelloWorldTest를 입력합니다. 위치 상자에 C:\DeploymentProjects를 입력하거나 팀 프로젝트에 사용하려고 선택한 로컬 작업 영역을 엽니다.

  4. 확인을 클릭합니다.

    솔루션 탐색기에 HelloWorldTest가 표시되고 Windows Forms 디자이너에 Form1.cs가 표시됩니다.

  5. 보기 메뉴에서 도구 상자를 클릭하여 컨트롤 목록을 표시합니다.

  6. Button 컨트롤을 폼으로 끌어 옵니다.

  7. 새 단추를 두 번 클릭하여 코드 편집기를 엽니다.

    Visual C#에서 button1_Click이라는 메서드를 삽입합니다.

  8. 메서드에 다음 코드를 추가합니다.

    private void button1_Click(object sender, EventArgs e)
            {
                MessageBox.Show("Hello World!");
    
            }
    
  9. 파일 메뉴에서 모두 저장을 클릭하여 변경 내용을 저장합니다.

  10. 빌드 메뉴에서 HelloWorldTest 빌드를 클릭하여 솔루션을 빌드하고 빌드 오류가 없는지 확인합니다.

배포 프로젝트를 만들려면

  1. 솔루션 탐색기에서 HelloWorldTest 솔루션을 선택한 다음 파일 메뉴에서 추가를 가리키고 새 프로젝트를 클릭합니다.

  2. 새 프로젝트 추가 대화 상자의 프로젝트 형식 창에서 기타 프로젝트 형식 노드를 확장하고 설치 및 배포를 클릭한 다음 템플릿 창에서 설치 프로젝트를 클릭합니다. 이름 상자에 HelloWorldTestInstaller를 입력합니다.

  3. 확인을 클릭하여 대화 상자를 닫습니다.

    프로젝트가 솔루션 탐색기에 추가되고 파일 시스템 편집기가 열립니다.

설치 관리자에 HelloWorldTest 응용 프로그램을 추가하려면

  1. 솔루션 탐색기에서 HelloWorldTestInstaller를 선택합니다. 파일 시스템 편집기에서 응용 프로그램 폴더 노드를 마우스 오른쪽 단추로 클릭하고 추가를 가리킨 다음 파일을 클릭합니다.

  2. 파일 추가 대화 상자에서 HelloWorldTest.exe의 위치를 열고 파일을 선택한 다음 열기를 클릭합니다.

    이 연습에서 이 위치는 C:\DeploymentProjects\HelloWorldTest\HelloWorldTest\obj\Debug\HelloWorldTest.exe입니다. 파일 경로는 로컬 작업 영역의 위치에 따라 달라질 수 있습니다.

  3. 파일 메뉴에서 모두 저장을 클릭하여 변경 내용을 저장합니다.

  4. 빌드 메뉴에서 HelloWorldTestInstaller 빌드를 클릭하여 설치 관리자의 로컬 복사본을 빌드하고 빌드 오류가 없는지 확인합니다.

    설치 프로젝트에 따라 설치 관리자가 빌드되었는지 확인하려면 출력 파일 위치를 엽니다. HelloWorldTestInstaller.msi 및 setup.exe가 출력 파일 위치에 있는 것을 볼 수 있습니다.

    참고:

    출력 파일을 찾으려면 솔루션 탐색기에서 HelloWorldTestInstaller 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다. HelloWorldTestInstaller 속성 페이지 대화 상자의 출력 파일 이름 상자에 설치 관리자 파일의 위치가 들어 있습니다.

vdproj 파일을 Team Foundation Build에서 사용할 수 있도록 수정하려면

  1. 솔루션 탐색기에서 HelloWorldTestInstaller 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다. HelloWorldTestInstaller 속성 페이지 대화 상자에서 구성 관리자를 클릭합니다.

    HelloWorldTest 및 HelloWorldTestInstaller의 빌드 상자가 선택되어 있는지 확인합니다.

  2. 구성 관리자 대화 상자에서 닫기를 클릭한 다음 확인을 클릭하여 HelloWorldTestInstaller 속성 페이지 대화 상자를 닫습니다.

  3. 파일 메뉴에서 모두 저장을 클릭하여 변경 내용을 저장합니다.

  4. HelloWorldTestInstaller.vdproj 파일을 찾습니다.

    이 연습에서 이 위치는 C:\DeploymentProjects\HelloWorldTest\HelloWorldTestInstaller입니다. 파일 경로는 로컬 작업 영역의 위치에 따라 달라질 수 있습니다.

  5. HelloWorldTestInstaller.vdproj를 마우스 오른쪽 단추로 클릭하고 연결 프로그램을 가리킨 다음 프로그램 선택을 클릭합니다. 연결 프로그램 대화 상자의 프로그램 창에서 Notepad를 선택한 다음 확인을 클릭하여 메모장에서 HelloWorldTestInstaller를 엽니다.

  6. 모든 파일 경로가 HelloWorldTestInstaller.vdproj 파일의 위치에 대해 상대적인 경로로 나열되어 있는지 확인합니다.

    절대 경로가 나열되면 안 됩니다.

HelloWorldTest를 Team Foundation 소스 제어에 추가하고 체크 인하려면

  1. 솔루션 탐색기에서 HelloWorldTest 솔루션을 마우스 오른쪽 단추로 클릭한 다음 소스 제어에 솔루션 추가를 클릭합니다.

    소스 제어에 대한 보류 중인 추가 내용임을 나타내는 노란색 더하기 기호가 모든 파일 옆에 표시됩니다.

  2. 솔루션 탐색기에서 HelloWorldTest 솔루션을 마우스 오른쪽 단추로 클릭한 다음 체크 인을 클릭합니다. 체크 인 - 소스 파일 - 작업 영역: <작업 영역 이름> 대화 상자에서 선택한 파일로 스크롤합니다. HelloWorldTest.exe의 이름 상자의 내용을 지우고 체크 인을 클릭합니다.

    파일이 이제 Team Foundation 버전 제어에 체크 인됩니다.

    중요:

    새 실행 파일을 빌드하도록 Team Foundation Build를 구성하고 있으므로 실행 파일의 선택은 취소합니다.

TFSBuild.proj 파일 수정

Team Foundation Build를 사용하여 HelloWorldTestInstaller 프로젝트를 빌드하기 전에 새 빌드 정의를 만들거나 수정할 수 있는 기존 빌드 정의를 사용해야 합니다. 자세한 내용은 방법: 빌드 정의 만들기를 참조하십시오. 빌드 정의와 연결된 TFSBuild.proj 프로젝트 파일에 설치 프로젝트를 빌드하도록 지시하려면 해당 프로젝트 파일을 수정해야 합니다.

설치 프로젝트를 빌드하도록 TFSBuild.proj 파일을 수정하려면

  1. 보기 메뉴에서 다른 창을 가리킨 다음 소스 제어 탐색기를 클릭합니다.

  2. 소스 제어 탐색기의 폴더 창에서 팀 프로젝트를 확장하고 만들어진 TFSBuild.proj 파일을 찾습니다. 기본 위치는 팀 프로젝트 폴더에 있는 TeamBuildTypes 폴더입니다.

  3. 보기 창에서 HelloWorldTest와 HelloWorldTestInstaller를 빌드하는 데 사용할 빌드 형식을 선택합니다. 로컬 작업 영역에 파일의 복사본이 없는 경우에는 TeamBuildType 폴더를 마우스 오른쪽 단추로 클릭한 다음 최신 버전 가져오기를 클릭합니다.

    이렇게 하면 편집을 위해 파일을 체크 아웃할 수 있습니다.

  4. 보기 창에서 빌드 형식을 두 번 클릭하고 TFSBuild.proj를 마우스 오른쪽 단추로 클릭한 다음 편집하기 위해 체크 아웃을 클릭합니다. 체크 아웃 대화 상자에서 없음 - 공유 체크 아웃 허용을 선택하고 체크 아웃을 클릭합니다.

    소스 제어 상태를 나타내는 빨간색 확인 표시가 TFSBuild.proj 파일 옆에 나타납니다.

  5. TFSBuild.proj 파일을 두 번 클릭하여 Visual Studio XML 편집기에서 엽니다.

  6. 굵게 표시된 다음 코드를 TFSBuild.proj 파일의 끝에서 닫는 </Project> 태그 앞에 추가합니다.

    <Target Name="AfterCompile">     <Exec Command="&quot;$(ProgramFiles)\Microsoft Visual Studio 9.0\Common7\IDE\devenv&quot; &quot;$(SolutionRoot)\HelloWorldTest\HelloWorldTestInstaller\HelloWorldTestInstaller.vdproj&quot; /Build &quot;Debug|Any CPU&quot;"/>     <Copy SourceFiles="$(SolutionRoot)\HelloWorldTest\HelloWorldTestInstaller\Debug\HelloWorldTestInstaller.msi; SolutionRoot)\HelloWorldTest\HelloWorldTestInstaller\Debug\setup.exe" DestinationFolder="$(OutDir)" /> </Target> 
    

    이 예제에서는 devenv.exe 프로그램을 호출하여 HelloWorldTestInstaller 설치 프로젝트를 빌드하는 MSBuild exec 작업을 사용합니다. 자세한 내용은 Exec 작업을 참조하십시오. MSBuild copy 작업은 .msi 및 .exe 파일을 Team Foundation Build 출력 디렉터리에 복사하는 데 사용됩니다. 자세한 내용은 Copy 작업을 참조하십시오.

    AfterCompile 대상은 Team Foundation Build가 HelloWorldTest 응용 프로그램이 컴파일되는 CoreCompile 대상의 실행을 완료한 후에 실행됩니다. 대상 이름에 대한 자세한 내용은 Team Foundation Build 구성 파일 이해를 참조하십시오.

  7. 파일 메뉴에서 저장을 클릭하여 변경 내용을 저장한 다음 TFSBuild.proj를 닫습니다.

  8. 소스 제어 탐색기에서 TFSBuild.proj를 마우스 오른쪽 단추로 클릭한 다음 보류 중인 변경 내용 체크 인을 클릭합니다. 체크 인 - 소스 파일 - 작업 영역: <작업 영역 이름> 대화 상자에 주석을 선택적으로 추가할 수 있습니다. 체크 인을 클릭하여 TFSBuild.proj를 소스 제어에 체크 인합니다.

빌드 정의 실행

TFSBuild.proj 파일을 수정하고 변경 내용을 Team Foundation 버전 제어에 저장했으면 빌드 정의를 실행하여 배포 프로젝트를 빌드합니다.

팀 빌드 정의를 실행하려면

  1. 빌드 메뉴에서 새 빌드 큐 대기를 클릭합니다.

  2. 빌드 "<team project name>" 큐에 대기 대화 상자에서 사용할 빌드 정의, 빌드 에이전트, 큐에서 우선 순위를 차례로 선택한 다음 큐를 클릭합니다.

    자세한 내용은 방법: 빌드 정의 큐에 대기 또는 시작을 참조하십시오.

    빌드 탐색기에서 빌드 프로세스를 모니터링할 수 있습니다. 자세한 내용은 방법: 빌드 진행률 모니터링을 참조하십시오.

  3. 빌드 탐색기에서 요약 머리글 아래에 있는 로그 파일을 클릭합니다. 로그 파일에서 오류를 확인합니다.

    참고:

    "MSB4078: 프로젝트 파일 "HelloWorldTestInstaller\HelloWorldTestInstaller.vdproj"은(는) MSBuild에서 지원하지 않으므로 빌드할 수 없습니다."라는 경고는 무시해도 안전합니다. 이 파일은 MSBuild Exec 작업을 사용하는 devenv.exe 프로그램에서 빌드합니다.

생성된 설치 파일을 설치하려면

  1. 빌드 저장 위치 \\<drop location>\Public_build\HelloWorldTestBuild_<build number>\Release를 찾습니다.

    저장 위치는 로그 파일 위치와 동일한 파일 공유이며 빌드 탐색기의 요약 머리글 아래에 나열되어 있습니다.

  2. 사용자가 Windows Administrator 보안 그룹의 멤버이거나 설치 권한이 허용으로 설정된 컴퓨터에 HelloWorldTestInstaller.msi 및 setup.exe 파일을 복사합니다.

  3. setup.exe 파일을 두 번 클릭하고 설치 마법사의 지침에 따릅니다.

    HelloWorldTestInstaller.exe가 <root>:\Program Files\Microsoft\HelloWorldTestInstaller 경로에 설치됩니다.

  4. <root>:\Program Files\Microsoft\HelloWorldTestInstaller로 이동합니다.

  5. .exe 파일을 두 번 클릭하여 응용 프로그램을 실행합니다.

다음 단계

Visual Studio 설치 프로젝트를 수정하여 설치 마법사의 추가 단계를 구성할 수 있습니다. 자세한 내용은 Windows Installer 배포 개념을 참조하십시오.

참고 항목

작업

연습: 사용자 지정 작업을 통해 Team Foundation Build 사용자 지정

기타 리소스

Team Foundation Build에서 빌드 정의 사용

Team Foundation Build로 빌드 관리