サーチ…


前書き

シェルスクリプトを使用してArtifactoryリポジトリから最新のArtifactをダウンロードしてください。

最新のものをダウンロードするための手順

1.最後に変更された(最新)アーティファクトのJSONレスポンスを取得する

latestArtifactUriResponse=curl -u username:password --silent https://hostname.com/artifactory/api/storage/<repo_name>/<folder_name>/?lastModified | grep uri | awk '{ print $3 }' | sed s/\"//g | sed s/,//g

次の形式の応答が返されます。

{
  "uri" : "https://hostname.com/artifactory/api/storage/<repo_name>/<folder_name>/latest_artifact.tar.gz",
  "lastModified" : "2016-12-22T04:26:25.534-0500"
}

2. "latestArtifactUriResponse"タグから最新のアーティファクトへの直接URLを取得する。

latestArtifactUriReponseは、次の形式で応答を返します。

{
  "repo" : "repo_name",
  "path" : "/folder_name/latest_artifact.tar.gz",
  "created" : "2016-12-22T04:26:29.482-05:00",
  "createdBy" : "username",
  "lastModified" : "2016-12-22T04:26:25.534-05:00",
  "modifiedBy" : "username",
  "lastUpdated" : "2016-12-22T04:26:25.534-05:00",
  "downloadUri" : "https://hostname.com/artifactory/repo_name/folder_name/latest_artifact.tar.gz",
  "mimeType" : "application/octet-stream",
  "size" : "94310686",
  "checksums" : {
    "sha1" : "ocb778e566890b0f3d115b828ce8dd4e840",
    "md5" : "d050fb8108745973cf0d64e15667b340"
  },
  "originalChecksums" : {
  },
  "uri" : "https://hostanme.com/artifactory/api/storage/repo_name/folder_name/latest_artifact.tar.gz"
}    

ここでは、最新のartifcatへの直接URLであるdownloadUriの値を取得し、 downloadUrl変数に格納する必要があります。

downloadUrl=`curl -u username:password --silent $latestArtifactUrl | grep downloadUri | awk '{ print $3 }' | sed s/\"//g | sed s/,//g`    

3.最新のアーティファクトをダウンロードする

curl -u username:password -O $downloadUrl

そして、あなたは完了です。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow