2016-08-04 1 views
3

작업 항목에 버전을 기반으로 어셈블리 - 사전 구축 방법 :내가 자동으로이 룰에 따라 내 어셈블리 버전 증가하고 싶습니다

  1. 개정 0
  2. 빌드가 증가 항상 때 만 릴리스의 WIT는 버그 수정입니다.
  3. 릴리스에 버그 수정 이외의 WIT가 포함되면 보조가 증가합니다. 빌드가 다음 항상 0
  4. 주요로 설정되어 자동으로 당연히이 프로젝트와 어떤 방식으로 상호 작용할 수있는 빌드 단계가 필요합니다

을 증가되지 않습니다.

내 첫 번째 생각은 TFS SDK를 사용하여 이러한 규칙을 기반으로 버전 번호를 만들고 WCF 호출 등을 통해 반환하는 작은 Windows 서비스를 구축하는 것이 었습니다. 그러나 비즈니스 요구 사항이있는 곳에서 문제가 발생했습니다. 모든 코드와 기능을 VSTS 프로젝트에도 복제해야합니다 (고객이 코드를 소유하고 나와 함께 진행할 수 있어야합니다). 거기에 그런 서비스를 설치하는 것은 없습니다.

그런 다음 서비스를 서버에 설치 한 다음 VSTS에서 사용할 수 있도록했습니다. 이것은 Rube Goldberg 시험 비행에 통과 할 것입니다.

이 작업을 수행하는 더 쉬운 방법이 있습니까? 두 가지 환경에서 모두 작동 할 수있는 제품?

편집

나는 this를 발견,하지만 TFS SDK는 VSTS의 GAC에 등록되어 있는지 의심 스럽다.

누군가를 확인할 수 있습니까? VSS에서 실행되는 스크립트를 작성하기 위해 TFS SDK를 사용할 수 있습니까?

+0

답변을 적용 할 버전이 명확하도록 태그를 편집 할 수 있습니까? TFS2015, VSTS, 둘 다 있습니까? –

+0

@ GiulioVian : 완료, 감사합니다. – InteXX

답변

1

이제는 오래 걸리지 않았습니다.

PowerShell을 사용하여 REST API를 쿼리 한 결과 thisthis이 발견되었습니다. GAC/SDK가 필요하지 않습니다.

- 제공하는 솔루션은 대단히 복잡로 편집 -----------------

것은 내가 의도적으로 이러한 링크 뒤에 페이지의 내용을 제외했습니다; 여기에서 개념을 단일 게시물에 포함 할 수는 없습니다. 경우 페이지가 사라지거나 URL이 여기 변경 archive.org에서 링크입니다 : 어떤 경우에

1. PowerShell and vNext Builds
2. VSTS/TFS REST API: The basics and working with builds and releases

, 개념은 인기와 잘 덮여-에있다 이 두 사건이 접근하기 어려워지면 동일한 주제에 대해 이용할 수있는 많은 것들이 있습니다. 내가 찾은 것만 큼 빨리 누군가가 더 많이 찾을 수있었습니다.

+0

답변에 2 개의 링크가 포함되어 있지만 해당 링크의 관련 콘텐츠를 답변에 복사하지 않았으므로 의심됩니다. 블로그 및 기타 웹 사이트는 시간이 지남에 따라 변경되고 사라지고 부서지기 쉽기 때문에 현재 상태에서 답을 쓸모 없게 만듭니다. – jessehouwing

+0

TFS 개체 모델은 더 이상 GAC에서 사용할 수 없지만 Nuget에서 쉽게 다운로드 할 수 있습니다. 빌드의 일부이거나 사용자 정의 빌드 확장에 포함됩니다. 또한 자신의 복사본을 사용하는 것이 좋지만 빌드 에이전트 자체의 일부로 사용할 수도 있습니다. 참조 : https://github.com/Microsoft/vsts-task-lib/blob/master/powershell/Docs/UsingOM.md – jessehouwing

+0

@jessehouwing : "나는 의심합니다."좋은 지적입니다. 내가 게시했을 때 그 문제는 내 마음을 넘어 섰지 만, 나는 지금 편집에서 지적한 이유 때문에 내용을 포함하는 것을 거부했다. 나는 그 당시에 그렇게 잘했다고 생각합니다. – InteXX