看起来 Ansible 无法从 group_vars 合并嵌套变量。我的结构是这样的
hosts.ini::
[common:children]
frontend
backend
[frontend]
server1
[backend]
server2
Run Code Online (Sandbox Code Playgroud)
在groups-vars目录中我有:
common.yaml:
start_of_nested variables:
var1: value1
var2: value2
Run Code Online (Sandbox Code Playgroud)
frontend.yaml:
start_of_nested variables:
var3: value3
var4: value4
Run Code Online (Sandbox Code Playgroud)
backend.yaml:
start_of_nested variables:
var5: value5
var6: value6
Run Code Online (Sandbox Code Playgroud)
当我检查server1变量时:
ansible server1 -m debug -a "var=hostvars[inventory_hostname]"
Run Code Online (Sandbox Code Playgroud)
我仅从以下位置获取变量frontend.yaml:
"start_of_nested": {
"var3": "value3",
"var4": "value4"
}
Run Code Online (Sandbox Code Playgroud)
但我期待它们会与common.yaml变量合并,我会得到类似的东西
"start_of_nested": {
"var1": "value1",
"var2": "value2",
"var3": "value3",
"var4": "value4"
}
Run Code Online (Sandbox Code Playgroud)
Ansible 有没有办法合并group_vars它所属主机的嵌套变量?
我正在尝试从使用的命令行配置JaCoCo maven插件pom.xml。prepare-agent到目前为止,我已经可以执行以下命令了:
mvn -X -Djacoco.destFile=./coverage/jacoco.exec clean org.jacoco:jacoco-maven-plugin:prepare-agent install
Run Code Online (Sandbox Code Playgroud)
输出:
[DEBUG] Configuring mojo org.jacoco:jacoco-maven-plugin:0.7.6.201602180812:prepare-agent from plugin realm ClassRealm[plugin>org.jacoco:jacoco-maven-plugin:0.7.6.201602180812, parent: sun.misc.Launcher$AppClassLoader@70dea4e]
[DEBUG] Configuring mojo 'org.jacoco:jacoco-maven-plugin:0.7.6.201602180812:prepare-agent' with basic configurator -->
[DEBUG] (f) destFile = /src/coverage/jacoco.exec
...
Run Code Online (Sandbox Code Playgroud)
它会创建./coverage/jacoco.exec文件,现在我正在尝试运行report阶段,但无法在此阶段设置属性。我正在运行命令:
mvn -X -Djacoco.dataFile=./coverage/jacoco.exec -Djacoco.outputDirectory=./jacoco_ut org.jacoco:jacoco-maven-plugin:report
Run Code Online (Sandbox Code Playgroud)
要么
mvn -X -DdataFile=./coverage/jacoco.exec -DoutputDirectory=./jacoco_ut org.jacoco:jacoco-maven-plugin:report
Run Code Online (Sandbox Code Playgroud)
在jacoco:报告没有user property为jacoco:准备代理。
我有这样的输出:
[DEBUG] Configuring mojo 'org.jacoco:jacoco-maven-plugin:0.7.6.201602180812:report' with basic configurator -->
[DEBUG] (f) dataFile = /src/target/jacoco.exec
[DEBUG] (f) outputDirectory = /src/target/site/jacoco …Run Code Online (Sandbox Code Playgroud) 我还没有使用过 PyGithub,但我很好奇是否有可能从存储库(例如https://github.com/{username}/{repo-name}/releases)获取发布列表。我在此处的文档中看不到任何相关信息。
我想以某种方式获取数据version,packageName in Docker例如。我需要CI标记docker映像以供将来使用。所以有可能获得像maven这样的值mvn --batch-mode -f pom.xml help:evaluate -Dexpression=project.version。预先感谢您的帮助。
所以我build.sbt包含几个项目,现在我试图使用sbt projects,sbt inspect从SBT检查建造,但至今没有运气。
我设法从项目中获取关键值,但是现在我遇到了问题packageName in Docker。我做到了:sbt [project_name]/[key]但是因为packageName in Docker我得到了:
sbt projectName/packageName in Docker
[error] Not a valid command: in
[error] Expected 'info'
[error] Not a valid project ID: in
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: in
[error] in
[error] ^
Run Code Online (Sandbox Code Playgroud)
这是build.sbt的一部分:
lazy val `name` = project
.in(file("name"))
.dependsOn(`name-dep`) …Run Code Online (Sandbox Code Playgroud)