0

Ich versuche, Dateitypen aus einem bestimmten Zeitraum aufzulisten, so dass diese großen Dateien aus Artefakt Speicher gelöscht werden können, wie dies für mich verwirrend ist, dachte ich Ich benutze den Frosch cli Weg mit --spec Schalter, ich habe einen Ausdruck, aber es funktioniert nicht genau und ich muss das gleiche für die Löschung auch verwenden, jede Hilfe wäre sehr bemerkenswert.Artefakt Abfrage Sprache für die Auflistung von Dateitypen im Datumsbereich

curl -u admin: xxxxxxxxxx -i -X POST https://something.artifactory.com/artifactory/api/search/aql -d 'items.find({"type":"file","repo":"dev","created”:{“$before":“3w”},”$or":[{"name":{"$match":"*tar.gz"}, "name":{"$match":"*bz2"}, "name":{"$match":"*zip"}}]})' 

Antwort

0

Also habe ich versucht, das gleiche wie Sie und es scheint zu funktionieren. Einige Dinge, auf die Sie besonders achten müssen, sind die Formatierung. Wenn Sie beispielsweise Ihr Beispiel kopieren, gibt es Anführungszeichen, die nicht identisch sind. Zweitens verwenden Sie ein JSON-Viewer-Tool, mit dem Sie Formatierungsprobleme finden können. So ist es das, was ich tat, und es funktionierte:

curl -u Admin: Passwort -i -X ​​POST "http://localhost:8081/artifactory/api/search/aql" -T aql1.json

Wo die aql1.json Datei so aussieht:

items.find({ 
 
    "type": "file", 
 
    "repo": "libs-release-local", 
 
    "created":{"$before": "1w" 
 
}, 
 
"$or": [ 
 
    { 
 
    "name": { 
 
     "$match": "*.war" 
 
    }, 
 
    "name": { 
 
     "$match": "*.jar" 
 
    } 
 
    } 
 
] 
 
})

wie Sie sehen oben ich die aql Abschnitt in eine JSON-Datei hinzugefügt haben, ist dies kein muss, aber das Leben leichter macht, wie ich sehe, wenn ich irgendwelche Probleme haben, und entfernt auch th Die Möglichkeit, dass mein Befehl aufgrund eines fehlenden '\' (Escape) vor Sonderzeichen abbricht.

Hoffe, das hilft.

+0

Konnte nicht Ihre aql Abschnitt im Rezept obwohl, würde es Ihnen etwas ausmachen, das Skript erneut zu bearbeiten, oder möglicherweise bin ich lahm, es hier zu finden, versuchte ich es zu erweitern, aber konnte es nicht sehen .. – user2742389

+0

dort gehen Sie: items.find ({ "type": "Datei", "Repo": "libs-release-local", "erstellt": { "$ vor": "1W"} , "$ oder": [ { "name": { "$ match": "* .war" }, "name": { "$ match": "* .jar" } } ] }) – Ariel

Verwandte Themen