나는 오래된 빌드 프로세스를 업데이트하는 회사로 임명되었습니다. 그것은 일괄 및 펄 스크립트로 모두 수행됩니다. 현재 빌드 프로세스는 다음과 같습니다.TFS 빌드 및 로컬 빌드
- 웹 인터페이스를 통해 빌드를 예약하십시오.
- 빌드 서버는 빌드 프로세스를 큐에서 제거합니다.
- 빌드 서버는 TFS 소스 컨트롤에서 모든 파일을 체크 아웃합니다.
- 빌드 서버는 빌드하기 전에 소스를 수정하는 몇 가지 코드 삽입 스크립트를 실행합니다.
- 빌드 서버 업데이트 버전 및 코드에 서명하십시오.
- 빌드 서버는 Visual Studio를 사용하여 프로젝트를 컴파일합니다.
- 완료되면 빌드 서버가 출력을 압축하여 네트워크 공유 위치에 놓습니다.
정말 어려운 부분은 코드 삽입 스크립트입니다. 그들은 많은 코드를 수정하는 3 개의 펄 스크립트입니다. 그들은 또한 그들이 설계된 방식에 매우 기계 의존적입니다. (그래서 많은 수정을하지 않고 빌드 프로세스에 넣을 수는 없습니다.)
내 목표는 로컬 개발 컴퓨터에서 빌드 프로세스를 실행할 수 있고 TFS 서버에서 CI를 실행하는 것입니다.
내 검색에서 로컬 컴퓨터에서 TFS 빌드를 에뮬레이트 할 수있는 방법이없는 것처럼 보입니다. 내 cs.proj 파일에서 사전/사후 빌드 명령 줄 스크립트를 사용하는 유일한 방법은 무엇입니까? 또는 로컬 컴퓨터에서 복잡한 빌드를 수행하고 TFS에서 동일한 빌드를 실행하는 더 좋은 방법이 있습니까?
나는 Using TFS build definitions on a local machine을 보았지만, 그것은 나에게 약간 해독 된 것처럼 보입니다. 더 좋은 방법이 없다면 그것은 끔찍한 해결책이 아닐 것이라고 생각합니다.
답변 해 주셔서 감사합니다. 내 게임 계획은 앞으로 1과 2의 혼합이 될 것이라고 생각합니다. 응용 프로그램의 기본 빌드에 필요한 공통 MSBuild 스크립트 집합을 만듭니다. 이러한 공통 스크립트는 서버와 로컬 모두에서 실행됩니다. 이를 통해 개발자는 로컬 컴퓨터에서 응용 프로그램을 빌드하고 디버깅 할 수 있습니다. 그러면 릴리스 유형 작업을 위해 서버에서만 실행되는 사용자 지정 활동이 생깁니다. (버전 업데이트 및 코드 서명 등) 이들은 MSBuild 스크립트와 함께 실행됩니다. –