2017-02-13 44 views
1

我有一個竹服務器,建立碼頭圖像,並通過反向代理推送到artifactory。由於反向代理(NGINX)的推送不提供構建信息,因此我需要爲進一步的需求創建它。Artifactory REST API:如何將Docker圖像工件添加/附加到Build Info?

我碰到這個REST API https://www.jfrog.com/knowledge-base/how-to-create-and-deploy-a-build-info-json-file-via-the-rest-api/

那得非常不錯,但問題是,當我去到Web UI,並檢查構建,每一個神器它只出現的名字,甚至類型,但「回購路徑」列顯示「未找到路徑(外部解析或刪除/覆蓋)」。

通過附加僞影到現有的模塊(/ API /建造/附加),或(在鏈接等上文)創建一個新的構建,我的模塊部看起來像:

[{ 
    "id":"my-module", 
    "artifacts":[ 
    { 
     "type": "txt", 
     "sha1": "73f4617b4a64dc95c63581609ea0734aab987d98", 
     "md5": "00ebbb0b0444645b9489825d7a11c4bf", 
     "name": "MyArtifact.txt" 
    } 
    ] 
}] 

僞影JSON是創建查看逆向代理推送的工件的屬性。

總之,我想創建鏈接到已經上傳到artifactory中的工件的構建信息。

  1. 任何想法爲什麼這是不正確地鏈接工件到 編譯信息?
  2. 我是否需要額外的屬性?
  3. 真的有可能做我想找的東西嗎?

我沒有使用JFrog的artifactory客戶端來執行我的任務。我只是使用高級休息客戶端來測試命令,並從我的Java類使用澤西客戶端。

回答

1

我遇到了同樣的問題,終於找到了一些他們的源代碼。看起來,工件是通過屬性鏈接的。

所以,如果您的構建信息名稱是Test,並且構建信息數爲1

您需要添加以下屬性MyArtifact.txt

build.name =測試 build.number = 1

我也相信,您需要發佈您的構建信息後,這些屬性已被添加到神器

+0

謝謝你的人,你救了我的命! artifactory文檔在註釋中提到了這一點:「注意:所有構建模塊必須具有build.name和build.number屬性集以及正確的SHA1和MD5才能在構建信息中正確鏈接。」但它並沒有在我的腦海中轉化,我需要用屬性來更新每一件神器。這應該被標記爲正確的答案。 – peepa