Entenda o versionamento da API REST do TFS
Uma das coisas mais legais do TFS 2015 é a introdução da API REST. Como quase tudo que envolve o TFS e o VSTS, o desenvolvimento dessa API é incremental.
Porém, desenvolvimento incremental de serviços introduz dois problemas: Como evoluir a API sem quebrar clientes antigos? E em qual versão do produto foi introduzida uma certa API?
A resposta a ambas as perguntas é a mesma: o modelo de versionamento da API REST do TFS.
A documentação da API REST do TFS pode ser encontrada no site do Visual Studio. Lá, na página de introdução, há uma dica importante:
Tip: To avoid having your app or service broken as APIs evolve, specify an API version on every request.
A página com a documentação da versão da API, mencionada no link acima, indica:
- Como incluir o número de versão numa chamada à API; e
- Qual a versão mais recente de cada uma das APIs.
Essas informações são muito importantes para resolver o primeiro dos problemas que mencionei no início deste post; entretanto, não resolvem o segundo problema. Então agora vou te contar como saber quando uma certa API foi introduzida. O segredo está no número da versão.
O número da versão da API
A versão da API informa quando ela foi introduzida. O esquema de versionamento, por sua vez, é alinhado com as releases do TFS. Assim:
Versão da API
__
- 2.0: TFS 2015 RTM
- 2.1: TFS 2015 Update 1
- 2.2: TFS 2015 Update 2
- 2.3: TFS 2015 Update 3
- 3.0: TFS v.next (TFS “15”)
A lista acima indica a versão inicial em que uma API foi introduzida. Assim, como exemplo, uma API marcada com a versão 2.0
estará disponível a partir do TFS 2015 RTM. Vale lembrar que todas as APIs estão disponíveis no VSTS, independentemente de versão.
Ah, em tempo: Muitas das APIs estão documentadas como “1.0”
, o que significa que elas foram introduzidas antes do TFS 2015 RTM. Por isso, com apenas algumas poucas exceções (Build APIs), todas as APIs com versão 1.0
estão disponíveis no TFS 2015 e posteriores.
Um abraço,
Igor
(Agradecimento especial a __Will Smythe_, da Microsoft, por ter compilado a lista de versões da API)_
-
Tags:
- DevOps
- Extensibility
- REST API
- TFS
- VSTS
25/05/2016 | Por Igor Abade V. Leite | Em Técnico | Tempo de leitura: 2 mins.