0

我很高興看到TFS Update 2可用於內部部署,幷包括Web體驗的版本管理功能部分。我們一直在等待這個。帶有神器的觸發器TFS版本管理版本號

我需要一些關於如何最好地觸發發佈的幫助。

發佈可以通過三種方式來觸發:

  • 連續基於鏈接到TFS生成定義
  • 手動
  • REST API

這是偉大的,但我不部署觸發器不認爲它符合我的預期。我需要技術解決方案的幫助或者我如何思考這個問題。

我的思考:

我相信生成應該創建一個假象,並把神器的放置位置現在被釋放或從現在開始的一年。 (需要稍後重建或添加服務器)

我覺得連續部署觸發器會因爲它取決於在TFS Build中的工件而中斷,並且根據您的設置將刪除TFS Build。

可能的解決方案:

我相信我需要的解決方案是使用REST API來創建一個草案版本,然後在路徑傳遞到上放置位置的神器。在我的情況下,我只是簡單地提供一個版本號並在版本中構建路徑。

問題:

此時REST API未記錄。

我很欣賞你對我思想的想法。可能是因爲我以錯誤的方式思考問題。

此外,如果有人知道如何使用REST API創建一個版本,這可能會讓我到我需要的地方。

我看到REST API將被記錄在以下位置,但還沒有。我真的想走,我有超過100個應用程序要部署。

https://msdn.microsoft.com/en-us/library/vs/alm/release/managing-releases/create-release#CreateareleasebyusingtheRESTAPI

回答

0

您可以無限期地保留構建所以它永遠是可用的,當你需要它。 enter image description here

+0

感謝您的回覆。這不完全是我想要的方法。這需要手動過程將其標記爲無限期保留。 您知道如何通過REST啓動發佈嗎? 謝謝, – Thomas

-1

ReleaseManagement REST API在

https://www.visualstudio.com/integrate/api/rm/releases#Createarelease得到了公開。請看一看。在創建發佈時,在工件中傳遞了三件事: - 別名,instanceReference(名稱和Id)。

+0

雖然此鏈接可能回答問題, 最好在這裏包含答案的基本部分 並提供供參考的鏈接。 如果鏈接頁面發生更改,則僅鏈接答案可能會失效 – AADProgramming

1

VSTS的Release Management API文檔是實時的here。大部分API也應該適用於TFS 2015.2。

要創建新版本,請參閱我的earlier answer

2

我們還使用TFS 2015 update 2 on-prem並使用PowerShell與TFS REST API進行接口。

由於在此線程在註釋中規定的REST API文檔是活的,並創建一個版本請參考以下鏈接:https://www.visualstudio.com/en-us/docs/integrate/api/rm/releases#create-a-release

要回答你的問題: - 使用PowerShell腳本嘗試以下方法來創建一個發佈:

$filePath = "C:\PATH_TO_JSON" 
$username = 'DOMAIN\USRNAME' 
$password = 'PASSWORD' 
$body = Get-Content $filePath 
$resource = "http://TFS_URL/_apis/release/releases`?api-version=2.2-preview.1" 
$cred = New-Object System.Management.Automation.PSCredential($username, (ConvertTo-SecureString -String $password -AsPlainText -Force)) 

Invoke-RestMethod -Method Post -Uri "$resource" -Credential $cred -ContentType "application/json" -Body $body 

$文件路徑變量應指向包含以下JSON標記的文件。一定要改變的例子JSON中的變量,以滿足您的預置型版本定義:

{ 
    "definitionId": 12, 
    "description": "M 98 release", 
    "artifacts": [ 
    { 
     "alias": "Fabrikam.CI", 
     "instanceReference": { 
     "id": "90" 
     } 
    } 
    ] 
} 

你也可以使用JavaScript和TFS REST API接口。請參閱@Elmar的帖子:TFS 2015 REST API Authentication