..
快速删除 artifactory 删的过期文件
首先我们需要安装安装 artifactory 的命令行工具, jfrog cli , 网址是 https://github.com/jfrog/jfrog-cli 。
我们需要写一个 artifactory 的查询脚本, 查询出所有的过期文件, 下面这个脚本是查询出 2016-10-18T21:26:52.000Z 之前的文件。
{
"files": [
{
"aql": {
"items.find": {
"repo": "foobar",
"$or": [
{
"$and": [
{
"modified": { "$lt": "2016-10-18T21:26:52.000Z"}
}
]
}
]
}
}
}
]
}
我们也可以使用相对日期
"modified": { "$before":"6mo" }
然后我们使用 jfrog cli 命令行工具, 执行删除命令
jf rt del --spec /tmp/foo.spec --dry-run
加上 –dry-run 参数, 执行删除命令的时候,不会真的删除文件。
jf rt del --spec /tmp/foo.spec
还可以设置一下并发的线程数量,这样删除会快一点
jf rt del --spec /tmp/foo.spec --threads=10
这样的删除会需要用户交互,我们可以加一个 –quiet 参数, 直接删除, 不会提示用户交互, 在 CI 或者自动化脚本的地方比较实用
jf rt del --spec /tmp/foo.spec --threads=10 --quiet
原文地址: https://stackoverflow.com/questions/40118550/artifactory-delete-all-artifacts-older-than-6-months