다음을 통해 공유


빌드 프로세스에서 스크립트 실행

Team Foundation Build(TFBuild) 기본 템플릿은 대부분의 팀에서 응용 프로그램을 빌드하고 테스트하는 데 필요한 핵심 기능을 제공합니다. 그와 동시에 대부분의 소프트웨어 프로젝트는 팀에서 자체 비즈니스 논리를 추가할 수 있을 만큼 독자적입니다. 사용자 지정 빌드 프로세스는 개발 및 관리가 복잡하며 많은 비용이 들 수 있습니다. 그러나 시스템에서 코드를 컴파일 또는 테스트하기 전후에 PowerShell 스크립트 또는 배치(.bat) 파일만 실행하려는 경우에는 그럴 필요가 없습니다.

예를 들어, 컴파일하기 전에 어셈블리 파일의 버전을 설정할 수 있습니다. 또는 컴파일한 후에 스테이징 위치에 저장되도록 빌드 출력을 제어할 수 있습니다.

빌드 프로세스에서 스크립트 실행

기본 템플릿의 스크립트 매개 변수

코드를 컴파일하기 전후와 테스트를 실행하기 전후에 기본 서식 파일을 사용하여 PowerShell 및 일괄 처리(.bat) 스크립트를 실행할 수 있습니다.

빌드 프로세스에서 스크립트를 실행하기 전에 업로드해야 합니다.

스크립트를 업로드한 후 빌드 프로세스 매개 변수의 적절한 위치에서 해당 스크립트를 참조합니다. 필요한 경우 스크립트에 인수를 제공할 수도 있습니다.

빌드 전 예: 어셈블리 버전 관리

MSBuild에서 코드를 컴파일하기 전에 수행할 수 있는 작업이 많아도 이 중 가장 일반적인 작업 중 하나는 어셈블리에 버전을 적용하는 것입니다.

ApplyVersionToAssemblies.ps1

빌드 후 예: 이진 파일 준비

출력 위치AsConfigured로 설정하면 TFBuild에서 어느 이진 파일이 저장되는지를 사용자가 제어하도록 합니다. 이 경우 TFBuild는 이진 파일을 컴파일하여 소스 디렉터리에 저장합니다. 이때 이진 파일은 Visual Studio를 사용하여 개발 컴퓨터에서 로컬로 컴파일한 경우와 기본적으로 같은 방식으로 구성됩니다. 다음 스크립트는 일반적인 위치에서 일반 이진 파일의 일부를 수집하여 특정 폴더에 복사합니다. TFBuild가 이 폴더에서 해당 이진 파일을 복사하여 스테이징 위치에 저장합니다.

GatherItemsForDrop.ps1

Q & A

Q: 권한이 없기 때문에 시스템에 의해 차단되었습니다.어떻게 하면 권한을 얻을 수 있습니까?

A: Team Foundation Server에 대한 사용 권한 참조

Q: 스크립트에 어떤 환경 변수를 사용할 수 있습니까?

A: TF_BUILD 환경 변수에서 데이터를 가져옵니다.

Q: 스크립트 개발에 대한 자세한 정보는 어디에서 얻을 수 있습니까?

A: 답변: Team Foundation Build 프로세스에서 스크립트를 실행하십시오.

Q: 버전 제어 명령을 실행할 수 있습니까?

A: 예. 다음은 파일을 체크 아웃하고 체크 인하는 방법을 보여 주는 예입니다.

& ($env:VS120COMNTOOLS + "..\..\common7\ide\tf.exe") checkout $file

& ($env:VS120COMNTOOLS + "..\..\common7\ide\tf.exe") checkin $file /comment:" Checked in by build process script. ***NO_CI***" /noprompt

Q: 어디에서 스크립트를 구할 수 있습니까?

커뮤니티 TFS 빌드 확장

Q: 스크립트가 저에게 충분한 제어권을 주지 않습니다.어떻게 해야 합니까?

빌드 프로세스 템플릿을 사용자 지정하십시오.