簡體   English   中英

Salt堆棧中是否有文件上傳功能,可以將罐子上傳到JFrog Artifactory?

[英]Is there a file upload function in salt stack to upload a jar to JFrog Artifactory?

我正在使用saltstack狀態腳本從BitBucket創建一個jar,並將其上傳到Artifactory。 上傳到Artifactory時,我看到授權錯誤。 我不確定這是否是實現上傳到Artifactory的正確方法。

我嘗試使用CURL實現上傳。 我需要在CURL命令中提供-u myUser:myPassword才能使其正常工作。 我無法在鹽狀態腳本中提供憑據。 我正在尋找一個更好的選項來實現不使用登錄憑據的上傳。 如何使用Saltstack將工件上傳到工件?

curl -X PUT -T /tmp/Batch.jar http://artifactory/artifactory/Batch.jar

錯誤:stdout:

              {
                \"errors\" : [ {
                  \"status\" : 401,
                  \"message\" : \"Unauthorized\"
                } ]
              }

根據Artifactory文檔 ,REST API支持以下身份驗證形式:

  • 使用您的用戶名和密碼進行基本身份驗證
  • [最簡單]使用您的用戶名和API密鑰進行基本身份驗證。
  • 通過API密鑰使用專用標頭( X-JFrog-Art-Api )。
  • 使用訪問令牌代替密碼進行基本身份驗證。
  • [推薦]在授權標頭中使用訪問令牌作為承載令牌
    Authorization: Bearer )以及您的訪問令牌。

您將不得不選擇以上之一。

我已經遇到過幾次這樣的事情。 最簡單的解決方案是編寫一個小的Salt執行模塊來完成這項工作。 這樣,您可以將人工憑證存儲為支​​柱數據,並使用常規的python請求或salt http幫助程序進行Web請求。

看起來鹽堆為已有的人工制品提供了一個模塊: https ://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.artifactory.html

它可能無法完全滿足您的要求,但是您可以擴展它: https : //github.com/saltstack/salt/blob/develop/salt/modules/artifactory.py

用於編寫執行模塊的saltstack文檔可以在這里: https ://docs.saltstack.com/en/latest/ref/modules/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM