wake-up-neo.net

So laden Sie Artefakte mit wget von Sonatype Nexus herunter

Ich habe eine Sonatype Nexus-Instanz installiert und muss ein Skript schreiben, um ein bestimmtes Artefakt manuell herunterzuladen.

Ich habe versucht, die REST API und wget zu verwenden:

wget --user=username --password=password http://<ip>:<port>/nexus/service/local/artifact/maven/content?g=<group>&a=<artifact>&v=<version>&r=snapshots

Resolving <ip stuff>
Connecting to <ipv6 stuff>... failed: Connection refused.
Connecting to <ipv4 stuff>... connected.
HTTP request sent, awaiting response... 401 Unauthorized
Reusing existing connection to <ip>:<port>.
HTTP request sent, awaiting response... 400 Bad Request
2014-05-11 20:17:01 ERROR 400: Bad Request.

Weiß jemand, wie man das zum Laufen bringt?

Bearbeiten: Ich kann das Artefakt über meinen Browser herunterladen (und bin am Webinterface angemeldet).

13
dr0n3

Die URL sieht korrekt aus, aber Sie müssen sie angeben, da sie Sonderzeichen enthält.

wget --user=username --password=password "http://<ip>:<port>/nexus/service/local/artifact/maven/content?g=<group>&a=<artifact>&v=<version>&r=snapshots"

Möglicherweise möchten Sie auch --content-disposition hinzufügen, damit der Name der heruntergeladenen Datei korrekt ist. Weitere Informationen finden Sie hier:

https://support.sonatype.com/entries/23674267

22
rseddon

für nexus 3 

wget --user=userid --password=password 'https://nexusurl:8081/nexus/repository/<repository id>/<replace the grouf is . with />/<artifact id>/<version>/<file name>' -O ${WORKSPACE}/<new file name>

beispiel

gruppennummer = com.sap.cloudfoundry.mta_plugin_linux 

artifact id = com.sap.cloudfoundry.mta_plugin_linux.api

nexus url = alm.xxxxxx.com

$ WORKSPACE = aktueller Arbeitsbereich von Jenkins

neuer Dateiname = cf-cli-mta-plugin-2.0.3-linux-x86_64.bin

repository-ID = Sample_Replatform_Stage_2_Release (dies wird als Name des Repos angezeigt)

Der Befehl wird sein 

 wget --user=USERID --password=PASSWORD 'https://alm.xxxxxxx.com/nexus/repository/sample_Replatform_Stage_2_Release/com/sap/cloudfoundry/mta_plugin_linux/com.sap.cloudfoundry.mta_plugin_linux.api/2.0.3/com.sap.cloudfoundry.mta_plugin_linux.api-2.0.3.bin' -O ${WORKSPACE}/cf-cli-mta-plugin-2.0.3-linux-x86_64.bin

am wichtigsten für nexus rest api sollte die artifactID-version immer mit dem Dateinamen übereinstimmen, andernfalls erhalten Sie den Repository-Formatfehler des maven2

weitere Argumente und Formate finden Sie unter https://support.sonatype.com/hc/de-de/articles/213465488-wie-can-I-retrieve-a-snapshot-if-I-don-t -know-the-exact-filename-

0
Subrata Fouzdar