2017-10-05 8 views
1

이미 여기 참조 https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/release/variables?tabs=batchTFS에서 아티팩트 별칭 BuildNumber를 가져옵니다 2015

내 빌드에서 바닐라 비주얼 스튜디오 팀 파운데이션 서버 2015 (버전 14.102.25423.0) 를 사용하고 내가 유물을 압축 아티팩트의 빌드 번호와 함께. 예. 20171004.16.zip 내 릴리스 정의에 정의 된 아티펙트 소스가 두 개 있습니다.

"QA - myproject - build" 
"Prod - myproject - build" 

내 단계 중 하나는 buildnumber.zip 파일을 원격 서버에 복사하는 것입니다. 내 구성 설정에 은 내가 정의 :

ProdBuildNumber = $(Release.Artifacts.Prod - myproject - build.BuildNumber) 

문제는 ProdBuildNumber 그냥 문자 그대로로 설정지고 계속 것입니다. 예를 들면 : 디버그 스크립트 :

... 
2017-10-05T19:09:48.0651172Z [SYSTEM] --> [release] 
2017-10-05T19:09:48.0651172Z [PRODBUILDNUMBER] --> [$(Release.Artifacts.Prod - myproject - build.BuildNumber)] 
2017-10-05T19:09:48.0651172Z [RELEASE_RELEASEID] --> [114] 
... 

사람이 볼 수 내가 무엇을 잘못하고 있는가? 기꺼이 아이디어를 시도해보십시오.

+0

실제로 어떤 정보를 추출하려고합니까? 'Release.Artifacts.Prod'는 어떤 것도 해결하지 못합니다 (예를 들어'Release.Artifacts.Prod.DefinitionName'과 같은 것을 지정해야합니다). 그리고'Build.BuildNumber'는 자동으로 빌드 번호로 해석됩니다. 주요 인공물. –

+0

Msft는 특정 이슈의 빌드 번호에 액세스하는 것과 같이 Release.Artifacts처럼 사용합니다. {Artifact alias} .BuildNumber. 내 릴리스에는 두 개의 아티팩트 소스가 있습니다. 적절한 아티팩트 빌드 번호를 타겟팅 할 수 있어야합니다. 기본이 아닙니다. 내 별칭이 "some - project - name"이면 경로가 Release.Artifacts.some - project - path.BuildNumber가 아니어야합니다. 문법의 어떤 부분이 올바르지 않습니다. – macm

+0

아티팩트의 공백을 예상합니다. 앨리어스는 그것을 넘어 뜨리고있다. 당신이'Release.Artifacts.Prod'와'Build.BuildNumber'에 접근하려고 시도하지 않았다는 것을 잠시 깨웠다. –

답변

0

ProdBuildNumber = $(Release.Artifacts.Prod) - myproject - $(build.BuildNumber) 
+0

번호. 그 결과 같은 스타일이됩니다. – macm

+0

이 대답에서 언급 한 것처럼 [가변 확장 작업] (https://marketplace.visualstudio.com/items?itemName=jessehouwing.jessehouwing-vsts-variable-tasks)을 사용해야합니다. https ://stackoverflow.com/a/36612132/7034621 – orhtej2

+0

설명서에 변수를 사용할 수 있음이 명확하게 명시되어 있습니다.나는 구문이 올바르지 않은 곳을 볼 수 없다. – macm

0

에서 [Release.Artifacts.Alias.BuildNumber] 변수 TFS2015에서 사용할 수없는 시도. 서버를 사용하려면 서버를 TFS2017로 업그레이드하고 릴리스/로그/배포에서 지원되는 모든 변수를 확인할 수도 있습니다. TFS2015에서 지원되는 변수는 다음과 같습니다 당신이 지금 서버를 업그레이드 할 수없는 경우 enter image description here

, 당신은 당신의 릴리스 정의에 PowerShell 스크립트 작업을 추가 할 수 있습니다 Rest API를 통해 상세 유물 정보를 얻을 수 있습니다.