2008-10-10 4 views
11

Мы используем много python, чтобы выполнить большую часть нашего развертывания, и было бы удобно подключиться к нашему серверу TFS, чтобы получать информацию об итерационных путях, билетах и ​​т. Д. Я могу видеть веб-сервис, но не могу найти какую-либо документацию , Просто интересно, знал ли кто-нибудь о чем-нибудь?Документация TFS Webservice

ответ

13

Веб-службы не документированы Microsoft, поскольку это не официально поддерживаемый маршрут для общения с TFS. Официально поддерживаемый маршрут - использовать их .NET API.

В случае вашего вида приложения, я обычно рекомендую создать собственный веб-сервисный прослойка, которая живет на сервере TFS (или другом сервере), и использует свой API для общения с сервером, но позволяет вы должны представить данные в хорошем виде для вашего приложения.

Их объектная модель значительно упрощает взаимодействие (в зависимости от того, что вы хотите сделать), и поэтому на самом деле это означает, что для всего кода, но лучше проверенный и проверяемый код, а также вы можете обойти такие вещи, как NTLM auth, используемого веб-службами TFS.

Надеюсь, что это поможет,

Martin.

+0

Только что отправил вопрос ниже, но я подумал, что добавлю комментарий здесь, в случае, если Мартин Вудворд получает сообщение, когда добавляется комментарий ... Я полагаю, что он, вероятно, знает ответ. http://stackoverflow.com/questions/3682140/are-tfs-2010-a-k-a-microsoft-alm-2010-web-services-exposed-documented – 2010-09-10 03:49:11

1

Итак, этот вопрос является «старым», но позвольте мне взломать его (поскольку он продолжает появляться в моих поисковых запросах Google).

Нет официального поддерживаемого API для встроенного TFS (в MSFT, имеющем один из http://www.visualstudio.com/en-us/integrate/api/overview).

Сказанное: вы всегда можете использовать Fiddler (http://www.telerik.com/fiddler) или что-то в этом роде, чтобы проверить вызовы, которые веб-клиент для TFS делает на сервере, и сделать свою магию, чтобы превратить их в скрипты на нужном питоне.

Вам нужно будет запустить скрипты python под учетной записью службы, у которой есть привилегии TFS, соответствующие тому, что она пытается делать (читать, обновлять, конфузировать ... что угодно).

Поскольку это звучит, как вы просто пытаетесь читать из TFS, это может быть очень простой способ для вас, чтобы получить то, что вы хотите, так как HTTP добраться до http://yourserver/tfs/yourcollection/yourproject/_workitems#id=yourworkitemid передаст вам обратно (наполовину) здравомыслящих HTML полезных нагрузок.

Если вы хотите списки итераций или команд или любой другой, то ваша учетная запись службы должна иметь соответствующие права администратора и нажмите вещи, как http://yourserver/tfs/yourcollection/yourproject/_admin/_iterations и использовать этот ответ.