J'aimerais faire un lien permanent vers la dernière version instantanée d'un artefact dans Artifactory. Si nous sommes sur 1.0-SNAPSHOT, je voudrais une URL qui télécharge la dernière version 1.0-SNAPSHOT. Je peux trouver le dernier artefact en localisant l'artefact sur notre serveur à l'adresse http://hostname/artifactory/libs-snapshot/groupId/artifactId/1.0-SNAPSHOT/
. Outre la vérification des horodatages, je peux savoir lequel est le dernier en ouvrant maven-metadata.xml et en comparant les horodatages métadonnées/versioning/snapshot et buildNumber avec un fichier JAR dans le même répertoire. Cela pourrait être scripté, mais idéalement Artifactory a déjà un moyen de construire un lien permanent de cette manière. Artifactory fournit-il une telle URL?
Faire la requête normale pour l'entrée avec artifactId-1.0-SNAPSHOT.jar dans le nom de l'URL devrait renvoyer automatiquement le dernier instantané. Voir la doc ici
Une chose: il s’agit de la date de création la plus récente en l’absence de pom ou de la dernière création du pom s’il en existe. Mélanger le déploiement de pom et non pom peut entraîner des résultats étranges!
J'ai essayé d'utiliser le script Shell et cela a fonctionné pour moi.
Step1 : Obtenez un mot de passe crypté pour votre compte d'utilisateur en cliquant sur le nom d'utilisateur ou créez un utilisateur commun. Accédez à la section relative à votre mot de passe sécurisé dans le lien suivant http://www.jfrog.com/confluence/display/RTF/Centrally+Secure+Passwords
Étape 2 : Dans votre ordinateur local, créez un dossier temporaire et tapez cette commande curl (peut être wget pour windows):
curl -o tmp/foo.jar --user <username>:<encrypted_password> <artifactory_url>/list/libs-snapshot-local/com/search/foo/1.0/foo-1.0-SNAPSHOT.JAR
Votre foo.jar dans le dossier tmp est la dernière version. Si nous ne donnons pas l'horodatage comme ci-dessus, il téléchargera le dernier artefact de cette version. J'espère que cela t'aides!
Cela pourrait être utile:
Comment télécharger le dernier artefact du référentiel Artifactory?
Bien qu’il n’y ait pas de capacité de lien permanent dans la version gratuite d’Artifactory, elle peut être scriptée facilement comme vous le suggérez. J'ai fourni un script rapide pour le faire dans la question référencée.
J'espère que ça aide.