Azure DevOps和Microsoft Teams在不同Tenant做Code Push通知

Edward Kuo
Feb 4 · 4 min read

我想這個問題要碰到人因該不算多,因為,必須是你的Email ID同時是存在兩個不同Organization的Azure DevOps Service和Microsoft Teams下,換句話說,Azure DevOps Service和Microsoft Teams所對應的AAD不同時候的時候。才會有這樣的問題產生。官方文件說明或是直接在Teams內使用Azure DevOps App,可以很順利完成兩者間溝通,這是取決於這兩個服務在同一個Tenant。

而我剛剛上面提到的案例,它的狀況會是下面這樣

  • Teams AAD : AAA@Teams.com
  • Azure DevOps Service AAD : BBB@Devops.com

當你的Teams的Email ID是屬於Teams AAD下,但是,此時該Email ID又是屬於Azure DevOps Organization中的一員,然後想要讓Teams & Azure DevOps通知能夠關聯起來。

這時候,我們必須要先在Teams中去加入Azure Repos的Bot ( 目的要收到Code push通知)

一旦加入就可以開始使用Azure Repos指令了,但問題沒有這樣簡單,因為,這兩服務在不同tenant,所以,並不會直接幫你Sign in到Azure DevOps服務內。不過,你會發現如果在Teams內,會有這樣指令​​​​​​​@Azure Repos signin

輸入完畢會跳出一個Sign in 按鈕,點擊之後,輸入自己的Teams AAD進行登入的動作,一切看似都沒問題時候,這時候又下了@​​​​​​​Azure Repos subscribe 指令,這時候出現這樣錯誤,發現似乎又找不到Azure DevOps Org了

因此,在這邊其實操作步驟要改成這樣才會成功,而要執行下面這些步驟前,如果先前有在Teams App做過@Azure Repos signin ,務必要做@Azure Repos signout 登出動作,不然下面操作可能會失敗

  • 先在Teams App內加入Azure Repos App
  • 打開瀏覽器用InPrivate,打開https://aex.dev.azure.com/me,並在AAD列表找到Azure DevOps的Organization,在旁邊就可以Azure DevOps的網址
  • 此時,Azure DevOps這個頁面不要關掉,增加一個Tab,開啟網路版的Teams (https://teams.microsoft.com/),並登入進去。並在網路版的Teams內執行@Azure Repos signin ,這時候就輸入自己的Teams AAD (Mail ID)登入就可以

基本上執行到這邊就把兩邊的資訊給連接起來。

此時,想要在網路版Teams操作@​​​​​​​Azure Repos 或是到Teams App操作都可以了。此時,有更改Code,也會發通知到Teams內

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store