Buscar..


Introducción

Descargue el último artefacto del repositorio de artefactos usando un script de shell.

PASOS PARA DESCARGAR EL ÚLTIMO ARTEFACTO

1. Obteniendo la respuesta JSON para el último artefacto modificado (el último)

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

Se devolverá una respuesta en el siguiente formato:

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

2. Recuperando la URL directa al último artefacto desde "latestArtifactUriResponse"

El latestArtifactUriReponse devolverá la respuesta en el siguiente formato:

{
  "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"
}    

Aquí tenemos que obtener el valor de downloadUri que es la URL directa del último artifcat y almacenarlo en la variable downloadUrl :

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

3. Descargando el último artefacto

curl -u username:password -O $downloadUrl

Y ya está hecho.



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow