2016-10-06 72 views
0

內部部署TFS 2015 u2。我想爲發佈創建事件創建HTTP服務掛鉤訂閱。作爲導演herehere,我發送POST請求TFS:PublisherNotFoundException嘗試創建「rm」訂閱時

http://tfs.mycompany.com:8080/tfs/MyCollection/_apis/hooks/subscriptions?api-version=1.0 

用下面的JSON:

{ 
"publisherId": "rm", 
"eventType": "ms.vss-release.release-created-event", 
"resourceVersion": "1.0-preview.1", 
"consumerId": "webHooks", 
"consumerActionId": "httpRequest", 
"publisherInputs": 
{ 
    "projectId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" 
}, 
"consumerInputs": 
{ 
    "url": "http://someserver/somefolder/" 
} 
} 

我得到以下錯誤信息:

{ 
"innerException": null, 
"message": "No publisher could be found with id \"rm\".", 
"typeName": "Microsoft.VisualStudio.Services.ServiceHooks.WebApi.PublisherNotFoundException, Microsoft.VisualStudio.Services.ServiceHooks.WebApi, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", 
"typeKey": "PublisherNotFoundException", 
"errorCode": 0, 
"eventId": 4501 
} 

事實上,如果您要求發佈商列表,則只有一個,ID爲「tfs」。那裏沒有「rm」出版商。從「tfs」發佈者請求相同的訂閱會產生「未知事件」錯誤。

我必須以某種方式啓用該發佈者嗎?它是否支持預裝TFS?如果是這樣,那麼哪個版本?

它會傷害微軟註釋他們的支持版本的TFS REST API文檔,就像他們的API文檔的其他部分一樣嗎?

回答

0

發佈者是一個將事件發佈到服務鉤子的服務。在TFS 2015 update2中,如果您請求發佈者列表,則不會獲得帶有「rm」的發佈ID。目前不支持TFS2015。

而且,實際上是rm資源版本應該是3.0

"resourceVersion": "3.0-preview.1", 
+1

只有在託管TFS,我相信。很高興知道,謝謝。請考慮記錄,以及託管和本地TFS之間的其他API差異。 –