2014-06-06 2 views
3

지금 Microsoft Azure VM에서 호스트되는 기본 WCF 서비스에 대한 Continuouse Integration - Delivery를 설정하려고합니다. 프로젝트는 Visual Studio Online을 통해 버전 제어됩니다. 그래서 젠킨스 (Azure VM), TFS 플러그인 등을 설치하고 첫 번째 테스트 빌드를 시작했습니다.Jenkins 및 Visual Studio 온라인 통합 인증

서버 URL로 "[VSO Adress]/DefaultCollection" 을 사용하고 로그인 목적으로 Microsoft 계정 그것으로 VSO에 액세스 할 수 있습니다). 문제는 내가 빌드를 실행할 때 나는 젠킨스에 다음과 같은 오류를 얻을 수 있습니다 :

Started by user Developer Building in workspace C:\Program Files (x86)\Jenkins\jobs\test\workspace [workspace] $ "C:\Program Files (x86)\TEE-CLC-11.0.0.1306\TEE-CLC-11.0.0\tf.cmd" workspaces -format:brief -server:[VSO Adress]/DefaultCollection ****" An error occurred: Access denied connecting to TFS server [VSO Adress] (authenticating as har****@*******o.com) FATAL: Executable returned an unexpected result code [100] ERROR: null Finished: FAILURE

그래서 제 질문은 젠킨스와 VSO 그런 식으로 연결하기 위해 일반적으로 수 있는지 여부이며, 만약 그렇다면, 자격 증명이 필요합니다 로그인하는

답변

4

Jenkins가 암호화 된 토큰을 가져올 수 없으므로 Microsoft ID로 인증 할 수 없습니다. VSO로 이동하는 경우 프로필 (오른쪽 상단)을 열고 로그인 할 때 사용할 수있는 대체 자격 증명을 구성 할 수 있습니다.

또한 API를 통해 서비스 계정 자격 증명을 얻을 수 있습니다. 나는 이것을위한 간단한 도구를 만들었습니다 : http://nakedalm.com/tfs-service-credential-viewer/

그것은 일반적으로 효과가 있습니다.

+0

먼저 답장을 보내 주셔서 감사합니다. "대체 자격 증명"옵션을 시도했지만 작동하지 않습니다. Jenkins는 "username @ domain"을 묻습니다. [대체 사용자 이름] @ [VSO 도메인]을 채우는 경우 오류는 다음과 같습니다. "이 서버에 대한 페더레이션 인증에는 사용자 이름과 암호가 필요합니다." 안타깝게도 두 번째 방법을 시도하기 위해 응용 프로그램에 연결할 수 없습니다. – JuHarm89

+0

아직 전자 메일 주소 또는 도메인을 가져 오지 않았습니다 ... –

+3

감사합니다. 이제 대체 자격 증명과 함께 작동합니다. 문제는 VSO에 "보조 사용자 이름"을 구성하여 Jenkins에서 사용하려고했기 때문입니다. 나는 이유를 모른다. 그러나이 didnt는 일한다. .. 그 후, 나는 "보조 사용자 이름"을 삭제했다. 이제 대체 자격 증명 창에서 설정 한 내 이메일 주소 (기본 사용자 이름)와 PW를 사용합니다. 젠킨스에서 일하는 것 같습니다. 고맙습니다! – JuHarm89

관련 문제