如何使用 Artifactory AQL 删除空文件夹(没有任何内容的文件夹)?
我有当前的 AQL 查询来查找早于 12w 且从未下载的文件,我将通过脚本删除这些文件。
items.find(
{
"repo":{"$eq":"libs-release-local"},
"stat.downloads":{"$eq":null},
"created":{"$before" : "12w"},
}
)
Run Code Online (Sandbox Code Playgroud)
这给我留下了空文件夹,如何指定查找所有空文件夹的 AQL 查询?
我想获得一个项目的依赖项,而不会省略以前在依赖关系树中列出的依赖项.
这是省略依赖项的示例:
org.springframework:spring-beans:3.1.1.RELEASE (*)
(*) - dependencies omitted (listed previously)
Run Code Online (Sandbox Code Playgroud)
我查看了DependencyReportTask而没有找到任何信息.
我暂时通过以下方式解决了这个问题:
https://github.com/ki82/gradle/commit/d0ac3f6a523759a037a7848c8b8695c3ad15a7d6
虽然我仍然希望能够通过配置来改变它.
我不能在已经存在的节点(不是主节点)上编写脚本和更改执行程序的数量。最好使用 groovy,但如果有一个插件或 CLI 命令可以完成同样有趣的技巧。
我正在尝试做的事情的片段:
jenkins.model.Jenkins.instance.nodes.each { node ->
println node.getNumExecutors()
//How do I set the number of executors for a node?
}
Run Code Online (Sandbox Code Playgroud) 我想用项目 a 中的配置来扩展项目 b 中的配置。
如果两种配置都在同一个项目中,则可以执行以下操作:
configurations.conf1.extendsFrom configurations.conf2
Run Code Online (Sandbox Code Playgroud)
如何在不同项目中实现相同的配置?
下面是一个最小的示例,由于依赖项不是继承的,所以当前不起作用。
示例文件夹设置:
a/build.gradle
b/build.gradle
settings.gradle
a/build.gradle:
repositories {
mavenCentral()
}
configurations {
aconf
}
dependencies {
aconf 'abbot:abbot:1.4.0'
}
Run Code Online (Sandbox Code Playgroud)
b/build.gradle
configurations {
bconf
}
configurations.bconf.extendsFrom project(':a').configurations.aconf
Run Code Online (Sandbox Code Playgroud)
设置.gradle
include ':a'
include ':b'
Run Code Online (Sandbox Code Playgroud)
执行 ./gradlew :a:dep :b:dep -i 可以看到 bconf 没有继承 aconf 的依赖。
Included projects: [root project 'projectDeps', project ':a', project ':b']
> Configure project :
Evaluating root project 'projectDeps' using build file '/projectDeps/build.gradle'.
> Configure project :a
Evaluating project ':a' using build …Run Code Online (Sandbox Code Playgroud) 有没有办法访问gradle用户主目录,可以通过GRADLE_USER_HOME或-g somedir设置或者我的build.gradle文件中的默认值?
如果我使用--debug运行gradle构建它会打印出用户主页,但我找不到通过任何变量访问它的方法.
示例打印输出:
[DEBUG] [org.gradle.BuildLogger] Gradle用户主页:/ some/dir